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)
2 , Fehleranalyse
Status der MySQL-Instanz anzeigen
[root@localhost scripts]# netstat -ntlp | grep 3306 tcp 0 0 :::3306 :::* LISTEN 13001/mysqld
My.cnf anzeigen über socket Die Konfiguration
[root@localhost scripts]# more /etc/my.cnf |grep sock socket = /tmp/mysqld.sock
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
3. Beheben Sie den Fehler
a my.cnf MySQL-Options-Socket-Dateispeicherort
Stoppen Sie zuerst den MySQL-Server
[root@localhost scripts]# systemvtl restart mysqld Shutting down MySQL.[ OK ]
[root@localhost scripts]# vi /etc/my.cnf [mysql] no-auto-rehash socket = /tmp/mysqld.sock #添加该行
[root@localhost scripts]# systemctl restart mysqld Starting MySQL..[ OK ]
[root@localhost scripts]# mysql -uroot -p Enter password: mysql> show variables like 'version'; +---------------+------------+ | Variable_name | Value | +---------------+------------+ | version | 5.6.12-log | +---------------+------------+
[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 | +---------------+-----------------+
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!