- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle向Mysql迁移方案
Oracle向Mysql迁移方案
可自动迁移部分;
表
这个部分的移植是最容易用工具实现的部分,因为很多MySQL的图形管理工具都自带这样的移植工具,比如SQLYog,MySQL?Administrator等。但是,这些工具的移植能力各有不同,对字段类型转换﹑字符集等问题都有自己的处理方式,使用时请注意。?
?笔者使用“SQLYog?Migration?Toolkit”工具按提示步骤移植后,表的主要结构和数据将成功移植,主要包括表的字段类型(经过映射转换,比如number会转换为int,Varchar2会转换为Varchar,date转换为datetime等,请小心处理日期字段的默认值等),表的主键,表的索引 Oracle的位图索引会被转成BTree索引,另外表和字段的注释会丢失 等信息。
注意的是,Oracle的自增字段的处理。??大家知道,Oracle通常使用序列sequence配合触发器实现自增字段,但是MySQL和SQL?Server等一样,不提供序列,而直接提供字段自增属性。所以,请把Oracle里面的自增字段实现直接改为MySQL的字段属性,而且,这个字段必须是主键(key)并且不能有默认值。??还有一个问题,如果您的应用要直接使用Oracle的某个序列,那么您只能在MySQL里面模拟实现一个,具体方法就是利用MySQL的自增字段实现的。
不可自动迁移部分;
视图、过程、函数、触发器
以上对象都是写sql语句进行编程的,两个数据库的有些语法是不一新的,所以这些都要开发人员进行人工修改在mysql中重新创建;
语法区别如下:
视图: mysql中视图不能有子查询,可以把字查询再建一个视图;
触发器: mysql中触发器中before或after的触发事件 insert、update、delete 只能有一个,oracle可以有多个;
字符串拼接: oracle直接用’||’,mysql只能用函数’concat’; 判断是否为空:oracle用nvl;mysql用ifnull;
变量定义:oracle可以只写一次DECLARE,Mysql需要在每句前面加DECLARE’: ’,mysql用’ ’;
Oracle与Mysql几个主要根本区别
oracle中的包在mysql中不存在,要全部改成普通的存储过程;
用户及权限在oracle中是包含在各自的数据库里,而在mysql是数据库的用户及权限在一个单独的数据库中(information_schema);
Oracle是没有敏感字段,是mysql有,如果有要修改成长非敏感名字;
系统架构区别:oracle有主备库,和集群架构(RAC)且RAC是基共享存储的,
Mysql有主从复制,和集群架构 ndbcluster ,但ndbcluster是非共享存储的。
建立迁移测试环境;
迁移实施;
文档评论(0)