Heim Datenbank MySQL-Tutorial Teilen Sie Lösungen für Probleme mit dem Vergessen von MySQL-Passwörtern und Anmeldefehlern

Teilen Sie Lösungen für Probleme mit dem Vergessen von MySQL-Passwörtern und Anmeldefehlern

Mar 23, 2017 pm 01:29 PM

Der unten stehende Herausgeber bringt Ihnen eine kurze Diskussion über MySQLdas Problem vergessener Passwörter und Anmeldefehler. Der Herausgeber findet es ziemlich gut, deshalb werde ich es jetzt mit Ihnen teilen und es allen als Referenz geben. Folgen wir dem Editor, um einen Blick darauf zu werfen.

MySQL-Anmeldekennwort vergessen? Tatsächlich ist die Lösung sehr einfach. Sie müssen nur eine Zeile mit dem Parameter „Autorisierungstabelle überspringen“ zur Hauptkonfiguration hinzufügen Datei von mysql my.cnf Einfach auswählen!

Fügen Sie die folgende Zeile in my.cnf hinzu:

[root@test-huanqiu ~]# vim /etc/my.cnf            
  //在[mysqld]区域里添加
........
skip-grant-tables 
                     
 //跳过授权表
Nach dem Login kopieren

Starten Sie dann den MySQL-Dienst neu, um sich ohne Passwort anzumelden

[root@test-huanqiu ~]# /etc/init.d/mysqld restart
Nach dem Login kopieren

Passwort nach dem Anmelden zurücksetzen

[root@test-huanqiu ~]# mysql 
mysql> select host,user,password from mysql.user;
+--------------------+------+-------------------------------------------+
| host | user | password |
+--------------------+------+-------------------------------------------+
| localhost | root | *481ACA1BD6D1E86221244904E9C0FABA33B40B84 |
| host-192-168-1-117 | root | |
| 127.0.0.1 | root | |
| ::1 | root | |
| localhost | | |
| host-192-168-1-117 | | |
+--------------------+------+-------------------------------------------+
6 rows in set (0.00 sec)

mysql> update mysql.user set password=password("123456") where host="localhost" and user="root";
Query OK, 1 row affected (0.02 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

mysql> select host,user,password from mysql.user;
+--------------------+------+-------------------------------------------+
| host | user | password |
+--------------------+------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| host-192-168-1-117 | root | |
| 127.0.0.1 | root | |
| ::1 | root | |
| localhost | | |
| host-192-168-1-117 | | |
+--------------------+------+-------------------------------------------+
6 rows in set (0.00 sec)

mysql>
Nach dem Login kopieren

Kommentieren Sie die in my.cnf hinzugefügte Zeile erneut und starten Sie dann MySQL neu

[root@test-huanqiu ~]# vim /etc/my.cnf........#skip-grant-tables
[root@test-huanqiu ~]# /etc/init.d/mysqld restart
[root@test-huanqiu ~]# mysql -p123456mysql>
Nach dem Login kopieren

-------------------------------------------------------- ------ -------------------------------------------- ------ -----------

Eine Grube entdeckt :

MySQL wurde zuvor vollständig gesichert. Nach der Wiederherstellung stellte ich fest, dass ich mich mit dem vorherigen Passwort nicht anmelden konnte!

Verwenden Sie die oben beschriebene Methode, um sich ohne Passwort anzumelden und dann das Passwort zurückzusetzen. Nach dem Zurücksetzen des Passworts können Sie sich jedoch immer noch nicht anmelden.

Schließlich wurde festgestellt, dass der Inhalt der Tabelle mysql.user gelöscht wurde!

mysql> select host,user,password from user;
Empty set (0.00 sec)
Nach dem Login kopieren

Lösung:

Daten eingeben und Passwort zurücksetzen

mysql> insert into user(host,user,password) values("localhost","root","123456");
Query OK, 1 row affected, 3 warnings (0.01 sec)

mysql> select host,user,password from user;
+-----------+------+----------+
| host | user | password |
+-----------+------+----------+
| localhost | root | 123456 |
+-----------+------+----------+
1 row in set (0.00 sec)

mysql> update mysql.user set password=password("123456") where host="localhost" and user="root";
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host | user | password |
+-----------+------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-----------+------+-------------------------------------------+
1 row in set (0.00 sec)
mysql> insert into user(host,user,password) values("127.0.0.1","root","123456");
Query OK, 1 row affected, 3 warnings (0.00 sec)

mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host | user | password |
+-----------+------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 127.0.0.1 | root | 123456 |
+-----------+------+-------------------------------------------+
2 rows in set (0.00 sec)

mysql> update mysql.user set password=password("123456") where user="root";
Query OK, 1 row affected (0.00 sec)
Rows matched: 2 Changed: 1 Warnings: 0

mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host | user | password |
+-----------+------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 127.0.0.1 | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-----------+------+-------------------------------------------+
Nach dem Login kopieren

Dann können Sie sich ganz normal mit dem Reset-Passwort anmelden!

------------------------------------------------------- -------------------------------------------------- -----------------------
MySQL-Anmeldefehler 1:

[root@test-huanqiu ~]# mysql -p123456ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)
[root@test-huanqiu ~]# ps -ef|grep mysqlroot 28279 1 0 12:55 ? 00:00:00 /bin/sh /usr/local/mysql//bin/mysqld_safe --datadir=/data/mysql/data 
--pid-file=/data/mysql/data/mysql.pidmysql 29059 28279 0 12:55 ? 00:00:01 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql/ 
--datadir=/data/mysql/data --plugin-dir=/usr/local/mysql//lib/plugin --user=mysql --log-error=/data/mysql/data/mysql-error.log 
--pid-file=/data/mysql/data/mysql.pid --socket=/usr/local/mysql/var/mysql.sock --port=3306root 30726 11268 0 12:58 pts/2 00:00:00 grep mysql
Nach dem Login kopieren

Es ist ersichtlich, dass der aktuelle Dateipfad von mysql.sock /usr/local/mysql/var/mysql.sock ist,

Lösung: Erstellen Sie einen Softlink

[root@test-huanqiu ~]# ll /usr/local/mysql/var/mysql.sock
rwxrwxrwx. 1 mysql mysql 0 Nov 29 12:55 /usr/local/mysql/var/mysql.sock
[root@test-huanqiu ~]# rm -f /var/lib/mysql/mysql.sock
[root@test-huanqiu ~]# ln -s /usr/local/mysql/var/mysql.sock /var/lib/mysql/mysql.sock
Nach dem Login kopieren

Das ist kein Problem

[root@test-huanqiu ~]# mysql -p123456
mysql>
Nach dem Login kopieren

-------------------------------------- -------------------------------------------------- -- --------------------------
Fehler beim Starten von MySQL gemeldet:

Starting MySQL.... ERROR! The server quit without updating PID file (/data/mysql/data/mysql.pid).
Nach dem Login kopieren

Lösungsversuche:

(1) Berechtigungsproblem

Vielleicht MySQL Die .pid-Datei hat keine Schreibberechtigungen. Legen Sie die Berechtigungen des Installationsverzeichnisses von MySQL auf die Berechtigungen des MySQL-Startbenutzers fest. Ändern Sie es beispielsweise in MySQL: MySQL-Berechtigungen

(2) Der MySQL-Prozess existiert möglicherweise bereits im Prozess

ps -ef|grep mysql, um herauszufinden, ob dort vorhanden ist ist ein MySQL-Prozess. Beenden Sie ihn einfach und versuchen Sie, MySQL neu zu starten Service.
Gehen Sie in das MySQL-Datenverzeichnis und sehen Sie nach, ob mysql-bin.index vorhanden ist. Es ist der Übeltäter.


(4) Mysql verwendet beim Start die Konfigurationsdatei /etc/my.cnf, ohne eine Konfigurationsdatei anzugeben. Bitte öffnen Sie diese Datei, um zu sehen, ob sich unter dem [ ein bestimmtes Datenverzeichnis befindet. mysqld] Abschnitt.

Einstellungen unter [mysqld] hinzufügen, z. B. datadir = /data/mysql/data

(5) Problem mit übersprungenen Verbundfeldern

Überprüfen Sie, ob in der Datei my.cnf ein unkommentiertes Feld mit Skip-Federated vorhanden ist, und wenn ja, kommentieren Sie es sofort aus.

(6) Das Fehlerprotokollverzeichnis existiert nicht

Gehen Sie zur Datei my.cnf, um zu sehen, ob ein Protokollkonfigurationspfad vorhanden ist. Wenn ja, prüfen Sie, ob Das Protokollverzeichnis ist vorhanden. Protokoll Die Verzeichnisberechtigungen müssen den Berechtigungen des MySQL-Startbenutzers entsprechen.

(7) Selinux ist die Ursache des Problems. Wenn es sich um ein Centos-System handelt, ist Selinux standardmäßig aktiviert.

Schließen Sie es und öffnen Sie /etc/selinux/. config und legen Sie SELINUX=enforcing fest. Ändern Sie es in SELINUX=disabled, speichern und beenden Sie es und versuchen Sie, den Computer neu zu starten.

(8) Versuchen Sie, die MySQL-Daten neu zu initialisieren

Wechseln Sie zum MySQL-Installationsverzeichnis

./scripts/mysql_install_db -- basedir= /usr/local/mysql --datadir=/data/mysql/data --user=mysql

———————————————————— —————— ----------


Verwendung von MySQL

Serverautorisierung Melden Sie sich bei MySQL an und der Fehler lautet wie folgt:
FEHLER 2003 (HY000): Es kann keine Verbindung zum MySQL-Server unter '192.168.1.14 hergestellt werden ' (111)

Mögliche Gründe sind:

1) Mögliches Netzwerkverbindungsproblem, Remote-Ping 192.168.1.14, kann erfolgreich gepingt werden, diese Situation ausschließen; >

2) mysql Die iptables des Servers 192.168.1.14 haben eine Whitelist-Einschränkung für die 3306-Port-Verbindung vorgenommen;


3) Die my.cnf-Datei des MySQL-Servers 192.168.1.14 .1.14 ist mit bind_address-Adressbindung konfiguriert, was nicht zulässig ist


4) Skip_networking ist in der my.cnf-Datei des MySQL-Servers 192.168.1.14 konfiguriert. MySQL kann nur über den lokalen Socket verbunden werden (Socket-Verbindung ist auch die Standardmethode von

lokale Verbindung). up on TCP/IP-Überwachung;

5) Beheben Sie DNS-Auflösungsprobleme und prüfen Sie, ob „skip_name_resolve“ in der my.cnf-Datei des MySQL-Servers 192.168.1.14 festgelegt ist. Nach dem Hinzufügen dieses Parameters unterstützt

die Hostnamen-Verbindungsmethode nicht.

6) Beheben Sie das --port-Problem. Es ist möglich, dass der MySQL-Port 192.168.1.14 auf dem MySQL-Server nicht der Standardport 3306 ist, z. B. Port 3307. Auf diese Weise -- port= muss bei einer Remote-Verbindung hinzugefügt werden.

7) Auf Benutzer- und Passwortprobleme prüfen. Tatsächlich wird 111 nicht angezeigt, wenn Benutzer- und Passwortprobleme ausgeschlossen sind

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

Das obige ist der detaillierte Inhalt vonTeilen Sie Lösungen für Probleme mit dem Vergessen von MySQL-Passwörtern und Anmeldefehlern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie man phpmyadmin öffnet Wie man phpmyadmin öffnet Apr 10, 2025 pm 10:51 PM

Sie können PhpMyAdmin in den folgenden Schritten öffnen: 1. Melden Sie sich beim Website -Bedienfeld an; 2. Finden und klicken Sie auf das Symbol phpmyadmin. 3. Geben Sie MySQL -Anmeldeinformationen ein; 4. Klicken Sie auf "Login".

MySQL: Eine Einführung in die beliebteste Datenbank der Welt MySQL: Eine Einführung in die beliebteste Datenbank der Welt Apr 12, 2025 am 12:18 AM

MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

So verwenden Sie ein einzelnes Gewinde -Redis So verwenden Sie ein einzelnes Gewinde -Redis Apr 10, 2025 pm 07:12 PM

Redis verwendet eine einzelne Gewindearchitektur, um hohe Leistung, Einfachheit und Konsistenz zu bieten. Es wird E/A-Multiplexing, Ereignisschleifen, nicht blockierende E/A und gemeinsame Speicher verwendet, um die Parallelität zu verbessern, jedoch mit Einschränkungen von Gleichzeitbeschränkungen, einem einzelnen Ausfallpunkt und ungeeigneter Schreib-intensiver Workloads.

Mysqls Platz: Datenbanken und Programmierung Mysqls Platz: Datenbanken und Programmierung Apr 13, 2025 am 12:18 AM

Die Position von MySQL in Datenbanken und Programmierung ist sehr wichtig. Es handelt sich um ein Open -Source -Verwaltungssystem für relationale Datenbankverwaltung, das in verschiedenen Anwendungsszenarien häufig verwendet wird. 1) MySQL bietet effiziente Datenspeicher-, Organisations- und Abruffunktionen und unterstützt Systeme für Web-, Mobil- und Unternehmensebene. 2) Es verwendet eine Client-Server-Architektur, unterstützt mehrere Speichermotoren und Indexoptimierung. 3) Zu den grundlegenden Verwendungen gehören das Erstellen von Tabellen und das Einfügen von Daten, und erweiterte Verwendungen beinhalten Multi-Table-Verknüpfungen und komplexe Abfragen. 4) Häufig gestellte Fragen wie SQL -Syntaxfehler und Leistungsprobleme können durch den Befehl erklären und langsam abfragen. 5) Die Leistungsoptimierungsmethoden umfassen die rationale Verwendung von Indizes, eine optimierte Abfrage und die Verwendung von Caches. Zu den Best Practices gehört die Verwendung von Transaktionen und vorbereiteten Staten

Warum MySQL verwenden? Vorteile und Vorteile Warum MySQL verwenden? Vorteile und Vorteile Apr 12, 2025 am 12:17 AM

MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

Überwachen Sie Redis Tröpfchen mit Redis Exporteur Service Überwachen Sie Redis Tröpfchen mit Redis Exporteur Service Apr 10, 2025 pm 01:36 PM

Eine effektive Überwachung von Redis -Datenbanken ist entscheidend für die Aufrechterhaltung einer optimalen Leistung, die Identifizierung potenzieller Engpässe und die Gewährleistung der Zuverlässigkeit des Gesamtsystems. Redis Exporteur Service ist ein leistungsstarkes Dienstprogramm zur Überwachung von Redis -Datenbanken mithilfe von Prometheus. In diesem Tutorial führt Sie die vollständige Setup und Konfiguration des Redis -Exporteur -Dienstes, um sicherzustellen, dass Sie nahtlos Überwachungslösungen erstellen. Durch das Studium dieses Tutorials erhalten Sie voll funktionsfähige Überwachungseinstellungen

So sehen Sie sich den SQL -Datenbankfehler an So sehen Sie sich den SQL -Datenbankfehler an Apr 10, 2025 pm 12:09 PM

Die Methoden zum Anzeigen von SQL -Datenbankfehlern sind: 1. Fehlermeldungen direkt anzeigen; 2. Verwenden Sie Showfehler und Warnungsbefehle anzeigen; 3.. Greifen Sie auf das Fehlerprotokoll zu. 4. Verwenden Sie Fehlercodes, um die Ursache des Fehlers zu finden. 5. Überprüfen Sie die Datenbankverbindung und die Abfrage -Syntax. 6. Verwenden Sie Debugging -Tools.

So stellen Sie eine Verbindung zur Datenbank von Apache her So stellen Sie eine Verbindung zur Datenbank von Apache her Apr 13, 2025 pm 01:03 PM

Apache verbindet eine Verbindung zu einer Datenbank erfordert die folgenden Schritte: Installieren Sie den Datenbanktreiber. Konfigurieren Sie die Datei web.xml, um einen Verbindungspool zu erstellen. Erstellen Sie eine JDBC -Datenquelle und geben Sie die Verbindungseinstellungen an. Verwenden Sie die JDBC -API, um über den Java -Code auf die Datenbank zuzugreifen, einschließlich Verbindungen, Erstellen von Anweisungen, Bindungsparametern, Ausführung von Abfragen oder Aktualisierungen und Verarbeitungsergebnissen.

See all articles