1227: Access denied; you need (at least one of) the PRIVILEGE (Zugriff verweigert; Berechtigung erforderlich)
MySQLWas bedeutet das?
Dem Benutzer fehlt die für die versuchte Operation erforderliche Berechtigung. Die Operation erfordert ein Recht, das über die dem Konto gewährten Berechtigungen hinausgeht.
Ursache
Eine fehlende administrative Berechtigung wie SUPER, PROCESS, RELOAD oder CREATE USER; die zum Lesen einer globalen View/Tabelle nötige Berechtigung wurde nicht vergeben; eine bestimmte Operation (SET GLOBAL, Binlog-Zugriff) erfordert erhöhte Berechtigungen.
Lösung
Aktuelle Berechtigungen anzeigen: SHOW GRANTS FOR CURRENT_USER(); Vergib die nötige Berechtigung mit einem privilegierten Konto: GRANT PROCESS ON *.* TO 'app_user'@'host'; (GRANT wirkt sofort; FLUSH PRIVILEGES ist nicht nötig). Verwende, wo möglich, dynamische Berechtigungen (z. B. SYSTEM_VARIABLES_ADMIN) statt SUPER. Folge dem Least-Privilege-Prinzip.
Weitere Einträge zu dieser Datenbank
- 1091Can't DROP 'x'; check that column/key exists (DROP nicht möglich; Spalte/Schlüssel existiert nicht)
- 1093You can't specify target table 'x' for update in FROM clause (Zieltabelle des Updates nicht in FROM-Klausel erlaubt)
- 1305PROCEDURE does not exist (Prozedur existiert nicht)
- 3730Cannot drop table referenced by a foreign key constraint (von Foreign Key referenzierte Tabelle kann nicht gelöscht werden)
- 2013Lost connection to MySQL server during query (Verbindung zum MySQL-Server während der Abfrage verloren)
- 1153Got a packet bigger than 'max_allowed_packet' bytes (Paket größer als max_allowed_packet)
- 1969MariaDB: Query execution was interrupted (max_statement_time exceeded) (Abfrageausführung unterbrochen)