您好,登錄后才能下訂單哦!
全備份:
#!/bin/bash
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=ORCL
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
backtime=`date +"%y%m%d%H%M%S"`
$ORACLE_HOME/bin/rman target / log=/home/oracle/full_backup_$backtime.log <<EOF
run{
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
allocate channel c4 device type disk;
sql 'alter system archive log current';
backup as compressed backupset full database format '/u01/app/oracle/back/full_%d_%T_%U';
sql 'alter system archive log current';
backup archivelog all format '/u01/app/oracle/back/arch_%d_%T_%s_%p.bak' delete input ;
backup current controlfile format '/u01/app/oracle/back/ctl_%d_%T_%s_%p.bak';
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}
EOF
備份歸檔日志
RMAN > run {
backup archivelog all format '/u01/app/oracle/back/arch_%d_%T_%s_%p.bak' delete input ;
backup current controlfile format '/u01/app/oracle/back/ctl_%d_%T_%s_%p.bak';
}
備份參數(shù)文件
SQL> create pfile from spfile;
恢復(fù)至其他環(huán)境
1.修改參數(shù)文件路徑
vi $ORACLE_HOME/dbs/initORCL.ora
2.啟動數(shù)據(jù)庫至nomount
SQL> startup pfile='/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initORCL.ora';
3.恢復(fù)控制文件
$ cd /u01/app/oracle/backup
RMAN> restore controlfile from '/u01/app/oracle/backup/ctl_ORCL_20200311_19_1.bak';
RMAN> alter database mount;
3.恢復(fù)數(shù)據(jù)庫
RMAN> run {
catalog start with '/u01/app/oracle/backup';
set newname for database to '/u01/app/oracle/oradata/DEMO/%U';
restore database;
switch datafile all;
switch tempfile all;
recover database;
}
Do you really want to catalog the above files (enter YES or NO)? yes
5. 修改日志文件
SQL> alter database rename file '/u01/app/oracle/oradata/ORCL/redo01.log' to '/u01/app/oracle/oradata/DEMO/redo01.log';
SQL> alter database rename file '/u01/app/oracle/oradata/ORCL/redo02.log' to '/u01/app/oracle/oradata/DEMO/redo02.log';
SQL> alter database rename file '/u01/app/oracle/oradata/ORCL/redo03.log' to '/u01/app/oracle/oradata/DEMO/redo03.log';
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 1;
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 2;
SQL> ALTER DATABASE CLEAR LOGFILE GROUP 3;
6. 打開數(shù)據(jù)庫
SQL> alter database open resetlogs;
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。