產生錯誤的原因是沒有在/var/lib/mysql/目錄下找到mysql.sock文件導致的。
輸入查找命令行命令:
find / -name mysql.sock
在我的系統中輸出如下,表明mysql.sock在/tmp/目錄下
/tmp/mysql.sock
於是將修改代碼如下,即可解決該問題。
import MySQLdb
db = MySQLdb.connect("localhost", "root", "l542212h", "TESTDB", charset='utf8' ,unix_socket="/tmp/mysql.sock")
當然,如果不想每次連接數據庫都輸入那個參數,可輸入如下命令:
ln -s /tmp/mysql.sock /var/lib/mysql/
即將mysql.sock文件軟鏈接到/var/lib/mysql/目錄下,這樣就可以省去unix_socket參數並且連接到MySQL了。