首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从.csv通过PyMySql向cloudsql表插入大量数据行

从.csv通过PyMySql向cloudsql表插入大量数据行
EN

Stack Overflow用户
提问于 2019-04-13 17:57:39
回答 1查看 663关注 0票数 0

我是CloudSQL的新手&我正在尝试插入40+不同列和超过150万行的记录。然而,我无法在谷歌CloudSQL中做到这一点。我已经采取了下面列出的相当多的措施来解决这个问题,但我得到的主要错误是:

代码语言:javascript
复制
ERROR:
textPayload:  "2019-04-12T06:10:47.348295Z 8554 [Note] Aborted connection 8554 to db: 'xxxxx_xxx' user: 'root' host: 'x.x.x.x' (Got an error reading communication packets)"  

摘要:

在CloudSQL.

  • System配置中已经创建了表: vCPUs 4,内存- 15 GB,固态硬盘存储- 10 GB

  • 我可以在我的本地系统中完全加载这些数据。

  • in PyMySql,部署时间非常长,当我检查我的表时,部署是的
  1. ,为空。
  2. 实例中的MySql错误日志显示上述内容。

我尝试了以下操作:

  • 使用API URL/ .txt / .json文件上载而不是现在使用.csv.
  • Thinking这是一个系统问题,我将系统从8 GB内存升级到了15 GB Memory.
  • Thinking由于.txt默认配置导致限制,我添加了以下内容:

代码语言:javascript
复制
- sql\_mode : MAXDB,NO\_AUTO\_CREATE\_USER
- max\_allowed\_packet: 1073741824
- net\_read\_timeout: 4294967295
- wait\_timeout: 31536000

  • 插入的行数较少,可插入的最大行数= 100

代码语言:javascript
复制
def adddata():
    try:
        conn = pymysql.connect(unix_socket='/cloudsql/' + 'karto-235001:asia-east1:karto', user='xxx', password='xxx', db='xxx')
        cur = conn.cursor()
        insert_ = "INSERT INTO data_table(a, b, c) VALUES (%s, %s, %s)"
        with open('info.csv', newline='') as myFile:
            reader = csv.reader(myFile)
            for item in reader:
                cur.execute(insert_, (item[3], item[4], item[5]))
            conn.commit()
            cur.close()
    finally:
        conn.close()

我已经在线查看并实现了CloudSQL和其他堆栈溢出用户推荐的解决方案。如果有人能找出我做错了什么,或者我的代码或配置是否有问题?非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-24 06:32:22

我看到您希望使用Python上传包含在CSV文件中的信息。您是否尝试过直接导入数据库?您可以按照link1中的步骤操作。

在此期间,我会尝试复制你的案例。您可能还想检查您的安装和配置是否正确。

验证您的Cloud SQL实例和连接2是否和您的Python installation3。

代码语言:javascript
复制
[1]https://cloud.google.com/sql/docs/mysql/import-export/importing#csv
[2]https://cloud.google.com/sql/docs/mysql/connect-compute-engine
[3]https://cloud.google.com/python/setup
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55664232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档