異地rman恢復(fù)數(shù)據(jù)庫(kù)

Source db端:

繁峙ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

ORACLE_SID=ygdg

數(shù)據(jù)文件位置:/u01/app/oracle/oradata/ygdg

Target db端:

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

ORACLE_SID=ygdg

數(shù)據(jù)文件位置:/u01/app/oracle/oradata/ygdg

【1.原庫(kù)rman備份】

[oracle@oraclelinux rman]$ cat rman_for_dg.sh

export ORACLE_SID=ygdg

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

rman target=/ log='/u01/ygtest/fullbackup.log'<<EOF

crosscheck archivelog all;

run

{

allocate channel t1 type disk;

allocate channel t2 type disk;

allocate channel t3 type disk;

allocate channel t4 type disk;

backup as compressed backupset database format '/u01/ygtest/DB%d%s%p%t.bak' TAG='WHOLE BACKUP' section size 30G

plus archivelog format '/u01/ygtest/ARC%d%s%p%t.bak' TAG='ARC BACKUP' delete input;

backup current controlfile format '/u01/ygtest/CTL%d%s%p%t.bak' TAG='CTL BACKUP';

release channel t1;

release channel t2;

release channel t3;

release channel t4;

}

crosscheck backup;

delete noprompt obsolete recovery window of 3 days;

EOF

【2.原庫(kù)查看DBID】

export ORACLE_SID=ygdg

rman target=/

連接上之后就可以看得到DBID,記下來

【3.原庫(kù)生成pfile】

create pfile='/u01/pfileygdg.ora' from spfile;

【4.備份文件傳至目標(biāo)庫(kù)】

scp /u01/ygtest/*.bak oracle@10.1.1.11:/u01/ygtest 記得確定目錄權(quán)限和所屬者

【5.原庫(kù)目標(biāo)庫(kù)結(jié)合修改pfile,并將修改后的參數(shù)文件傳到目標(biāo)端】

建議將原庫(kù)生成的pfile和目標(biāo)庫(kù)的spfile都下載到本地,根據(jù)“參數(shù)位置看pfile,其他看spfile”的原則進(jìn)行修改

【6.目標(biāo)數(shù)據(jù)庫(kù)創(chuàng)建spfile,并使用spfile啟動(dòng)數(shù)據(jù)庫(kù)到nomount狀態(tài)】

如果上面參數(shù)修改沒問題,正常應(yīng)該是下面這樣:

SQL> startup pfile='/software/pfileygdg.ora';

SQL> create spfile from pfile='/software/pfileygdg.ora';

SQL> shutdown immediate;

SQL> startup nomount;

但是有些參數(shù)沒注意修改,就會(huì)出現(xiàn)ORA-,不用擔(dān)心,看到什么錯(cuò)改什么就行,如下:

SQL> startup pfile='/software/pfileygdg.ora';

ORACLE 例程已經(jīng)啟動(dòng)。

Total System Global Area 221331456 bytes

Fixed Size 2251856 bytes

Variable Size 163578800 bytes

Database Buffers 50331648 bytes

Redo Buffers 5169152 bytes

ORA-00201: control file version 11.2.0.4.0 incompatible with ORACLE version 11.2.0.0.0

ORA-00202: control file: '/u01/app/oracle/oradata/ygdg/control01.ctl'

分析:查看參數(shù)文件中compatible值為11.2.0.0.0,與控制文件中的值沖突;

解決:

SQL> create spfile from pfile='/software/pfileygdg.ora';

文件已創(chuàng)建。

SQL> shutdown immediate;

ORA-01507: ??????

ORACLE 例程已經(jīng)關(guān)閉。

解決:修改spfile文件compatible參數(shù)后,使用spfile啟動(dòng)

SQL> startup nomount;

ORA-01078: failure in processing system parameters

LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/db_1/dbs/initygdg.ora'

解決此問題的方法就是到cd /u01/app/oracle/admin/ygdg/pfile/目錄下,將init.ora.25201817331

復(fù)制到dbs目錄下:

cp init.ora.25201817331 /u01/app/oracle/product/11.2.0/db_1/dbs/initygdg.ora

SQL> startup nomount;

ORACLE 例程已經(jīng)啟動(dòng)。

Total System Global Area 830930944 bytes

Fixed Size 2257800 bytes

Variable Size 536874104 bytes

Database Buffers 285212672 bytes

Redo Buffers 6586368 bytes

SQL> exit

從 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options 斷開

【7.還原控制文件】

[oracle@localhost database]$ rman target=/

恢復(fù)管理器: Release 11.2.0.4.0 - Production on 星期一 3月 5 19:20:26 2018

Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.

已連接到目標(biāo)數(shù)據(jù)庫(kù): YGDG (未裝載)

RMAN> set dbid=2428115541

RMAN> restore controlfile from '/software/ygtest/CTL_YGDG_55_1_969977274.bak';

RMAN> alter database mount;

【8.指定備份文件所在目錄】

RMAN> catalog start with '/software/ygtest';

【9.還原與恢復(fù)數(shù)據(jù)庫(kù)】

RMAN> run{

set newname for datafile 1 to "/u01/app/oracle/oradata/ygdg/system01.dbf";

set newname for datafile 2 to "/u01/app/oracle/oradata/ygdg/sysaux01.dbf";

set newname for datafile 3 to "/u01/app/oracle/oradata/ygdg/undotbs01.dbf";

set newname for datafile 4 to "/u01/app/oracle/oradata/ygdg/users01.dbf";

set newname for datafile 5 to "/u01/app/oracle/oradata/ygdg/test01.dbf";

set newname for tempfile 1 to "/u01/app/oracle/oradata/ygdg/temp01.dbf";

SQL "ALTER DATABASE RENAME FILE ''/u01/app/oracle/oradata/ygdg/redo01a.log'' to ''/u01/app/oracle/oradata/ygdg/redo01a.log'' ";

SQL "ALTER DATABASE RENAME FILE ''/u01/app/oracle/oradata/ygdg/redo02a.log'' to ''/u01/app/oracle/oradata/ygdg/redo02a.log'' ";

}

RMAN> run{

restore database;

SWITCH DATAFILE ALL;

recover database;

} # update control file with new filenames

注:1.原庫(kù)執(zhí)行

SQL> select 'set newname for datafile ' || a.FILE# || ' to "' || a.NAME || '";'

from v$datafile a union all select 'set newname for tempfile ' || a.FILE# || ' to "' || a.NAME || '";' from v$tempfile a;

'SETNEWNAMEFORDATAFILE'||A.FILE#||'TO"'||A.NAME||'";'


set newname for datafile 1 to "/u01/app/oracle/oradata/ygdg/system01.dbf";

set newname for datafile 2 to "/u01/app/oracle/oradata/ygdg/sysaux01.dbf";

set newname for datafile 3 to "/u01/app/oracle/oradata/ygdg/undotbs01.dbf";

set newname for datafile 4 to "/u01/app/oracle/oradata/ygdg/users01.dbf";

set newname for datafile 5 to "/u01/app/oracle/oradata/ygdg/test01.dbf";

set newname for tempfile 1 to "/u01/app/oracle/oradata/ygdg/temp01.dbf";

已選擇6行。

SQL>

SELECT 'SQL "ALTER DATABASE RENAME FILE ''''' || a.MEMBER || ''''' to ''''' || a.MEMBER || ''''' ";' FROM v$logfile a;


SQL "ALTER DATABASE RENAME FILE ''/u01/app/oracle/oradata/ygdg/redo01a.log'' to

''/u01/app/oracle/oradata/ygdg/redo01a.log'' ";

SQL "ALTER DATABASE RENAME FILE ''/u01/app/oracle/oradata/ygdg/redo02a.log'' to

''/u01/app/oracle/oradata/ygdg/redo02a.log'' ";

2.使用newnam for datafile來實(shí)現(xiàn)修改不同的文件路徑

3.switch datafile all用來更新還原回來的controlfile中的數(shù)據(jù)文件路徑與聯(lián)機(jī)日志文件路徑,要不然recover時(shí)會(huì)報(bào)錯(cuò)RMAN-06094

[oracle@localhost database]$ sqlplus / as sysdba

SQL> select status from v$instance;

STATUS


MOUNTED

SQL> alter database open resetlogs;

數(shù)據(jù)庫(kù)已更改。

本文標(biāo)題:異地rman恢復(fù)數(shù)據(jù)庫(kù)
路徑分享:http://www.muchs.cn/article14/jpcoge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷型網(wǎng)站建設(shè)、建站公司手機(jī)網(wǎng)站建設(shè)、網(wǎng)站收錄ChatGPT、標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)