Navicat定时在MySQL与MySQL数据库之间自动传输数据

时间:2022-05-18 20:52:04

Navicat定时在MySQL与MySQL数据库之间自动传输数据

来由:  需要将表数据从一个库同步到另一个库(数据分发),之前有尝试过使用Kettle去抽数,但是数据量稍微大一点的时候太慢了...  有可能是本机性能的原因,然后就选择用navicat自带的同步工具。(测试环境需要用navicat(因为端口不通),生产环境直接用sqoop抽取过去就可以啦)

主要有两个知识点:   Navicat数据传输 与 Navicat定时任务

>>>>>>>>>Navicat数据传输

将数据从一个数据传输到另一个数据库(MySQL to MySQL) ,eg: 将 10.11.22.33:3306/demo1 数据库中的 student 表 传输到 10.22.33.55:3306、demo2 数据库中

1.打开Navicat,点击菜单栏中的工具,选择数据传输

Navicat定时在MySQL与MySQL数据库之间自动传输数据

 2.选择需要同步的数据库信息,指定数据信息,然后再指定目标数据库信息

切记: 数据是从 源库中 传输到 目标库中 (A->>B)

Navicat定时在MySQL与MySQL数据库之间自动传输数据

3.定义传输时的高级设置信息 (这里使用的是默认设置,如下图【可根据自己的实际需求去定义勾选或取消以下选择项】)

Navicat定时在MySQL与MySQL数据库之间自动传输数据

4. 点击到信息日志页面,然后点击开始 则开始同步啦~  会看到日志信息输出

Navicat定时在MySQL与MySQL数据库之间自动传输数据

5. 日志输出如下:(传输成功)

Navicat定时在MySQL与MySQL数据库之间自动传输数据

>>>>>>>>>Navicat定时任务

将定义好的sql语句,数据传输信息等定时执行。

定义的步骤如下:

Navicat定时在MySQL与MySQL数据库之间自动传输数据

1. 我们这里将传输数据来做示范,先将上面的传输数据信息定义保存为具体文件

Navicat定时在MySQL与MySQL数据库之间自动传输数据

2保存后,会发现我们多了一个 test 文件 

Navicat定时在MySQL与MySQL数据库之间自动传输数据

3. 查看test文件的存储位置(这个不是必要的哈哈哈  但是了解一下也不赖吗)

先保存一个查询,命名为 2 ,然后查看这个查询的文件存储位置,路径如下: C:\Users\S0111\Documents\Navicat\MySQL\Servers\${CONNECT NAME}\${DBNAME}

Navicat定时在MySQL与MySQL数据库之间自动传输数据

4. MySQL目录下搜索test 文件 :  最后确定路径为 C:\Users\S0111\Documents\Navicat\MySQL\profiles

Navicat定时在MySQL与MySQL数据库之间自动传输数据

>>>>>>>>>开始定义定时任务:

1.选择工具栏中的 计划 -->  新建批处理作业

Navicat定时在MySQL与MySQL数据库之间自动传输数据

2. 选择需要定时执行的文件 ,也就是之前定义的 test

Navicat定时在MySQL与MySQL数据库之间自动传输数据

3.点击保存后,输入任务名称

Navicat定时在MySQL与MySQL数据库之间自动传输数据

4.开始定义任务相关信息 选定 test定时任务,然后点击 设置任务计划,看到如下信息(任务这一栏使用默认的配置即可)

Navicat定时在MySQL与MySQL数据库之间自动传输数据

5.配置计划 信息,点击下方的新建

Navicat定时在MySQL与MySQL数据库之间自动传输数据

6.定义任务执行时间,以及多长时间执行一次

Navicat定时在MySQL与MySQL数据库之间自动传输数据

接着点击 高级 ,配置计划的结束时间,不然就只会执行一次(这样才会周期执行,每天或者每周每月等等...)

Navicat定时在MySQL与MySQL数据库之间自动传输数据

7. 其他设置 (如果没有特殊要求 保持默认的设置即可)

Navicat定时在MySQL与MySQL数据库之间自动传输数据

8.保存任务信息,需要填写正在使用的这台电脑的开机密码,如果没有设置开机密码则不需要填写。

Navicat定时在MySQL与MySQL数据库之间自动传输数据

最后,我们再回到计划,就能看到我们刚刚设置定的定时任务信息了,每天的九点就会同步一次数据。

Navicat定时在MySQL与MySQL数据库之间自动传输数据