【问题标题】:How to migrate from Oracle 10g databse to MySql 8 database如何从 Oracle 10g 数据库迁移到 MySql 8 数据库
【发布时间】:2021-09-18 16:55:31
【问题描述】:

我们目前使用 Oracle 10G 数据库 为我们的应用程序提供后端支持。我们需要将整个 Oracle 数据库架构迁移到 MySQL 数据库,包括所有现有的表、视图、过程、触发器和序列等。

谁能在不妨碍任何架构定义、键和约束等的情况下帮助我指导迁移步骤?

我也开始知道 MySQL 不支持'sequences'。那么如何转换Oracle数据库中存在的序列呢?

请不要只提及任何工具名称,因为我在网上找到的工具很少,但这些都是非常冗长和繁琐的过程。请逐步提及,以便于理解。

我之前用过Sql Developer IDE,但是它支持反向迁移,即从MySql到Oracle,不是我需要的那种。因此,我无法使用它。

【问题讨论】:

  • 强烈建议您考虑使用 MariaDB(MySQL 创始人的 MySQL 分支),而不是仅仅从一个 oracle 产品转移到另一个。 MariaDB 的最后几个版本都支持序列,但大多数时候没有它们也可以正常工作。
  • 这不能回答我的问题。迁移是一项业务需求,我们不能中断它。
  • 我会建议:学习 mysql 至少和你对 oracle 的了解一样多,然后手动转换你的模式和查询。就业务需求而言,MariaDB 可以说是 MySQL 的一种风格
  • 是的,这些是 cmets,而不是答案,这就是为什么它们是 cmets,而不是答案 :)
  • 谢谢你。稍后我将与 MariaDB 联系。但我需要先迁移这个。手动转换似乎是不可能的,因为 Oracle 数据库很大,包含大量的表、视图等。

标签: mysql database oracle database-migration


【解决方案1】:

该案例有一个 Oracle Doc ID 1477151.1

尽管您要求不要提及任何工具名称,但在该文档中,Oracle 建议使用 MySQL Migration Wizard 并提供一些用于手动迁移的脚本示例,以防自动化不起作用。

看看那些。我希望这会有所帮助

UPD:同样,我知道您要求不要提及任何工具,但这是该文档的另一个摘录,甚至 Oracle 都明确表示您必须使用第三方工具

存储过程、函数、包、触发器、视图、序列的迁移必须使用第三方工具执行,并且需要手动操作。本文档重点介绍了执行数据迁移的方法。

有许多第三方工具,其中一些是开源的。例如:

http://www.sqlines.com/oracle-to-mysql

http://kettle.pentaho.com/

http://www.convert-in.com/ora2sql.htm

http://www.ispirer.com/products/oracle-to-mysql-migration

【讨论】:

  • 感谢您的回答。明白了,需要第三方工具进行迁移。将检查您提供的链接。谢谢。
  • 还有一点需要说明的是,我们目前使用的数据库版本是开源的版本,不是任何许可版本。
  • @Jerry,你是说 10G XE 吗?
  • @Jerry,是的,这让您无法访问我发送给您的文档。我希望你确实管理它以获得你需要的信息。顺便说一句,我不确定您是否可以将其称为“开源”。是的,它是免费的,但你无法获得它的源代码。与 PostgreSQL 或 SQLite 一样 - 它们的源代码是开放的,每个人都可以访问它(并构建他/她自己的数据库!)
猜你喜欢
  • 1970-01-01
  • 2016-08-22
  • 1970-01-01
  • 2013-10-02
  • 2014-12-09
  • 2017-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多