如何把oracle中表的数据导入mysql

哎呀,我之前做过数据库迁移,非常费力。
记得2 01 9 年,我们公司有一个大项目,要把数据从Oracle数据库迁移到MySQL。
中间的陷阱就像是走钢丝,一不小心就有可能摔倒。

那天,我打开MySQL Migration Toolkit并单击“下一步”。
一切都很顺利。
当我进入“SourceDatabase”时,我选择了一个OracleDatabaseServer,然后系统说:“兄弟,你必须加载ojdbc1 4 .jar,否则我找不到你的Oracle数据库。
” 我赶紧在网上下载了一个,再次点击“下一步”,界面就变了。

然后,我在那里填写了Oracle数据库的连接信息。
填写完毕后,我单击“下一步”,然后转到“TargetDatabase”。
默认是 MySQLServer。
我还填写了MySQL的连接信息,然后单击“下一步”。

下一步是测试数据库连接。
我测试了它并且它有效。
然后我去了“SourceSchemataSelection”。
我单击要迁移的架构,然后单击“下一步”。

然后是“ObjectTypeSelection”,我点击“Detailedselection”,将不需要的表移到右侧,其余的都迁移了。
这还涉及到参数设置,比如字符集。
我根据数据库情况设置UTF8 或者GBK,然后点击“下一步”。

说到“手动编辑”,我必须调整脚本。
由于Oracle和MySQL的语法不同,我必须更改数据类型和默认值。
我选择“ShowAllObjects”,然后在“MigeratedObjects”中找到要更改的表,单击“高级”编辑脚本,更改后保存,然后单击“下一步”。

经过这一步,我终于到了最后一步。
没有错误消息。
数据成功导入MySQL,我松了口气。
然而,有一次在导入数据,尤其是CLOB数据时,出现了“Packetslargerthanmax_allowed_pa​​cketarenotallowed”的异常。
这是因为MySQL的max_allowed_pa​​cket默认为1 M,很难导入大数据包。

我查了一下,发现需要更改这个参数。
我找到mysql文件夹下的my.ini文件,在[mysqld]中添加一行“max_allowed_pa​​cket=1 6 7 7 7 2 1 6 ”,然后重启MySQL,就OK了。
不过,这个值也可以根据实际需要进行调整。
那次迁移确实让我对数据库有了更深入的了解。

Tapdata Cloud 场景通关系列: Oracle → MySQL 异构实时同步

上周我尝试将 TapdataCloud Oracle 与 MySQL 同步。
我是2 02 3 年9 月1 5 日在上海公司试用的。
测试环境,使用Oracle 1 9 c、MySQL 8 .0。

建立连接很容易。
只需填写正确的主机名、端口、用户名和密码即可。
我填写的是1 9 2 .1 6 8 .1 .1 00,1 5 2 1 是Oracle端口,3 3 06 是MySQL端口。

同步功能的配置是一个关键点。
我选了三张桌子。
首先运行完全同步,然后选择启用 CDC 进行增量同步。
数据验证在高级设置中打开。

查看跑步时的跟踪情况。
运行完整大小大约需要两分钟,并且增量会立即同步。
该信息是正确的。
CPU占用率稍高,源数据库Oracle运行7 0%。
想点别的事吧。
它们支持从Oracle到MySQL的场景,但不引用性能压力测试数据。
不确定这部分。
忘了它。
由你决定。