python利用pymysql迁移MYSQL数据库数据

1.前言
pymysql是一个第三方的模块,使用前需要安装

2.安装
pip install pymysql

3.基本使用

1.导入模块
from pymysql import connect

2.Connection 对象 目的:用于建立代码与数据库的连接
创建连接对象 conn=connect(参数列表)

参数host:连接的mysql主机,如果本机是'127.0.0.1'#如果不能用可以试下 host=localhost
参数port:连接的mysql主机的端口,默认是3306
参数database:数据库的名称
参数user:连接的用户名
参数password:连接的密码
参数charset:通信采用的编码方式,推荐使用utf8

3.关闭连接 conn.close()

4.提交数据 conn.commit()

5.撤销数据 conn.rollback()

6.通过连接获取游标 cur = conn.cursor()返回Cursor对象,用于执行sql语句并获得结果

7.Cursor游标对象 目的: 执行sql语句

8.获取Cursor对象 cur = conn.cursor()

9.使用游标执行SQL语句 cur.execute(operation , [parameters])

10.执行SQL语句,返回受影响的行数,主要用于执行insert、update、delete语句

11.获取结果集中的一条 cur.fetchone() 返回一个元组

12.获取结果集中的一条 cur.fetchmany(2) 返回一个元组

13.获取结果集中的所有 cur.fetchall() 执行查询时,获取结果集的所有行,一行构成一个元组,再将这些元组装入一个元组返回

14.关闭游标 cur.close()

5.代码实现结果
前提,这两个表结构相同

1.进入命令行,运行脚本

D:\BaiduNetdiskDownload
λ python D:\Users\ZHOUGUIHUA\PycharmProjects\transfer_dbdata\main.py

2.提示输入源数据库的一些信息

请依次输入下面源数据库配置
源数据库ip地址,用户名,数据库名,需要同步表名称,端口号[使用英文状态下的逗号分隔],回车键确定:

输入完成按下回车键

请依次输入下面源数据库配置
源数据库ip地址,用户名,数据库名,需要同步表名称,端口号[使用英文状态下的逗号分隔],回车键确定:
10.10.1.66,root,house,project_zj,3306

提示输入密码

请依次输入下面源数据库配置 源数据库ip地址,用户名,数据库名,需要同步表名称,端口号[使用英文状态下的逗号分隔],回车键确定: 10.10.1.66,root,house,project_zj,3306 请输入源数据库密码,回车键确定:  请依此输入下面目标数
据库配置 目标数据库ip地址,用户名,数据库名,同步到表名称,端口号[使用英文状态下的逗号分隔],回车键确定:

接着输入目标数据库配置和密码同上。。。

执行效果:

D:\BaiduNetdiskDownload
λ python D:\Users\ZHOUGUIHUA\PycharmProjects\transfer_dbdata\main.py
请依次输入下面源数据库配置
源数据库ip地址,用户名,数据库名,需要同步表名称,端口号[使用英文状态下的逗号分隔],回车键确定:
10.10.1.66,root,house,project_zj,3306
请输入源数据库密码,回车键确定:

请依此输入下面目标数据库配置
目标数据库ip地址,用户名,数据库名,同步到表名称,端口号[使用英文状态下的逗号分隔],回车键确定:
10.10.1.63,root,house,project,3306                                                                                                                                                                             数请输入目标数据库密码,回车键确定:

进度15 %;源服务器:10.10.1.66;源数据库:house;目标服务器:10.10.1.63;目标数据库:house;已处理:998;错误:0;已传输:998;时间:17.70s

执行结果:

D:\BaiduNetdiskDownload
λ python D:\Users\ZHOUGUIHUA\PycharmProjects\transfer_dbdata\main.py
请依次输入下面源数据库配置
源数据库ip地址,用户名,数据库名,需要同步表名称,端口号[使用英文状态下的逗号分隔],回车键确定:
10.10.1.66,root,house,project_zj,3306
请输入源数据库密码,回车键确定:

请依此输入下面目标数据库配置
目标数据库ip地址,用户名,数据库名,同步到表名称,端口号[使用英文状态下的逗号分隔],回车键确定:
10.10.1.63,root,house,project,3306
请输入目标数据库密码,回车键确定:
进度100%;源服务器:10.10.1.66;源数据库:house;目标服务器:10.10.1.63;目标数据库:house;已处理:6728;错误:0;已传输:6728;时间:116.71s

插入6728条数据耗时2分钟,提高效率的话,可以直接使用命令的方式

本文章全系对技术的兴趣爱好,欢迎大家学习交流。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值