Oracle作为源端进行实时同步时,向Oracle备库实时传输数据时出现错误,怎么办?
问题描述
在使用Oracle作为源端进行实时同步时,同步链路在向Oracle备库实时传输数据时出现错误,错误内容如下:
原因分析
为了确保正确解析二进制日志,Oracle备库在实时同步时需要读取并解析这些日志,解析过程中必须使用与源端相同的字符集。
目前,源库为Oracle备库的同步支持以下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。
其他字符集暂不支持。
解决方案
- 建议将源端Oracle字符集修改为目前更为通用的AL32UTF8字符集。
- 源端使用Oracle主库进行同步。