Mysql資料庫連線,錯誤提示ERROR 2002 (HY000) Can't connect to local MySQL server through socket xxx' (2)
阿新 • • 發佈:2019-01-27
一、問題描述
檢視mysql程序,並殺掉,重啟mysql。
方案2
檢視mysql是否已經啟動;
running表示執行狀態,dead表示停止狀態。
方案3
檢視mysql是不是沒有被授權,沒有的話給mysql再授權一次。
方案4
修改[mysqlid]後面max_connections=1000的引數1000為500或小一點
方案5
修改/var/lib/mysql 所有檔案所屬許可權為mysql:mysql(如圖)
方案6
連線mysql時,提示 '/var/lib/mysql /mysql.sock',就是目標檔案mysql.sock找不到。
mysql .sock可能會可能會根據實際安裝方式的不同,存放在不同的目錄下,可能是/var/lib/mysql.sock或/tmp/mysql.sock或其他目錄下,我的是實際是在/tmp/mysql.sock下。
方式一:配置my.cnf
[mysqld]後面新增socket=/xxx/xx/mysql.sock,
例如,我的目標目錄為/tmp/mysql.sock,則socket=/tmp/mysql.sock
socket引數值為目標檔案mysql.sock的實際位置,根據自己實際環境找到這個位置。
方式二:ln 建立軟連線
# ln -s 原檔案 目標檔案
/tmp/mysql.sock是我的mysql.sock的位置,/var/lib/mysql/mysql.sock是連線mysql的時候提示找不到的目標檔案。
關於Linux ln -s軟連結、硬連結參考百度答案https://zhidao.baidu.com/question/590820491.html
PS:
mysql相關操作
1、連線mysql資料庫時,提示錯誤:ERROR 2002 (HY000) Can't connect to local MySQL server through socket xxx' (2); 2、提示問題,下面提供四種方案供參考解決,方案1、方案2、方案3、方案4; 3、方案4中,如果找不到自己的mysql配置檔案 /etc/my.cnf(百度一下); 4、提示socket xxx為 '/var/lib/mysql /mysql.sock'時,參考方案6。 |
二、具體實現
方案1.檢視mysql程序,並殺掉,重啟mysql。
# ps -A|grep mysql |
# kill -9 4174 # kill -9 xxxx # /etc/init.d/mysql restart或 service mysql restart # mysql -uroot -p Enter password: |
檢視mysql是否已經啟動;
# /etc/init.d/mysql status 或 service mysql status |
方案3
檢視mysql是不是沒有被授權,沒有的話給mysql再授權一次。
#chown -R mysql:mysql /var/lib/mysql # /etc/init.d/mysql restart或 service mysql restart # mysql -uroot -p Enter password: |
vim /etc/my.cnf |
方案5
修改/var/lib/mysql 所有檔案所屬許可權為mysql:mysql(如圖)
# chown mysql:mysql /var/lib/mysql/* |
方案6
連線mysql時,提示 '/var/lib/mysql /mysql.sock',就是目標檔案mysql.sock找不到。
mysql .sock可能會可能會根據實際安裝方式的不同,存放在不同的目錄下,可能是/var/lib/mysql.sock或/tmp/mysql.sock或其他目錄下,我的是實際是在/tmp/mysql.sock下。
方式一:配置my.cnf
vim /etc/my.cnf |
例如,我的目標目錄為/tmp/mysql.sock,則socket=/tmp/mysql.sock
socket引數值為目標檔案mysql.sock的實際位置,根據自己實際環境找到這個位置。
方式二:ln 建立軟連線
# ln -s 原檔案 目標檔案
# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock |
關於Linux ln -s軟連結、硬連結參考百度答案https://zhidao.baidu.com/question/590820491.html
PS:
mysql相關操作
查狀態 # /etc/init.d/mysql status或service mysql status 啟動 # /etc/init.d/mysql start或service mysql start 關閉 # /etc/init.d/mysql stop或service mysql stop 重啟 # /etc/init.d/mysql restart或service mysql restart |