MySQL python連線socket問題

2021-07-26 09:29:59 字數 1236 閱讀 8831

python中使用mysqldb連線資料庫時出現以下錯誤:

traceback (most recent call last):

file "/home/monitor_user/servermonitor.py", line 206, in serverlist = sqlquery(getmngconn(), "select b.db_name, a.ip_inside, a.port from machine a inner join dbinfo b on b.machine_id = a.machine_id")

file "/home/monitor_user/servermonitor.py", line 39, in getmngconn

return mysqldb.connect(host='localhost', user='monitor_user', passwd='monitor.user', db='dbmanage')

file "build/bdist.linux-x86_64/egg/mysqldb/__init__.py", line 81, in connect

file "build/bdist.linux-x86_64/egg/mysqldb/connections.py", line 187, in __init__

_mysql_exceptions.operationalerror: (2002, "can't connect to local mysql server through socket '/var/lib/mysql/mysql.sock' (2)")

其原因是我將mysql的sock檔案已經調整到/tmp/mysql.sock,所以必須在mysqldb中指定sock的路徑(這個還是很不智慧型的,萬一我有很多mysql伺服器,而每台伺服器的sock路徑都有差異呢?)

return mysqldb.connect(host='

localhost

', user='

user

', passwd='

user

', db='

dbname

', unix_socket='

/tmp/mysql.sock

' )

unix_socket引數指定了sock檔案的路徑

service mysqld status

grep socket /etc/my.cnf | cut -d= -f2

mysql -u root -p

so動態連線庫遷移

1 找到對應路徑 cd usr local lib 2 將.so檔案拷貝到指定伺服器中 scp r locka root 192.168.0.54 root 3 將檔案存放於 usr local lib目錄 4 靜態編譯路徑新增 在 etc ld.so.conf.d 目錄下,新建檔案 lock x8...

mysql python安裝問題

python訪問mysql的模組,以前叫mysqldb,後來更名為mysql python,安裝似乎也有變化。有時會遇到這樣的問題 sudo python setup.py installsh line 1 mysql config command not found traceback most ...

mysql python模組安裝問題

我在的環境是ubuntu14.04 在用sudo pip install mysql python 一下是報錯資訊 downloading unpacking mysql python downloading mysql python 1.2.5.zip 108kb 108kb downloaded...