养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

数据库迁移&数据库同步方案

时间:2024-10-02 03:23:33

企业级应用中常遇到sqlserver粑颇岔鲷、mysql、Oracle之间互相迁移的场景,或者sqlserv髫潋啜缅er在不同版本间做数据迁移。在同版本同数据库基础上我们可以做主从同步,但不同数据库或不同版本就遇到问题了。本篇便是为了帮助那些遇到此问题的童鞋

数据库迁移&数据库同步方案

工具/原料

linuxorwindows

DataX-src源码orDatax-bin工具包

方法/步骤

1、配置环境JDK(1.6以上,推荐1.6)Python(推荐Python2.6.X)ApacheMaven3.x注:也可以在windows上部署,只要有环境就可以了

数据库迁移&数据库同步方案

2、下载源码or工具包源码:壹执慵驾github.com/Arvin-Mark/DataX-src工具包:github.com/Arvin-Mark/datax-bin请自行选择下载方式

数据库迁移&数据库同步方案

3、启动一个mysql或其他数据库实例,并创建两个测试库。名字自行定义我这里是school和school_shanghai

数据库迁移&数据库同步方案

4、分别在两个库中建立相同表结构的表我这里分别建了两个t_student表

数据库迁移&数据库同步方案

5、往其中一个库中插入一些数据

数据库迁移&数据库同步方案

6、配置config.json,用于从一个库读数据写入到另外一个库{"job&quo隋茚粟胫t;:{"content&qu泠贾高框ot;:[{"reader":{"name":"mysqlreader","parameter":{ "username":"root", "password":"123456", "column":["*"], "connection":[ { "table":[ "t_student" ], "jdbcUrl":[ "jdbc:mysql://127.0.0.1:3306/school?useUnicode=true&characterEncoding=utf-8" ] } ] }},"writer":{ "name":"mysqlwriter", "parameter":{ "writeMode":"insert", "username":"root", "password":"123456", "column":["*"], "session":[ "setsessionsql_mode='ANSI'" ], "preSql":[ "deletefromt_student" ], "connection":[ { "jdbcUrl":"jdbc:mysql://127.0.0.1:3306/school_shanghai?useUnicode=true&characterEncoding=utf-8", "table":[ "t_student" ] } ] }}}],"setting":{"speed":{"channel":5}}}}

数据库迁移&数据库同步方案

7、进入到datax-bin\bin目录执行命令pythondatax.pystream2stream.json

数据库迁移&数据库同步方案

8、执行结果

数据库迁移&数据库同步方案

9、检查切换到另一个库中查看表的数据是否已经同步过来

数据库迁移&数据库同步方案

© 一点知识