2017-09-13 100 views
0

我想使用Python來獲取到MySQL的連接,如何使用python通過公共IP連接到MySQL?

這是Python代碼是:

import MySQLdb 

conn= MySQLdb.connect(
     host='public ip', 
     port = 3306, 
     user='root', 
     passwd='123456', 
     db ='test_schema', 
     ) 

所以它總是把錯誤:

_mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL server on 'pubilic ip' (10060)") 
+0

「公網IP」是一個字符串..你應該在這裏輸入實際的IP地址。如果MySQL在本地運行,則可以輸入'localhost' – AK47

+0

你在哪裏託管數據庫? – MrPyCharm

+0

分貝是在我的筆記本電腦上,我也使用從我的筆記本電腦發送的蟒蛇。主持人我把它稱爲公共IP。 – panda001

回答

0

大廈關閉AK47的答案

您需要先找到您的機器的公衆面臨的IP地址。 去谷歌和搜索What's my ip address你應該得到一組數字xx.xx.xxxx.xx的例如12.42.111.2

然後在你的MySQL,你需要的linux是否修改conf文件,ini文件如果Windows

/etc/mysql/my.cnf Unix/OSX系統。 C:\Program Files\MySQL\MySQL Server 5.5\ Windows系統

bind-address更改爲從您的IP地址。

然後在AK47的回答取代host='127.0.0.1'host=<ip from google>

+0

感謝您的回答是我無法安裝mysql服務器當它完成安裝配置頁面沒有給我下一個選項它凍結類型和網絡。 – panda001

+0

這是一個文本文件...你也可以重新安裝一次,並配置 –

+0

我試了幾次,我不知道如何上傳凍結的Windows圖片。這似乎不允許我進行配置。 – panda001

0

更新您的連接參數在'host'字段中有實際IP地址

import MySQLdb 

conn= MySQLdb.connect(
     host='127.0.0.1', 
     port = 3306, 
     user='root', 
     passwd='123456', 
     db ='test_schema') 
+0

感謝您的回答,事情是我想嘗試MySQL是否可以接收來自外部的數據。我的Python腳本的公有IP是我的頂級IP。 – panda001

+0

然後,你的數據庫主機需要在端口3306上監聽,而host ='public ip'將是你所在數據庫的機器的公共IP地址 – AK47

+0

這意味着我需要另一臺機器來測試數據庫嗎? – panda001