遇到非法字符
这个错误常见于导出DDL文件在不同的操作系统中复制或者移动。导出DDL前先要弄清目标操作系统使用的字符集,然后在使用export_oracle导出时指定相同的字符集。
遇到非法数据类型
目前工具集支持绝大多数Oracle原始数据类型,不支持用户自定义数据类型。可以在导出的DDL文件中搜索[unresolved]字样,可以看见导出时没有解析成功的类型。
sync_table同步数据时可能出现错误,如果是某表的问题,程序不会中断,继续同步其它表。
使用重定向记录下没有成功同步的表名:
./sync_table -f conn.config -p ux123456 -r ora123456 -l table_owner1 > not_synchronized_table.txt
not_synchronized_table.txt中记录了表名,同时简单记录了发生错误的原因。
如果是表结构同步失败,使用export_oracle单独导出这张表定义,与当前UXDB中DDL定义进行比较:
./export_oracle -s 192.168.0.3:1521/fdw_test -u ora_user1 -p ora123456 -t table_owner1.table_name
如果是数据同步失败,尝试使用sync_table 单独同步这张表:
./sync_table -f conn.config -p ux123456 -r ora123456 -t table_owner1.test_table
同步单张表:
./sync_table -f conn.config -p ux123456 -r ora123456 -t table_owner1.test_table
同步table_owner1.test_table以后(包含,升序)的表:
./sync_table -f conn.config -p ux123456 -r ora123456 -b table_owner1.test_table
不同步某些表:
./sync_table -f conn.config -p ux123456 -r ora123456 -x blacklist.txt
其中blacklist.txt中表名字以schema_name.table_name的形式给出。
只同步某些表:
./sync_table -f conn.config -p ux123456 -r ora123456 -w whitelist.txt
其中whitelist.txt中表名字以schema_name.table_name的形式给出。