Zugriff für Benutzer „root'@„localhost' verweigert – Unzureichende Berechtigungen?
P粉826283529
2023-08-07 14:35:51
<p>Ich bekomme immer wieder diesen Fehler. <br /><br />Ich verwende MySQL Workbench und soweit ich herausgefunden habe, scheinen die Berechtigungen des Root-Benutzers leer zu sein. Überhaupt keine Berechtigungen. <br /><br />Ich habe Probleme mit Root auf mehreren Plattformen und das schon seit langer Zeit. <br /><br />root@127.0.0.1 scheint viele Berechtigungen zu haben, aber wenn ich mich als Root anmelde, werden die Berechtigungen nur dem lokalen Computer zugewiesen – der lokale Computer hat keine Berechtigungen. <br /><br />Ich habe FLUSH HOSTS, FLUSH PRIVILEGES und andere Methoden ausprobiert, aber keine davon war erfolgreich. <br /><br />Ich benötige Root-Zugriff. Ich bin so frustriert, denn wenn ich in der Nähe von Leuten bin, die scheinbar von mir Zugriff erwarten, habe ich in Wirklichkeit keinen Zugriff, kann also nicht in die Befehlszeile gehen oder irgendetwas tun und mir keine Berechtigungen erteilen . <br /><br />Wenn ich SHOW GRANTS FOR root ausführe, erhalte ich die folgende Rückgabe: </p><p><code></code></p>
<blockquote>
<p>Fehlercode: 1141. Für den Benutzer „root“ ist keine solche Berechtigung definiert
Host '%'</p>
</blockquote><p><br /></p>
如果在 MySQL 5.7.+ 中有这个问题:
因为 MySQL 5.7 默认允许通过 socket 连接,这意味着您只需使用管理员权限连接到 MySQL。
t然后就看到
允许使用管理员权限连接并输入密码,然后通过命令更新表中的值:
然后再次运行select命令,你就会看到它已经更改了:
然后这就是它。在完成sudo mysql_secure_installation命令之后,您可以运行以下过程。
对于mariadb,使用:
然后就是设置密码。更多可以看https://mariadb.com/kb/en/set-password/。
使用 resetting 密码的说明 - 但不是重置密码,而是将一个记录强制插入到 mysql.user 表中