So rufen Sie das Kennwort für MySQL 8.0.22 auf dem Mac ab

So rufen Sie das Kennwort für MySQL 8.0.22 auf dem Mac ab

Neueste Version von MySQL 8.0.22 zur Kennwortwiederherstellung für Mac

Problembeschreibung:

Gestern wollte ich plötzlich den Passwortänderungsprozess der neuesten Version von MySQL auf dem Mac ausprobieren. Ich habe das Plugin geändert, indem ich caching_sha2_password durch mysql_native_password ersetzt habe, und dann mit UPDATE SET authentication_string geändert habe. Ich habe vergessen, die Funktion password('neues Passwort') hinzuzufügen, was zu

FEHLER 1045 (28000): Zugriff für Benutzer „root“@„localhost“ verweigert (mit Passwort: JA)

Ursachenanalyse:

Das Ganze birgt mehrere Fallstricke:

1. Die Funktion password() ist in MySQL 8.0 veraltet
2. Das Feld authentication_string kann nur das von MySQL verschlüsselte 41-Bit-String-Passwort enthalten. Andere werden als Formatfehler gemeldet. Dies bedeutet, dass md5('neues Passwort') nicht die Rolle des ursprünglichen Passworts('neues Passwort') spielen kann.
3. Das Standard-Authentifizierungs-Plugin für die MySQL 8.0-Datenbank ist caching_sha2_password , einschließlich des Plugins, das Sie zum Initialisieren der Datenbank mit mysqladmin verwenden. Wenn Sie also möchten, dass Ihr normaler MySQL-Verbindungsclient eine Verbindung zur MySQL 8.0-Datenbank herstellt, müssen Sie das default_authentication_plugin ändern, die Plugin-Spalte in mysql.user.

Lösung:

Schritt 1: MySQL-Server herunterfahren

Apple-Symbol in der oberen linken Ecke - Systemeinstellungen - MySQL - MySQL-Server stoppen

Schritt 2: Verwenden Sie Systemadministratorrechte, um die MySQL-Sicherheitsauthentifizierung zu überspringen und die Anmeldung zu erzwingen

1. Befehl + Leertaste
2.Terminal
3.sudo -i
4.cd /usr/local/mysql/bin/
5../mysqld_safe --skip-grant-tables &
6.Return (klicken Sie auf die Return-Taste auf Ihrer Tastatur)
7. Zu diesem Zeitpunkt wird MySQL Server wieder ausgeführt. Sie können ps -ef | grep -v 'grep' | grep 'mysql' verwenden, um seine PID und die PID von mysqld_safe anzuzeigen, das ihn gestartet hat.
8../mysql

Bisher habe ich mich im abgesicherten Modus erfolgreich bei MySQL angemeldet.

9. FLUSH PRIVILEGES; (Diese Anweisung extrahiert die Benutzerinformationen der aktuellen Benutzertabelle und die Berechtigungen der Berechtigungstabelle in den Speicher, um sicherzustellen, dass die Berechtigungen zum Ändern der Benutzertabelle erfolgreich abgerufen werden können.)
10. Setzen Sie zunächst den authentication_string von root in der Benutzertabelle auf einen leeren String und verwenden Sie dann ALTER user, um das Passwort zurückzusetzen
11. Beenden Sie MySQL, beenden Sie mysqld_safe mit kill -9, beenden Sie mysql und starten Sie neu
12. Melden Sie sich normal mit dem neuen Passwort an

VERWENDEN Sie MySQL;
UPDATE-Benutzer SET-Authentifizierungszeichenfolge = '' WHERE-Benutzer = 'root';
ALTER-Benutzer „root“@„localhost“ IDENTIFIZIERT DURCH „123456“;

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:
  • Einführung in einige Vorgänge zur sicheren MySQL-Passworteingabe
  • So ändern Sie das sichere Verarbeitungskennwort in MySQL 5.6
  • Schnelle Lösung zum Vergessen des MySQL8-Passworts
  • Detaillierte Erläuterung der MySQL 8.0-Richtlinie zum Ablauf von Passwörtern
  • So ändern Sie das Passwort des Root-Benutzers in MySQL
  • MySQL implementiert eine Beispielmethode zum Anmelden ohne Kennwort
  • So setzen Sie das Root-Passwort in Linux mysql-5.6 zurück
  • So fahren Sie MySQL sicher herunter
  • So beenden Sie den MySQL-Prozess ordnungsgemäß und sicher
  • Es ist Jahresende, ist Ihr MySQL-Passwort sicher?

<<:  Eine kurze Analyse der Unterschiede zwischen den häufig verwendeten Anweisungen v-if und v-show von Vue

>>:  Mehrere Möglichkeiten zum Senden von HTML-Formularen_PowerNode Java Academy

Artikel empfehlen

element-ui Markieren Sie die Koordinatenpunkte nach dem Hochladen des Bildes

Was ist Element-UI element-ui ist eine auf Vue.js...

Beispielcode mit Vue-Router in HTML

Einführung in Vue und Vue-Router <script src=&...

Spezifische Verwendungsanweisungen für MySQL-Joins

Inhaltsverzeichnis Join-Syntax: 1. InnerJOIN: (In...

Beispielcode für HTML-Layered-Box-Shadow-Effekt

Schauen wir uns zunächst das Bild an: Heute werde...

Docker installiert und führt den RabbitMQ-Beispielcode aus

Ziehen Sie das Bild: [mall@VM_0_7_centos ~]$ sudo...

Das WeChat-Applet implementiert das Scrollen von Text

In diesem Artikelbeispiel wird der spezifische Co...

Benutzerzentriertes Design

Ich wurde in letzter Zeit häufig zu einer offensi...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.12

Das Download- und Installationstutorial für MySQL...

5 Dinge, die beim Schreiben von React-Komponenten mit Hooks zu beachten sind

Inhaltsverzeichnis 01. Verwenden Sie useState, we...

So richten Sie den PostgreSQL-Start unter Ubuntu 16.04 ein

Da PostgreSQL kompiliert und installiert ist, müs...

So installieren Sie Linux Flash

So installieren Sie Flash unter Linux 1. Besuchen...

JavaScript zum Erzielen eines Akkordeoneffekts

In diesem Artikel wird der spezifische Code für J...

So stellen Sie eine Nextcloud-Netzwerkfestplatte mit Docker bereit

NextCloud Sie können beliebige Dateien oder Ordne...

JS realisiert die Berechnung des Gesamtpreises der Waren im Warenkorb

JS berechnet den Gesamtpreis der Waren im Warenko...