这种大库是很难办的。常用的方法:
(1)花力气对原Oracle库进行改造,把表分为历史表和当前表。比如3个月前的数据放1个表或几十张表里,当前交易进行增删改查的作为一个表,给当前交易用;
(2)先对历史表进行数据迁移;
(3)投产窗口对当前表进行迁移,可能3T里面只有300G~800G左右,这样才能控制投产的是迁移窗口时长。
数据量大的数据库迁移非常考验技术团队能力。除了前面提到的分表分库分离历史文件和DTS传输的方法,也可以考虑(镜像、高可用+增量复制的方式)。最终的方案还是要结合数据库本身的能力和机制实现。
1、备份原始数据库
2、在新设备上恢复数据库
3、在新设备上增加副本或镜像(待迁移的设备)
4、完成数据同步(需要评估数据同步和切换时间)
5、切换
可以考虑采用全量+增量的方法进行数据同步,停机窗口前将增量延时控制在分钟级别。
达梦:自有工具HS。
Oceanbase: 自有工具OMS。
TiDB:外部工具Goldengate。