4.3.?Mysql_migration_inc工具集使用

4.3.1. 初始化foreign server
4.3.2. 迁移表结构和主键
4.3.3. 同步数据
4.3.4. 新增表DDL同步
4.3.5. 对比迁移记录数目

工具集使用前,如果没有UXDB数据库,需要初始化一个UXDB数据库,然后启动这个数据库,具体方法可以参见《优炫数据库安装手册 V2.1》。工具集使用需要一些参数,为了说明的方便,假设连接信息如下:

这里只先介绍工具常用的参数和用法。更多使用方法可以参见帮助说明。例如:运行sync_def -?可以看见一些使用例子和参数说明。

4.3.1.?初始化foreign server

  1. 首先在mysql_migration_inc目录下可以看见一个配置文件conn.config,它有7个配置项,修改这7个配置项如下:

    mysql_host=192.168.0.163
    mysql_port=3306
    mysql_log_user=root
    uxdb_server_host=192.168.0.164
    uxdb_server_port=5432
    uxdb_server_dbname=uxdb
    uxdb_log_user=uxdb
  2. 运行init_foreign_server_inc:

    ./init_foreign_server_inc -f conn.config -p 123456 -r 123456

    init_foreign_server_inc的参数包含UXDB连接信息和MySQL连接密码,此时并没有连接MySQL,只是将MySQL连接信息写人UXDB的foreign server。

4.3.2.?迁移表结构和主键

./sync_def_inc -f conn.config -p 123456 -r 123456 -l mysqldb

在UXDB中生成schema: mysqldb_ux_migration_sync。

在UXDB中建立MySQL相同名和表结构的表,比如MySQL中有表test_table(id int,name mediumtext,primary key(id)),那么在UXDB中生成相应的本地表test_table(id int,name text,primary key(id))。

同时生成一个外部表test_table_uxmigrationftbl(id int,name text)。

4.3.3.?同步数据

./sync_table_inc -f conn.config -p ux123456 -r mysql123456 -l mysqldb > not_sync.txt

把MySQL数据库mysqldb中的表数据同步到UXDB中已经建立好的本地表,not_sync.txt记录下了没有成功的表名称。

./sync_table_inc -f conn.config -p ux123456 -r mysql123456 -t mysqldb.test_table

同步单表数据。

4.3.4.?新增表DDL同步

./add_table_inc -f conn.config -p ux123456 -r mysql123456 -l table_owner1

检查schema为table_owner1的所有新增表,如果有新增那么就同步过来。

./add_table_inc -f conn.config -p ux123456 -r ora123456 -t table_owner1.test_table

检查是否有新增表table_owner1.test_table,如果有就同步过来。

4.3.5.?对比迁移记录数目

./analyse_result_inc -f conn.config -p ux123456 -r mysql123456 -l mysqldb > not_correpond.txt

对比两边数据库对应表记录数目,把不一致的记录到文件not_correspond.txt。

./analyse_result_inc -f conn.config -p ux123456 -r mysql123456 -t mysqldb.test_table

也可以对比单表记录数目。

XML 地图 | Sitemap 地图