由于工程需要经常将客户的现场数据导出到公司的开发环境中,随着客户现场数据量的不断增大,原先使用的导出导入的方法需要花费越来越长的时间,所以测试一下RMAN的效率,验证是否能用恢复RMAN备份的方法来代替以往的EXP/IMP方法。原本想过用传输表空间的方法,但是由于我们通常在创建数据库的时候就给业务所用的表空间创建了很大的数据文件,这样在传输表空间的copy数据文件的步骤上会花费很长的时间,所以还是决定测试一下RMAN了。
测试目的:
实现对于JHJKREC用户的数据转移。在10.101.48.71机器上测试。
测试环境:
P42.8G单CPU,1G内存,80G单硬盘,Windows 2000 Server,Oracle817跟JHJK用户相关的数据文件的总共大小为:21.4G 其中JHJKREC用户的对象总共大小为:2.1G。
1、RMAN作full备份,用时20分钟,生成文件大小5.47GEXP作JHJKREC用户数据导出,用时2分20秒,生成文件大小546M。
2、RMAN作数据恢复,用时23分钟(包括restore数据文件,recover数据库)IMP作JHJKREC用户数据导入,用时55分钟。
3、RMAN备份在非归档模式下需要关闭数据库然后启动数据库到mount状态EXP在非归档模式下不需要关闭数据库,但是数据表本身是不一致的。
结论:
利用RMAN备份的时间明显长于EXP的时间,备份出的文件也远大于EXP出的文件但是恢复的时间却要少于IMP所需要的时间。利用RMAN恢复,还需要备份控制文件,而且由于是非归档模式,还需要检查当前能够恢复到的最大SCN,然后在SQLPLUS中ecover database until change scn,然后再alter database open resetlogs,整个操作比EXP/IMP繁琐,对于现场业务人员来说可能较为困难,所以使用RMAN还是使用导出导入作数据转移,还是见仁见智吧。
以下为测试中RMAN和导出导入使用的命令,基本上没有作任何优化。
RMAN的备份脚本:
@@connect.rcv # Backup up database at full level # shutdown immediate; startup mount; run{allocate channel d1 type disk; set limit channel d1 kbytes 2097150; backup full database format ’E:rman_bakdbfull_%d_%s_%p_%t’ tag=’dbfull’; release channel d1; } alter database open; exit; |
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
说说数据库备份的那些事
数据备份对于DBA来说是一项最基本的工作,但又是十分关键的,每个SQL Server上面执行的最重要的任务之一都是运行备份和恢复。
-
Oracle Cloud推出数据库备份与存储云服务
甲骨文公司近日宣布推出Oracle数据库备份服务(Oracle Database Backup Service)和Oracle存储云服务(Oracle Storage Cloud Service)。
-
SQL Server DBA的六大日常职责
SQL Server有哪些关键任务需要DBA放到日常list中的呢?本文就将介绍六个SQL Server DBA的日常职责。
-
将SQL Server备份拆分成多个文件
DBA可以试着将SQL Server备份拆分成多个文件以减少备份时间,并使用多个驱动器来存储备份文件。