解決 Can’t connect to local mysql server through socket ‘/tmp/mysql.sock’ (2) |#2002
我安裝的是lnmp0.7一鍵安裝包,之前一直正常使用。可是今日重啟了一下nginx后,奇怪的問(wèn)題出現(xiàn)了:
Discuz X2出來(lái)錯(cuò)誤:
[Type] 無(wú)法連接到數(shù)據(jù)庫(kù)服務(wù)器[2002] Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)或是這個(gè)錯(cuò)誤(Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2))
phpMyAdmin也無(wú)法用root登陸
#2002 無(wú)法登錄 MySQL 服務(wù)器
找了一下/tmp/也找不到mysql.sock
解決方法:
1、 登陸ssh,使用以下命令
ps -aux|grep mysql
2、 然后結(jié)束你看到的pid
kill pid
(如,我的話就是要運(yùn)行kill 17874;kill 17987;kill 30579;)
3、 最后重啟mysql
/etc/rc.d/init.d/mysql restart
或者
service mysql restart
嘿嘿,成功了!/tmp/mysql.sock出現(xiàn)了!
如果你的情況跟我的不一樣可以參考以下文章:
解決方法:php標(biāo)準(zhǔn)配置正是通過(guò)’/tmp/mysql.sock’,但一些mysql安裝方法將mysql.sock放在/var/lib/mysql.sock或者其他地方,你可以通過(guò)修改/etc/my.cnf文件來(lái)修正它,打開(kāi)文件
更改一下:
[mysqld] socket=/var/lib/mysql.sock 假如更改后mysql程序連不上,可以使用下面的方法繼續(xù)修改:[mysql] socket=/tmp/mysql.sock
另外還可以用下面的方法:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
Can not connect to local MySQL server through socket 解決辦法
尋找 mysql.sock文件
find / -name mysql.sock
1. 先查看 /etc/rc.d/init.d/mysqld status 看看mysql是否已經(jīng)啟動(dòng),另外看看是不是權(quán)限問(wèn)題。
2. 確定你的mysql.sock是不是在那個(gè)位置
mysql -u 你的mysql用戶名 -p -S /var/lib/mysql/mysql.sock
3、試試
service mysqld start
4、如果是權(quán)限問(wèn)題,則先改變權(quán)限
chown -R mysql:mysql /var/lib/mysql/etc/init.d/mysqld start
相關(guān)文章:
1. 使用SQL語(yǔ)句快速獲取SQL Server數(shù)據(jù)字典2. SQL Server中, DateTime (日期)型操作3. SQL Server 2000企業(yè)版安裝教程4. Oracle中的高效SQL編寫PARALLEL解析5. Mybatis 動(dòng)態(tài)表名+Map參數(shù)傳遞+批量操作詳解6. mysql數(shù)據(jù)庫(kù)之count()函數(shù)和sum()函數(shù)用法及區(qū)別說(shuō)明7. SQL SERVER 2005 EXPRESS不能遠(yuǎn)程連接的問(wèn)題8. Microsoft SQL Server 查詢處理器的內(nèi)部機(jī)制與結(jié)構(gòu)(1)9. 解決mybatis中order by排序無(wú)效問(wèn)題10. MYSQL SQL查詢近7天一個(gè)月的數(shù)據(jù)的操作方法
