我有一个将MySQL数据库迁移到Oracle的任务(我的要求)我尝试使用下面链接中定义的SQL开发人员进行迁移。
https://www.packtpub.com/books/content/migrating-mysql-table-using-oracle-sql-developer-15
由于数据库非常庞大,约束不能从MySQL正确复制到Oracle,我需要明确定义/更改/添加约束,这很费时间(SQL开发人员将数据从mysql迁移到Oracle的300rec / min)&整个过程,视图,函数都需要重新编写。
先谢谢。
答案 0 :(得分:1)
没有具体的答案,但根据我的移民经验,有一些想法。
我发现通常没有一种工具可以很好地完成整个迁移工作,而且整个工作我的意思是:
那是从Oracle到Oracle !!
上一个项目我们尝试了Oracle Golden Gate,发现存在问题。
我们总是以混合方式结束,例如:
手动提取所有DDL并预先创建对象 - 在提取DDL时混淆了它们的标准工具存在缺陷,例如:我们发现10g expdp没能很好地处理一些古怪的PLSQL,所以我们自己解决这个问题。
有些表适用于SQL Loader,其他表适用于GG,其他(很少见)带有自定义提取和加载过程。我们有超过3,500个表,并确定了大约100个表作为SQLLoader而不是GG做得更好。当我说得更好时,我的意思是数据处理和迁移速度。我们创建了不同的处理组,使用不同的方法处理每个组。
一旦我们有一个有效的整体混合方案,我们就会调整,主要是将该任务拆分为并行进程,包括导出和导入方。
我所有的迁移都是大项目,我们已经从一个Oracle系统/服务器转移到另一个系统/服务器,总是目标是更新版本的操作系统和Oracle。
所以,我认为非Oracle和Oracle之间的迁移将会遇到更多的挑战,并且可能并不像暗示单击SQL * Developer中的几个按钮那样微不足道。
答案 1 :(得分:0)
最近,我已成功将 MySQL数据库迁移到Oracle数据库。以下是详细步骤:
操作系统:amazon aws上的桌面Ubuntu本地和桌面Ubuntu
请注意:这里我使用aws桌面ubuntu服务器因为我的mysql 数据库非常大。在我的情况下,有800个表,200个视图, 程序,触发器和功能。数据库的总大小差不多 20GB。如果是小型数据库,我建议使用本地ubuntu服务器。
使用的工具: SQL Developer,VNCServer,远程桌面客户端,JAVA 8,第三方MySql JDBC驱动程序
<强> 1。设置ec2 ubuntu桌面服务器: https://www.youtube.com/watch?v=ljvgwmJCUjw
<强> 2。在#1上安装SQL Developer
从此链接下载SQL Developer包: http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html
接受许可协议并下载ubuntu的“其他平台”。
安装SQL开发人员包,如下所示。
sudo apt-get install sqldeveloper-package debhelper openjdk-7-jdk
openjdk-7-jre icedtea-7-plugin
make-sqldeveloper-package sqldeveloper-4.1.3.20.78-no-jre.zip
这将生成一个debian包,可用于安装SQL开发人员。
sudo dpkg -i sqldeveloper_4.1.3.20.78 + 0.2.4-1_all.deb
第3。在使用VNCServer在新创建的ec2实例上完成SQL开发人员安装之后,您需要做的就是使用ubuntu本地计算机默认使用远程桌面客户端连接到该ec2实例。
的SQLDeveloper
请注意:按照提供的迁移步骤进行操作 oracle他们会要求目标数据库连接,即oracle 数据库连接。这不是MySQL的数据库 数据库将被迁移。相反,这个数据库连接会 用于迁移过程。 您的数据库连接用户 必须有用户和数据库创建权限。一旦你的连接 拥有用户创建权限,然后迁移过程自动创建 Oracle数据库中相应的数据库用户[如果MySQL中有mysql_test_db 数据库,同样的mysql_test_db也将在Oracle db中创建]。
答案 2 :(得分:0)
您可以在Oracle网站上找到SQL developer documentation的预期内容。 所有Microsoft Access users,MySQL users,Microsoft SQL Server and Sybase Adaptive Server users都有可用的迁移信息。
您还可以以PDF格式(最适合离线观看和打印),ePub(最适合大多数移动设备)和Mobi(适用于亚马逊Kindle设备)下载教程。
答案 3 :(得分:0)
我最近使用了sqline的工具http://www.sqlines.com/cmd,将MySQL的转储以.sql脚本的形式转换为(几乎)Oracle兼容的sql脚本。
sqlines31113\sqlines.exe -s=mysql -t=oracle "-in=$infile"
我只需要(半手动)修复输出中的某些内容,然后就可以在oracle数据库上运行它了。