Linux下Python安裝PyMySQL成功,但無法導入的問題


今天使用 Nginx 部署 Django應用。安裝python庫都顯示成功安裝。

嘗試啟動 uwsgi 服務,竟然報錯

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named pymysql

以為 python setup.py install 沒安裝成功,去python下的 site-packages 目錄下看,確實有 PyMySQL-0.7.10-py2.7.egg ,

懷疑安裝時出錯了,就重新 python setup.py install 裝一遍,也顯示安裝成功,

使用 pip list 也能看到 PyMySQL,確定這次不是安裝出錯的問題。

結果還是一樣的錯誤。

懷疑是Python版本問題,換成Python2.7.10后,依舊是一樣的錯誤。

折騰了好久,最后才注意到一個問題:安裝完以后,不關閉secureCRT窗口,直接進入Python,導入 pymysql 就沒問題。關閉secureCRT窗口后重新進入,再導入就會報錯。

這才懷疑可能是權限問題。進入site-packages目錄看了下  PyMySQL-0.7.10-py2.7.egg 的權限,確實沒有任何執行權限,只有讀的權限。因為是使用新建的用戶來安裝的,

才出現這種無權限問題。

解決方法:賦予 site-packages目錄 或整個python目錄 權限, sudo chmod -R 775 [目錄路徑]

在 Linux下,對於自己新建的用戶,要特別注意權限問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM