将大型mysql select语句加载到python中

时间:2018-11-08 11:02:42

标签: mysql python-3.x

我有两个名为数据库A和数据库B的mysql数据库。我想使用python将所有数据从数据库A中的表复制到数据库B中的表。数据表包含大约5M行。我已经编写了以下代码:

connection = make_connection(source_db)
c = connection.cursor()
batch_size = 100000
while True:
    batch = c.fetchmany(batch_size)
    print('Extracted a batch.')
    if not batch:
        break
    insert_data(batch)

connection.close()

我运行了这段代码,fetchmany()花费几分钟的时间来提取单个批次。我尝试使用fetchall()而不使用while True语句,但这会花费更长的时间。

问题:我如何成功加快此过程/将大型选择语句加载到python中的最佳方法是什么?

0 个答案:

没有答案