![](/img/trans.png)
[英]pymysql.err.OperationalError - Lost connection to MySQL server during query
[英]Lost connection to MySQL server during query using python,pymysql & SSHTunnel
我正在使用 SSHTunnel 連接到 Mysql。我打算將所有表從數據集中導出到 CSV。這是代碼
def OpenSSHTunnel():
global server
server = SSHTunnelForwarder(
('*.*.*.*', 22),
ssh_username="",
ssh_pkey="C:/Users/Administrator/Desktop/***",
remote_bind_address=('*.*.*.*', 3306),
local_bind_address=('0.0.0.0', 10022))
def exportToCsv(db):
conn = pymysql.connect(host='127.0.0.1',
port=10022,
user='**',
passwd='**',
db=db)
cur = conn.cursor()
#cur.execute("set global max_allowed_packet=67108864")
# RETRIEVE TABLES
cur.execute("SHOW TABLES")
tables = []
for row in cur.fetchall():
tables.append(row[0])
for t in tables:
# SELECT STATEMENTS
cur.execute("SELECT * FROM `{}`".format(t))
tempcsv = '{}.csv'.format(t)
rows = cur.fetchall()
fp = open(tempcsv, 'w',newline='',encoding='utf-8')
writer = csv.writer(fp)
writer.writerow([i[0] for i in cur.description]) # COLUMN HEADERS
writer.writerows(rows)
fp.close()
我收到錯誤“2013,‘在查詢期間與 MySQL 服務器失去連接’”,那么有沒有辦法解決這個問題?
我嘗試設置全局 max_allowed_packet,但出現錯誤“1227,‘訪問被拒絕;您需要(至少之一)超級權限才能執行此操作’”
我不能告訴你為什么,但我遇到了這個問題,它與 SSH 隧道有關。 出於某種原因,從方法“返回”隧道/連接並傳遞它似乎不起作用。 我嘗試在主要方法中完成隧道和連接內的所有操作,並為我修復了它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.