2014-05-13 78 views
0

我已經學習了一些基本的MySQL,並決定把它放到Python的,我有一些更多的經驗。我有PHP腳本在這個MySQL服務器上工作,所以我知道服務器正在工作。但每次我連接我得到這個錯誤:OperationalError:(2003,「無法連接到MySQL服務器‘mysql2.000webhost.com’(10060)」)

Traceback (most recent call last): 
File "E:/Geekster_Bot/Geekster_Bot Code/Geekster_Bot_alpha_API_MySQL", line 6, in <module> 
db="MY DATABASE")# name of the data base 
File "C:\Python27\lib\site-packages\MySQLdb\__init__.py", line 81, in Connect 
return Connection(*args, **kwargs) 
File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 187, in __init__ 
super(Connection, self).__init__(*args, **kwargs2) 
OperationalError: (2003, "Can't connect to MySQL server on 'mysql2.000webhost.com' (10060)") 

我真的不知道爲什麼。我已經打開MySQL端口(3306),就像我說的那樣,服務器/數據庫正在工作。有任何想法嗎?

這是整個MySQL連接的代碼;

import MySQLdb 

db = MySQLdb.connect(host="mysql2.000webhost.com", # your host, usually localhost 
       user="MY USER", # your username 
        passwd="MY PASSWORD", # your password 
        db="MY DATABASE")# name of the data base 

#you must create a Cursor object. It will let 
#you execute all the queries you need 
cur = db.cursor() 

#Use all the SQL you like 
cur.execute("SELECT * twitch_follows_ign") 

#print all the first cell of all the rows 
for row in cur.fetchall() : 
print row[0] 

所有被封鎖的數據輸入正確。

+1

000webhost不允許外部MySQL連接,因爲免費賬戶沒有Python支持,我假設你沒有從主機上運行,​​這是導致錯誤。 –

回答

2

你的數據庫似乎是一個外部服務器「mysql2.000webhost.com」,你在你的Python應用程序連接之前,MySQL服務器,你必須創建一個數據庫用戶,並授予從服務器用戶訪問你的IP地址。

如果您對「000webhost的」免費帳戶,你可能將無法創建訪問來自外部的數據庫的數據庫用戶。 試試這個網站http://www.freemysqlhosting.net/他們將授予您從任何IP地址訪問新創建的數據庫的權限。

相關問題