萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> 解決MySQLdb ImportError: libmysqlclient.so.18錯誤

解決MySQLdb ImportError: libmysqlclient.so.18錯誤

今天嘗試使用MySQLdb數據庫結果發現安裝好MySQLdb我們導入數據時提示了ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory不是一個有效的目錄了,下面我就來把解決方法與各位分享一下。

安裝MySQLdb後,import MySQLdb出錯如下:

 代碼如下 復制代碼 [root@lizhong MySQL-python-1.2.3]# /usr/local/bin/python2.7
Python 2.7.6 (default, Apr 10 2014, 15:45:39)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
/usr/local/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-linux-x86_64.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /usr/local/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-linux-x86_64.egg/_mysql.pyc, but /soft/MySQL-python-1.2.3 is being added to sys.path
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "MySQLdb/__init__.py", line 19, in <module>
    import _mysql
  File "build/bdist.linux-x86_64/egg/_mysql.py", line 7, in <module>
  File "build/bdist.linux-x86_64/egg/_mysql.py", line 6, in __bootstrap__
ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory

根據最後提示,應該是找不著一個交libmysqlclient.so.18的文件,於是到mysql安裝目錄裡找到這個文件並且做一個軟連接到/usr/lib

 代碼如下 復制代碼 ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18

如果是64系統則:

 代碼如下 復制代碼 ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18

再次import MySQLdb就正常了:

 代碼如下 復制代碼 [root@lizhong MySQL-python-1.2.3]# /usr/local/bin/python2.7
Python 2.7.6 (default, Apr 10 2014, 15:45:39)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>>

(本文完)

copyright © 萬盛學電腦網 all rights reserved