1. 程式人生 > >mysql數據庫已啟動,但是登錄數據庫報錯

mysql數據庫已啟動,但是登錄數據庫報錯

mysql數據庫已啟動但是登錄數據庫報

mysql數據庫默認設置的是開機自啟動,重啟db01服務器後,想進入數據庫查看數據信息:但是無法進入數據庫,報錯如下:

[root@db01 ~]# mysql -uroot -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/data/mysql/mysql.sock' (2)

查看mysql數據庫端口狀態,嘗試重啟,關閉數據庫,但是報錯如下:

[root@db01 ~]# lsof -i:3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  1369 mysql   11r  IPv4   9721      0t0  TCP *:mysql (LISTEN)
  sqld  1369 mysql   34u  IPv4  10594      0t0  TCP localhost:mysql->localhost:33160 (ESTABLISHED)
mysqld  1369 mysql   50u  IPv4  10916      0t0  TCP localhost:mysql->localhost:33176 (ESTABLISHED)
mysqld  1369 mysql   51u  IPv4  10919      0t0  TCP localhost:mysql->localhost:33178 (ESTABLISHED)
java    1444 nginx  128u  IPv4  10556      0t0  TCP localhost:33160->localhost:mysql (ESTABLISHED)
java    1444 nginx  135u  IPv4  10914      0t0  TCP localhost:33176->localhost:mysql (ESTABLISHED)
java    1444 nginx  136u  IPv4  10917      0t0  TCP localhost:33178->localhost:mysql (ESTABLISHED)
[root@db01 ~]# service mysqld status
MySQL is running but PID file could not be found           [FAILED]
[root@db01 ~]# /etc/init.d/mysqld restart
MySQL server PID file could not be found!                  [FAILED]
Starting MySQL.......The server quit without updating PID file (/data/mysql/mysql.pid).                     [FAILED]


[root@db01 mysql]# /etc/init.d/mysqld stop
MySQL server PID file could not be found!                  [FAILED]
[root@db01 mysql]# /etc/init.d/mysqld start
Starting MySQL.....The server quit without updating PID file (/data/mysql/mysql.pid).                     [FAILED]

解決方法

完善mysql配置文件:

如果確認mysql服務正常運行,還提示文章標題的此錯誤,那就是“/etc/my.cnf”配置文件的問題了。解決辦法是修改“/etc/my.cnf”配置文件,在配置文件中添加“[client]”選項和“[mysql]”選項,並使用這兩個選項下的“socket”參數值,與“[mysqld]”選項下的“socket”參數值,指向的socket文件路徑完全一致。如下:

[mysqld]
datadir=/data/mysql/mysql
socket=/data/mysql/mysql.sock
...省略n行(愛E族)...
[client]
default-character-set=utf8
socket=/data/mysql/mysql.sock
[mysql]
default-character-set=utf8
socket=/data/mysql/mysql.sock

配置完/etc/my.cnf後,重啟服務器後,然後就可以正常進入數據庫了



參考文檔:

https://www.cnblogs.com/wzg123/p/6723338.html

mysql數據庫已啟動,但是登錄數據庫報錯