控制文件复制oracle数据库,standby ,dataguard实施的一部分
[@more@]
1、利用tar复制oracle安装软件。保证两边oracle版本一致。
2、主库操作
调整为归档模式
>startup mount
>alter database archivelog;
>archive log list;
创建RMAN备份
rman target / nocatalog
RMAN> run
{
allocate channel d1 type disk;
backup database format '/tape_backup/temp/backup%d%U.rman';
}
创建standby的控制文件
上一步成功做完之后
SQL>alter database create standby controlfile as '/oracle/final/syrunstandby.ctl';
3、复制库主机操作
创建如下目录
mkdir -p $ORACLE_BASE/admin/testdb/bdump/
mkdir -p $ORACLE_BASE/admin/testdb/udump/
mkdir -p $ORACLE_BASE/admin/testdb/cdump/
mkdir -p $ORACLE_BASE/admin/testdb/pfile/
mkdir -p $ORACLE_BASE/admin/testdb/create/
mkdir -p $ORACLE_BASE/oradata/testdb
mkdir -p $ORACLE_BASE/oradata/testdb/archive
本次$ORACLE_BASE=/oracle
生成密码文件
orapwd file=$ORACLE_HOME/dbs/orapwtestdb password=oracle entries=5
从主库中获取如下文件
参数文件:inittestdv.ora(考虑到每台机器的配置可能不同,内存参数不一致,该参数文件不一定非要从A机获取,另外从A机获取的参数文件需要调整control_file的位置)
控制文件:/oracle/final/testdbstandby.ctl
rman备份文件:/tape_backup/temp/backup*.rman
拷贝控制文件
拷贝控制文件到指定参数文件inittestdb.ora内control_files指定的位置
cp testdbstandby.ctl /oracle/final/testdbstandby.ctl001.ctl
cp testdbstandby.ctl /oracle/final/testdbstandby.ctl002.ctl
cp testdbstandby.ctl /oracle/final/testdbstandby.ctl003.ctl
利用rman复制数据库
sqlplus /nolog
SQL>connect / as sysdba
SQL>startup nomount pfile='/oracle/final/inittestdb.ora'
SQL>alter database mount standby database;
$rman target / nocatalog
RMAN>run
{
allocate channel d1 type disk;
restore database;
}
注意/tape_backup/temp备份文件目录要与a机路径一致。
激活备用数据库
SQL>alter database activate standby database;
SQL>shutdown;
SQL>connect sys/sys_password as sysdba;
SQL>startup;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/137423/viewspace-929550/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/137423/viewspace-929550/