1. Benutzer anlegen und autorisieren Das Erstellen von Benutzern und die Autorisierung in MySQL 8.0 unterscheiden sich von früher. Streng genommen kann man nicht sagen, dass es anders ist, sondern nur, dass es strenger ist. MySQL 8.0 erfordert das Erstellen von Benutzern und das Festlegen von Kennwörtern vor der Autorisierung. #Erstellen Sie einen Benutzer. Erstellen Sie zuerst den Benutzer „hong“@„%“, identifiziert durch „123123“. #Autorisieren Sie die Gewährung aller Berechtigungen für *.* an „hong“@„%“ mit der Gewährungsoption; Wenn Sie immer noch die ursprüngliche 5.7-Methode verwenden, wird ein Fehler gemeldet:
2. Remote-Verbindung von MySQL 8.0 Nach der Installation von MySQL 8.0 ist keine Remoteverbindung mehr möglich. Dies liegt daran, dass MySQL 8.0 nur den Zugriff auf den lokalen Host unterstützt. Wir müssen es einrichten, bevor wir remote darauf zugreifen können. Die spezifischen Einstellungsschritte sind wie folgt: ① Melden Sie sich bei MySQL an Der Ausführungsbefehl lautet: mysql -u root -p Geben Sie das Passwort ein, nachdem Sie die Eingabetaste gedrückt haben ② MySQL-Datenbank auswählen Der Ausführungsbefehl lautet: use mysql; Zeigen Sie die Benutzertabelle an, in der Benutzerinformationen in der MySQL-Datenbank gespeichert sind. ③ Zeigen Sie die relevanten Informationen des aktuellen Root-Benutzers in der Benutzertabelle der MySQL-Datenbank an Der Ausführungsbefehl lautet: select host,user,authentication_string,plugin from user; Nachdem der Befehl ausgeführt wurde, wird eine Tabelle angezeigt. Der Host des Root-Benutzers ist standardmäßig localhost, was bedeutet, dass nur lokaler Zugriff unterstützt wird und Remotezugriff nicht zulässig ist. ④ Ändern Sie die Standardkonfiguration des Hosts Der Ausführungsbefehl lautet: update user set host='%' where user='root'; ⑤ Aktualisieren Der Ausführungsbefehl lautet: „Flush Privileges“; Ich dachte, das wäre alles, aber als ich Navicat zur Remote-Verbindung mit MySQL verwendete, erschien ein Popup-Fenster mit einem Fehler: Der Grund dafür ist, dass die Verschlüsselungsregel in Versionen vor mysql8 mysql_native_password lautet und nach mysql8 die Verschlüsselungsregel caching_sha2_password. Es gibt zwei Möglichkeiten, das Problem zu lösen. Eine besteht darin, den Navicat-Treiber zu aktualisieren, und die andere darin, die Verschlüsselungsregel des MySQL-Benutzeranmeldekennworts auf mysql_native_password zurückzusetzen. Ich verwende die zweite Methode: ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #Verschlüsselungsregeln ändern ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; #Passwort des Benutzers aktualisieren FLUSH PRIVILEGES; #Berechtigungen aktualisieren Das Problem ist gelöst. Hinweise zum Festlegen des mysql8.0-Benutzerkennworts In MySQL 8.0.11 ist caching_sha2_password anstelle von mysql_native_password das Standardauthentifizierungs-Plugin. Informationen zu den Auswirkungen dieser Änderung auf den Serverbetrieb und die Serverkompatibilität mit Clients und Konnektoren finden Sie unter caching_sha2_password als bevorzugtes Authentifizierungs-Plugin. (Übersetzt von https://dev.mysql.com/doc/refman/8.0/en/caching-sha2-pluggable-authentication.html) Heute habe ich beim Konfigurieren und Installieren von mysql8.0.11 auf einem neuen Dienst das MySQL-Passwort wie gewohnt festgelegt. Nachdem die Einstellung erfolgreich war, gebe ich in der Shell mysql -u root -p ein und gebe dann das Passwort ein, um normal einzutreten. In phpmyadmin oder direkt über die Verbindung unter http://php.net/manual/zh/mysqli.real-connect.php wird jedoch angezeigt, dass die Verbindung nicht hergestellt werden kann. Die spezifische Fehlermeldung lautet
Nachdem ich herumgesucht und die offizielle Dokumentation gefunden hatte, stellte ich fest, dass ab Version 8.0.11 die Standardüberprüfungsmethode zum Festlegen von Benutzerkennwörtern nicht mehr caching_sha2_password ist, wie in MySQL 5.7 und früheren Versionen. Wenn Sie feststellen, dass das ursprüngliche Programm nach dem Upgrade auf MySQL 8.0.11 keine Verbindung zu MySQL herstellen kann, können Sie den folgenden Befehl im MySQL-Befehlszeilenclient verwenden, um es schnell auf die Kennwortüberprüfungsmethode von MySQL 5.7 und früheren Versionen einzustellen. Gleichzeitig unterscheidet sich die Methode zum Ändern von Kennwörtern unter MySQL 8.0.11 geringfügig von der ursprünglichen Methode, und einige der ursprünglichen Befehle zum Ändern von Kennwörtern können unter MySQL 8.0.11 nicht verwendet werden. > MySQL verwenden > ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Ihr Passwort'; > FLUSH-PRIVILEGIEN; Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung der dynamischen Angular-Komponenten
>>: Detaillierte Erläuterung der Nginx-Strombegrenzungskonfiguration
1. Datendeduplizierung Bei der täglichen Arbeit k...
Wir alle wissen, dass Daten unbezahlbar sind. Wen...
1. Grundlinien 2. Spezialeffekte (die Effekte sin...
1. Effektanzeige Ein in JavaScript geschriebenes ...
Tatsächlich ist es sehr einfach, Axios in Vue zu ...
Docker-Machine ist ein offiziell von Docker berei...
Der img-Tag führt das Bild ein Da React die Seite...
1 Umsetzungsprinzip Dies geschieht mithilfe der E...
Inhaltsverzeichnis Frontend Entwerfen und schreib...
Das mit vue-cli erstellte Projektgerüst hat den A...
In diesem Artikel wird der spezifische Code des j...
1. Beim Öffnen der Webseite wird die Meldung „503...
Inhaltsverzeichnis 1. Einführung in Binlog 2. Bin...
Inhaltsverzeichnis Einführung Einführung Aggregat...
(I) Methode 1: Vorab direkt im Skript-Tag definie...