admin 管理员组文章数量: 1087135
2024年4月28日发(作者:android:layout margintop)
数据库迁移的几种方式:
一、exp/imp:
这也算是最常用最简单的方法了,一般是基于应用的owner级做导出导入。
操作方法为:在新库建立好owner和表空间,停老库的应用,在老库做exp user/pwd
owner=XXX file=exp_ log=exp_ buffer=6000000,传dmp文件到新
库,在新库做imp user/pwd fromuser=XXX touser=XXX file=exp_
log=imp_ ignore=y.
优缺点:优点是可以跨平台使用;缺点是停机时间长,停机时间为从exp到网络传输
到新库,再加上imp的时间。
二、存储迁移:
这种情况下,数据文件、控制文件、日志文件、spfile都在存储上(一般情况下是裸
设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。
操作方法:将老库的pfile(因为里面有指向裸设备的spfile链接),,
,密码文件传到新库的对应位置。将存储切至新机,或者用文件拷贝或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
◆数据库:
run {
allocate channel t1 type disk;
backup full format '$DIR_BAK/UNDOTBS1_2_%d_%s_%' datafile 2;
……
release channel t1;
}
◆3.备份控制文件alter database backup controlfile to '/tmp/';并到新数
据库用rman恢复:restore controlfile from '/arch/';
◆e备份文件:
run {
allocate channel t1 type disk;
restore datafile 2;
releasechannel t1;
}
◆5.传归档日志,并且对归档进行做recover:recover database until sequence = 归
档的序号 thread = 1;
◆6.对数据库open resetlogs:RMAN>sql 'alter database open resetlogs';
◆ tablespace temp add tempfile 'XXXXXX' size XXM reuse;
优缺点:优点是可以跨文件系统,停机时间少。缺点是要时刻关注这归档日志,做
recover的时候一个都不能少!
版权声明:本文标题:数据库迁移的几种常用方式及优缺点比较 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1714260419a672253.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论