使用python鏈接數(shù)據(jù)庫報(bào) Mysql Error 2002:can't connect to local MySQL server through socket '/tmp/mysql.sock'

在服務(wù)器上放了一個(gè)程序,需要經(jīng)常操作數(shù)據(jù)庫,做了crontab,但是今天發(fā)現(xiàn)突然不能運(yùn)行了,于是手動(dòng)執(zhí)行了該程序,發(fā)現(xiàn)報(bào)錯(cuò),如下所示:


mysql報(bào)錯(cuò)信息

那這個(gè)意思很明顯,程序運(yùn)行的時(shí)候去找/tmp/mysql.sock這個(gè)文件,然后通過這個(gè)文件進(jìn)行數(shù)據(jù)庫的鏈接,首先我在我的電腦里搜索這個(gè)文件發(fā)現(xiàn)沒有找到,我就在想以前是怎么運(yùn)行的,直到解決問題以后,認(rèn)為可能是以前有這個(gè)文件,由于某種原因自己誤刪除了,現(xiàn)在開始解決問題,我于是手動(dòng)執(zhí)行了mysql看是否可以登錄

mysql -u用戶名 -p

發(fā)現(xiàn)沒有問題,那么本機(jī)的mysql執(zhí)行的sock文件在哪呢,于是又執(zhí)行了以下命令

find / -name *.sock

發(fā)現(xiàn)在某個(gè)目錄下存在mysqld.sock這個(gè)文件,感覺應(yīng)該靠譜,與是打算copy到tmp目錄下,發(fā)現(xiàn)沒有權(quán)限運(yùn)行,既然這樣我就建立一個(gè)軟連接

ln -s 到myqld的路徑/mysqld.sock /tmp/mysql.sock

執(zhí)行上述命令后,完美運(yùn)行!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容