概述
分享下最近做的一个rman跨版本迁移的案例,主要是从生产环境迁移数据到测试环境,中间出了个小问题,整体问题不大。
环境
因为都装了Oracle软件了,所以这部分安装过程就不做介绍了。
一、source数据库准备
1.获取数据文件编号和路径
SQL> select file_id,file_name from dba_data_files order by file_id;
2.获取临时文件编号和路径
SQL> select file#, name from v$tempfile;
3.获取在线日志文件组和路径
SQL> select group#,member from v$logfile;
4.获取数据库字符编码
SQL> select * from nls_database_parameters ;
其中:
- 1. Language: 指定服务器消息的语言, 影响提示信息是中文还是英文
- 2. Territory: 指定服务器的日期和数字格式,
- 3. Charset: 指定字符集。
二、source数据库备份
在业务空闲时间段,先切换几次归档日志,然后开始rman备份。
1. rman备份脚本
F:manbackupfslda_rman_backup.bat###############################################################rman target sys/xxx@orcl msglog=F:manbackupman.log cmdfile=F:manbackupfull_backup.txtecho "rman备份完成!"pause################################################################F:manbackupfull_backup.txt##############################################################run{CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS;allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;sql 'alter system archive log current';backup as compressed backupset database format 'F:/rmanbackup/fullbak_%d_%I_%s_%p_%T.bkp' include current controlfile;backup current controlfile format 'F:/rmanbackup/spfile_controlfile_%d_%I_%s_%p_%T.bkp';backup as compressed backupset archivelog all format 'F:/rmanbackup/archivelog_%d_%I_%s_%p_%T.bkp' delete input;release channel c1;release channel c2;release channel c3;}delete noprompt obsolete;crosscheck backup;delete noprompt expired backup;################################################################
2.创建参数文件
create pfile='F:manbackuppfile.ora' from spfile;
这步实际上也可以省略的,自己编辑下文件就可以了。
篇幅有限,这块内容就先介绍源数据库方面的事前检查和备份工作了,后面开始介绍在目的端的恢复工作,感兴趣的朋友可以关注下~
今天是祖国的70周年,在这里祝福祖国,繁荣富强,国泰民安!也祝大家国庆节快乐~