2017-09-10 121 views
0

更新(pymysql.err.InternalError包的序列號錯誤):問題解決了,解決下面貼不能與PyMySQL遠程連接:

我是新來建立遠程數據庫連接的過程,但它似乎這個錯誤往往不是一個明顯的解決方案。

pymysql.err.InternalError: Packet sequence number wrong - got 80 expected 0試圖進行以下pymysql連接

我運行的MacOS 10.12.5,巨蟒2.7.10在PyCharm(也試圖與終端),以及PyMySQL 0.7.11時出現(也試過0.7。 9)

更新:還嘗試在Windows 10,巨蟒2.7.13具有相同的結果

的數據庫上的cPanel託管。也許在連接之前還有其他設置需要更改。連接用戶擁有完整的權限。我的IP被添加到主機「訪問」列表。

其他說明:正如所料,如果端口號或主機IP被隨機更改,它會立即拒絕連接。否則,在發生'數據包序列'錯誤之前大約需要30秒。

import pymysql.cursors 
import pymysql 

connection = pymysql.connect(host = hostIPaddress, 
          port = 2083, 
          user = username, 
          passwd = password, 
          db = dbName, 
          charset = 'utf8mb4', # also tried 'utf8' 
          cursorclass=pymysql.cursors.DictCursor) 

回答

0

當端口2083被主機使用時,在這種情況下每個數據庫都使用默認端口3306。

使用3306進行測試時,訪問被拒絕,直到我將拒絕的IP添加到cPanel上的遠程MySQL中的主機「訪問」列表。