【背景】
通过OGG将mysql数据同步到oracle,一共四张表,共用一个replicat进程。某天突然发现replicat进程处理数据的速度变慢,延迟很长时间。
【解决办法】
首先检查是否因为目标端dirdat目录下文件增多,发现文件确实比以往多一些,然后想着能否多开几个replicat进程来并行处理。于是,针对每张表创建一个replicat进程,结果发现数据变化少的两张表很快处理完,另两张数据变化大的表依然处理缓慢。
后来,回想最近有没有针对表做什么操作,想起之前为了压缩存储空间,将目标端oracle中的表调整成了compress,于是重新改为nocompress,数据很快就处理完了。
【原因分析】
对于oracle压缩表,写入和修改数据的速度都会变慢。
完毕。