[plain] view plaincopy
首先,下载MySQLdb:http:///projects/mysql-python/下载MySQL-python-1.2.3.tar.gz解压,运行setup.py:
python setup.py install
报错:
sh: mysql_config: command not found Traceback (most recent call last): File "setup.py", line 15, in <module> metadata, options = get_config() File "/Users/***/Downloads/MySQL-python-1.2.3/setup_posix.py", line 43, in get_config libs = mysql_config("libs_r") File "/Users/***/Downloads/MySQL-python-1.2.3/setup_posix.py", line 24, in mysql_config raise EnvironmentError("%s not found" % (mysql_config.path,)) EnvironmentError: mysql_config not found 参考:http://www./article/2416/read/environmenterror_mysql_config_not_found/installing_mysqldb_for_python_on_mac_osx/
发现要修改site.cfg
mysql_config = /usr/local/mysql/bin/mysql_config
让mysql_config指向mysql在mac os中的安装位置。
之后再用高权限运行
sudo python setup.py install
如果运行的时候,还有问题:
>>> import MySQLdb
/Library/Python/2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /Library/Python/2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg/_mysql.pyc, but /Users/***/Downloads/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.macosx-10.7-intel/egg/_mysql.py", line 7, in <module> File "build/bdist.macosx-10.7-intel/egg/_mysql.py", line 6, in __bootstrap__ ImportError: dlopen(/Users/***/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg-tmp/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib Referenced from: /Users/***/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.7-intel.egg-tmp/_mysql.so Reason: image not found 那么就需要解决动态引入的问题了(重新做一遍,并且设置环境变量):
$ sudo python setup.py clean $ sudo python setup.py build $ sudo python setup.py install $ export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH $python
>>> import MySQLdb
>>> conn=MySQLdb.connect(host="localhost",user="root",passwd="root",db="mysql") 能够读取mysql.user表的信息了,说明已经mysqldb已经安装成功。 参考:http:///questions/1465846/install-mysqldb-on-snow-leopard/6537345#6537345
如果还是在eclipse中有问题,那就采用这里的办法 http:///blog/archives/76 解决办法: eclipse->偏好设置->Pydev->Interpreter-Python->Environment里面增加下面内容,看图: 现在可以运行带有mysqldb的脚本了,不过还是有红叉,很不爽啊!!
|
|