数据库迁移的⼏种⽅式
数据迁移(Data migration)是指在存储类型、格式和计算机系统之间的数据转换。数据迁移当⼀个机构决定使⽤新的计算系统或与当前的系统不兼容的数据管理系统时是必须的。数据迁移通常有计划的执⾏来完成⼀个⾃动的迁移,从单调的任务中解放。当机构或个⼈改变计算机系统或升级到新的系统时需要它。
⼀、exp/imp逻辑备份与恢复:
⼆、Storage存储迁移:
将数据⽂件、控制⽂件、⽇志⽂件、spfile挂到新机器上,然后在新机器上启动数据库。
三、利⽤data guard迁移:
四、⽤rman做迁移:
我们常常需要对数据进⾏迁移,迁移到更性能配置更⾼级的主机OS上、迁移到远程的机房、迁移到不同的平台下,以下介绍ORACLE的⼏种数据库迁移⽅案:
⼀、exp/imp逻辑备份与恢复:
它是最常⽤最简单的⽅法,⼀般是基于应⽤的owner级做导出导⼊。
操作⽅法为:
在新库建⽴好owner和表空间,停⽼库的应⽤,在⽼库执⾏:
$ exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000,
导⼊dmp⽂件到新库,在新库执⾏如下命令:
$ imp user/pwd fromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y.
优缺点:优点是可以跨平台使⽤;缺点是停机时间长,停机时间为从exp到⽹络传输到新库,再加上imp的时间。
⼆、Storage存储迁移:
这种情况下,数据⽂件、控制⽂件、⽇志⽂件、spfile都在存储上(⼀般情况下是裸设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。
操作⽅法:将⽼库的pfile(因为⾥⾯有指向裸设备的spfile链接),a,a,密码⽂
件传到新库的对应位置。将存储切⾄新机,或者⽤⽂件拷贝或dd的⽅式复制数据⽂件,启动数据库。
优缺点:优点是该迁移⽅式⾮常简单,主要的⼯作是主机⼯程师的⼯作,dba只需配合即可,停机时间为停库、切存储、起库的时间;缺点是要求新⽼库都是同⼀平台,是相同的数据库版本。
三、利⽤data guard迁移:
⽤dg我们不仅可以⽤来做容灾,物理的dg我们还可以作为迁移的⽅式。
操作⽅法:可见或者
或者其他相关⽹⽂。注意switch over之后,可以将dg拆掉,去掉log_archive_dest_2、FAL_SERVER、FAL_CLIENT、
standby_file_management参数。另外还要注意如果⽤rman做dg,注意⼿⼯添加tempfile。
优缺点:优点是停机时间短,停机时间为switch over的时间;缺点:主机必须双份、存储必须双份。
四、⽤rman做迁移:
rman⽐较适合于跨⽂件系统的迁移,如同平台下的不同⽂件系统。
操作⽅法:
1.停第三⽅的归档备份,如legato或dp;
2.backup数据库;
:
DB2DB 是⽬前经过测试速度最快、最稳定实现多种数据库之间进⾏数据转换的⼯具。⽀持 SQL Server、MySQL、SQLite、Access 等多种数据库类型,通过该⼯具可以把原来的系统,⽅便快速地部署在不同的数据库甚⾄是云端数据库下。在⼤数据情况下(千万级别以上),处理速度⽐国内外同类软件要⾼出300%以上。并针对云端数据库中使⽤最多的 MySQL 数据库进⾏优化,使得从源数据库复制到新数据库时保留更多的数据表属性设置。这样⼤⼤减少程序员、DBA、实施⼈员将⼤型数据库进⾏迁移时的等待、测试和调试时间,减少公司为了测试某系统转换到新数据库系统时的⼈⼒成本。
————————————————
项⽬需要对oracle数据迁移到MySQL中,搜集了⼀些⽅法和⼯具,现在做⼀个汇总和总结,较好的有以下⼏种:
SQLyog是世界著名的Webyog公司出品的⼀款简洁⾼效、功能强⼤的图形化MySQL数据库管理⼯具。使⽤SQLyog,可以快速直观地让我们从世界上任何⾓落通过⽹络来维护远端的MySQL数据库。
大数据etl工具有哪些外国软件,官⽹说法⼀般的i7可达2万/秒。
国内深圳的软件,官⽹介绍说在⼤数据情况下(千万级别以上),处理速度⽐国内外同类软件要⾼出300%以上。
4、MySQL Migration Toolkit免费
MySQL Migration Toolkit是⼀款很不错的将其他数据源转换成mysql的⼯具。这个 Mysql官⽅提供的⼯具。
5、Navicat Premium
这个不多做介绍,都知道的。
6、kettle等ETL⼯具
很多ETL⼯具带有从⼀个数据库读取写⼊另⼀个数据库的功能。
7、⾃⼰编写
利⽤JAVA、R、python等编写程序进⾏数据转移。
限制迁移的速度中除了⼯具性能外,估计在⽹络速度⽅⾯也会有较⼤限制;按照每秒可以达到10M(万条数据左右)的⽹络传输速度,1T需要1024*1024/3600*10约30⼩时,实际估计还没有这么快。具体的⽅法⼯具使⽤⽹上有⽐较多的教程。————————————————
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论