mySQL似乎啓動並運行得很好。但是當我嘗試將MySQLdb導入python時,我得到了一個ImportError: ... Expected in: flat namespace
。我認爲這與擁有蟒蛇兩個不同的版本(以及兩個不同的目錄,版本相同)當設置mysql數據庫時,「ImportError:... Expected in:flat namespace」
OS做的事:蘋果10.6.8
$ ls /Library/Frameworks/Python.framework/Versions/
7.2 Current
$ which python
/Library/Frameworks/Python.framework/Versions/Current/bin/python
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/Current/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin
$ easy_install MySQL-python
...
...
Using /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg
...
$ mysql.server start
Starting MySQL
.. SUCCESS!
$ python manage.py runserver
...
...
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: dlopen(/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
Expected in: flat namespace
in /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
$ python
Enthought Python Distribution (EPD) free version -- www.enthought.com
Version: 7.2-2 (32-bit)
>>> import MySQLdb
...
...
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
Expected in: flat namespace
in /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/site-packages/MySQL_python-1.2.3-py2.7-macosx-10.5-i386.egg/_mysql.so
所以除了是新Django和蟒蛇我對於使用終端來說也是新的,我不確定我在看什麼。
但我可以告訴顯而易見的:
- 我有兩個版本,7.2和電流。
- 如果我調用python,它會調用'當前'版本。這很有道理,它在$ PATH中。
- 但是,2.7版本(不是7.2)也在PATH中,我在安裝EDP軟件包時已將其刪除。 ...我不完全瞭解PATH是什麼或者做什麼,所以我不想開始改變東西
- 在版本7.2中安裝MySQL-python
- 無法運行服務器,因爲必需的文件isn'噸
flat namespace
和它在這個地方它被安裝過
是否有某種方式來解開這些路徑(如果這就是問題所在)
預先感謝您
*您沒有*安裝MySQL客戶端庫, 對? –
er ...不是嗎?我想我沒有。你能指點一下嗎?在此先感謝 – Ben
安裝MySQL通常涵蓋,所以我認爲你現在已經擁有了它們。 –