2008-08-03 28 views
34

我可以讓Python與Postgresql一起工作,但我無法使它與MySQL一起工作。主要的問題是在我的共享主機帳戶上我沒有安裝Django或PySQL之類的東西,所以在我的計算機上安裝它們時通常會失敗,所以也許這很好,我無法在主機上安裝。Python和MySQL

我發現bpgsql真的很好,因爲它不需要安裝,它是一個單獨的文件,我可以查看,然後調用函數。有人知道MySQL的這種情況嗎?

回答

23

MySQLdb是我以前使用過的。

如果您的主機使用的是Python 2.5或更高版本,則內置了對sqlite3數據庫的支持(sqlite允許您擁有一個關係數據庫,它只是文件系統中的一個文件)。但是買家要小心,sqlite不適合生產,所以它可能取決於你試圖用它做什麼。

另一種選擇可能是打電話給你的主人並抱怨或更換主人。誠實地說,這些天,任何支持python和mysql的自我尊重的Web主機應該預先安裝MySQLdb。

7

我對http://www.SiteGround.com沒有任何親身體驗網絡主機的經驗。

這只是一個猜測,但共享主機通常使用MySQLdb模塊來支持Python和MySQL(例如,GoDaddy這樣做)。嘗試使用以下CGI腳本查看是否安裝了MySQLdb。

#!/usr/bin/python 

module_name = 'MySQLdb' 
head = '''Content-Type: text/html 

%s is ''' % module_name 

try: 
    __import__(module_name) 
    print head + 'installed' 
except ImportError: 
    print head + 'not installed' 
+0

在我的新goddady與cPanel主機上,他們沒有MySQLdb的:(,但它是在我的老...爲什麼他們刪除嗎? – fersarr 2016-05-15 11:40:10

6

我上傳它,並得到了一個內部錯誤

Premature end of script headers 

多玩弄後,我發現,如果我有

import cgi 
import cgitb; cgitb.enable() 
import MySQLdb 

它將給我一個更加有用的答案,說它沒有安裝,你可以自己看 - >http://woarl.com/db.py

奇怪的是, ,這將產生一個錯誤

import MySQLdb 
import cgi 
import cgitb; cgitb.enable() 

我看了一些其他的文件,我已經在那裏的,似乎圖書館是我已經嘗試者之一。

6

您可以嘗試使用Virtual Python設置自己的python安裝。看看如何使用它設置Django here。這是很久以前寫的,但它顯示瞭如何在沒有root訪問權限或類似的情況下獲得MySQLdb設置。一旦你掌握了基礎知識,你可以安裝任何你想要的python庫。

4

你真的想MySQLdb的任何MySQL + Python代碼。但是,您不應該需要root訪問權限或其他任何信息才能使用它。您可以在用戶目錄(〜/ lib/python2.x/site-packages)中構建/安裝它,並將其添加到您的PYTHON_PATH env變量中。這應該適用於任何python庫。

給它一個鏡頭,真的不是一個好的選擇。