时间:2021-07-01 10:21:17 帮助过:26人阅读
从生产数据库PROD克隆数据库到测试数据库TEST,PROD/TEST数据库已存在,PROD数据文件在磁带中;TEST环境和PROD环境的数据库文件地
目标:从生产数据库PROD克隆数据库到测试数据库TEST
环境:PROD/TEST数据库已存在,PROD数据文件在磁带中;
一、编辑TEST数据库pfile文件;
删除TEST数据库所有数据文件
su - oratest
cd /t02/oratest/testdata
rm *
编辑TEST数据库启动参数文件
cd $Oracle_HOME/dbs
vi initTEST.ora
将db_name=TEST修改为db_name=PROD
新增一下设置
log_archive_format=PROD_%T%TS%S.arc(归档文件,缺省路径为$ORACLE/HOME/dbs/arch)
二、创建数据库文件link
TEST环境和PROD环境的数据库文件地点不一致,使用RMAN恢复数据库时需要繁琐的把每个文件都制定到新地点。简化操作步骤,,创建一个目录链接,让RMAN认为恢复到原来的PORD目录;
su - oratest
mkdir /u01/oraprod
cd /u01/oraprod
ln -s /t02/oratest/testdata prodata (testdata链接到prodata)
ls -al 查看链接
三、恢复controlfile
将PROC数据库controlfile文件拷至/tmp目录
cd /tmp
ftp -i 172.16.*.*
cd /u01/oraprod/prodata
get cntrl01.dbf
启动数据库到nomount状态
export ORACLE_SID=TEST
sqlplus /nolog
conn / as sysdba
startup nomount
复制控制文件(RMAN DB恢复工具)
rman target / nocatalog
RMAN>run{
allocate channel t1 type disk;
replicate controlfile from '/tmp/cntrl01.dbf';
release channel t1;
}
此时会在pfile指引的目录和名字下创建三个controlfile文件;
四、启动数据库到mount状态
su - oratest
export ORACLE_SID=TEST
sqlplus /nolog
conn / as sysdba
alter database mount