Heim > Datenbank > MySQL-Tutorial > Hauptteil

Analyse zur Lösung des Mysql-Startup-Berichts FEHLER: 2002

黄舟
Freigeben: 2017-09-02 13:28:02
Original
1546 Leute haben es durchsucht

Dieser Artikel stellt Ihnen hauptsächlich die Analyse und Lösung des MySQL-Startup-Problems ERROR: 2002 vor. Der Artikel analysiert das Problem ausführlich durch die Einführung von Beispielcode, der für Freunde, die ebenfalls auf dieses Problem stoßen, eine gewisse Hilfe ist. In Bezug auf den Lernwert können Freunde, die ihn benötigen, unten einen Blick darauf werfen.

Vorwort

Dieser Artikel stellt hauptsächlich die Analyse und Lösung des MySQL-Startfehlers ERROR: 2002 vor und stellt ihn als Referenz und zum Studium zur Verfügung. Im Folgenden gibt es nicht viel zu sagen. Werfen wir einen Blick auf die ausführliche Einführung.

1. Fehlerphänomen


[root@localhost scripts]# mysql -u root
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2)
Nach dem Login kopieren

2 , Fehleranalyse

Status der MySQL-Instanz anzeigen


[root@localhost scripts]# netstat -ntlp | grep 3306
tcp 0 0 :::3306   :::*   LISTEN 13001/mysqld
Nach dem Login kopieren

My.cnf anzeigen über socket Die Konfiguration


[root@localhost scripts]# more /etc/my.cnf |grep sock
socket = /tmp/mysqld.sock
Nach dem Login kopieren

bedeutet, dass mysqld die richtige Sock-Datei beansprucht hat, die Client-Verbindung jedoch weiterhin nach der Sock-Datei aus dem ursprünglichen Verzeichnis sucht

Überprüfen Sie das Hintergrundprotokoll unten. Es handelt sich um einen Fehler, der dadurch verursacht wird, dass das Verzeichnis nicht vorhanden ist und nichts mit dem aktuellen Fehler zu tun hat 🎜>


[root@localhost scripts]# more SZDB.err
  ............
2014-10-11 13:17:21 13001 [Note] InnoDB: 5.6.12 started; log sequence number 1625997
/app/soft/mysql/bin/mysqld: File '/log/mysql_logs/slowquery.log' not found (Errcode: 2 - No such file or directory)
2014-10-11 13:17:21 13001 [ERROR] Could not use /log/mysql_logs/slowquery.log for logging (error 2). Turning logging off for the who
le duration of the MySQL server process. To turn it on again: fix the cause, shutdown the MySQL server and restart it.
2014-10-11 13:17:21 13001 [Note] Server hostname (bind-address): '*'; port: 3306
2014-10-11 13:17:21 13001 [Note] IPv6 is available.
2014-10-11 13:17:21 13001 [Note] - '::' resolves to '::';
2014-10-11 13:17:21 13001 [Note] Server socket created on IP: '::'.
2014-10-11 13:17:21 13001 [Note] Event Scheduler: Loaded 0 events
2014-10-11 13:17:21 13001 [Note] /app/soft/mysql/bin/mysqld: ready for connections.
Version: '5.6.12-log' socket: '/tmp/mysql.sock' port: 3306 Source distribution
#Author :Leshami
#Blog : http://www.linuxidc.com
Nach dem Login kopieren

3. Beheben Sie den Fehler
a my.cnf MySQL-Options-Socket-Dateispeicherort


Stoppen Sie zuerst den MySQL-Server



Ändern Sie my.cnf wie folgt
[root@localhost scripts]# systemvtl restart mysqld
Shutting down MySQL.[ OK ]
Nach dem Login kopieren



MySQL-Server neu starten
[root@localhost scripts]# vi /etc/my.cnf
[mysql]
no-auto-rehash
socket = /tmp/mysqld.sock #添加该行
Nach dem Login kopieren



Wieder normal verbinden
[root@localhost scripts]# systemctl restart mysqld 
Starting MySQL..[ OK ]
Nach dem Login kopieren



b. So erstellen Sie einen Link für die Socket-Datei
[root@localhost scripts]# mysql -uroot -p
Enter password:
mysql> show variables like 'version';
+---------------+------------+
| Variable_name | Value |
+---------------+------------+
| version | 5.6.12-log |
+---------------+------------+
Nach dem Login kopieren



[root@SZDB mysqldata]# ln -s /tmp/mysql.sock /data/mysqldata/mysql.sock
ln: creating symbolic link `/data/mysqldata/mysql.sock' to `/tmp/mysql.sock': File exists
[root@SZDB mysqldata]# rm mysql.sock #上面提示文件存在,所以删除之前的mysql.sock文件
[root@SZDB mysqldata]# ln -s /tmp/mysql.sock /data/mysqldata/mysql.sock
[root@SZDB mysqldata]# ls -hltr mysql.sock
lrwxrwxrwx 1 root root 15 Oct 11 14:00 mysql.sock -> /tmp/mysql.sock
[root@SZDB mysqldata]# mysql -uroot -p
Enter password:
mysql> show variables like 'socket';
+---------------+-----------------+
| Variable_name | Value  |
+---------------+-----------------+
| socket | /tmp/mysql.sock |
+---------------+-----------------+
Nach dem Login kopieren

Zusammenfassung

Das obige ist der detaillierte Inhalt vonAnalyse zur Lösung des Mysql-Startup-Berichts FEHLER: 2002. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage