1227: Access denied; you need (at least one of) the PRIVILEGE
MySQLO que significa?
O usuário não tem o privilégio necessário para a operação tentada. A operação exige um direito além das permissões concedidas à conta.
Por que acontece?
Um privilégio administrativo ausente, como SUPER, PROCESS, RELOAD ou CREATE USER; a permissão necessária para ler uma view/tabela global não concedida; uma operação específica (SET GLOBAL, acesso ao binlog) que exige privilégios elevados.
Como resolver
Veja os privilégios atuais: SHOW GRANTS FOR CURRENT_USER(); Conceda a permissão necessária com uma conta privilegiada: GRANT PROCESS ON *.* TO 'app_user'@'host'; (GRANT tem efeito imediato; FLUSH PRIVILEGES não é necessário). Sempre que possível, use dynamic privileges (por exemplo, SYSTEM_VARIABLES_ADMIN) em vez de SUPER. Siga o princípio do menor privilégio.
Mais entradas deste banco
- 1091Can't DROP 'x'; check that column/key exists
- 1093You can't specify target table 'x' for update in FROM clause
- 1305PROCEDURE does not exist
- 3730Cannot drop table referenced by a foreign key constraint
- 2013Lost connection to MySQL server during query
- 1153Got a packet bigger than 'max_allowed_packet' bytes
- 1969MariaDB: Query execution was interrupted (max_statement_time exceeded)