oracle冷備份、恢復和異機恢復
一、冷備份
1、 冷備份發生在資料庫已經正常關閉的情況下
在進行冷備份之前通常要知道需要進行備份檔案的名稱以及路徑
SQL>select name from v$datefile;
SQL>select name from v$controlfile;
SQL>select member from v$logfile;
2、冷備份所需備份的檔案包括以下幾種:
所有資料檔案、所有控制檔案、所有聯機REDO LOG 檔案
3、冷備份的步驟
①正常關閉要備份的例項(instance)
②拷貝所有重要檔案到備份目錄下
③完成備份後啟動資料庫
4、用冷備份進行資料庫恢復
無歸檔模式:將備份檔案拷貝回原來的目錄即可,然後啟動資料庫。
歸檔模式:
①將資料檔案、控制檔案拷貝回原來目錄
②SQL>startup mount;
SQL>recover database using backup controlfile;
③將相應的歸檔日誌和聯機日誌拖到CMD命令視窗進行跑日誌。
④SQL>alter database open resetlogs;
二、異機恢復
冷備份恢復方式
A、不建立例項:(源機上的資料庫名字為orcl)
①在目標機上的oradata目錄下建立orcl資料夾,拷貝源機的所有data檔案和聯機redo檔案到此目錄下。
②在目標機上的admin目錄下建立orcl資料夾,然後在orcl裡面再建立adump、bdump、cdump、udump、dpdump、pfile六個資料夾
③把源機的密碼檔案拷貝到目標機的database目錄下。
④使用oradim命令在cmd下oradim -new -sid orcl 表示建立一個服務,sid為orcl(最好名字和源機備份的資料庫名字一致,就不需要重建密碼檔案)
⑤拷貝源機的pfile到目標機的一個目錄下,修改pfile裡面相關檔案的路徑,然後通過SQL>create spfile from pfile=‘檔案路徑’來建立引數檔案。
⑥重建控制檔案命令:SQL>alter database backup controlfile to trace;然後會在udump資料夾下產生一個追蹤檔案,開啟檔案找到如下一段,複製到文字中,修改相應路徑然後儲存為:createctl.sql檔案(sql指令碼檔案),複製到目標機上。
注意:SQL>alter database backup controlfile to trace as 'aa.txt';linux系統中會在dbs目錄下建立
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG' SIZE 50M,
GROUP 2 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG' SIZE 50M,
GROUP 3 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG' SIZE 50M
-- STANDBY LOGFILE
DATAFILE
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\BANK_DATA02.DBF'
CHARACTER SET ZHS16GBK;
⑦ c:\>set ORACLE_SID=orcl
c:\>sqlplus "/as sysdba"
SQL>create spfile from pfile='c:\pfile.txt';
SQL>@c:\createctl.sql;
SQL>shutdown immediate;
SQL>startup;
SQL>alter database open resetlogs;
⑧在network\admin下的tnsnames.ora中新增如下片段
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
1、 冷備份發生在資料庫已經正常關閉的情況下
在進行冷備份之前通常要知道需要進行備份檔案的名稱以及路徑
SQL>select name from v$datefile;
SQL>select name from v$controlfile;
SQL>select member from v$logfile;
2、冷備份所需備份的檔案包括以下幾種:
所有資料檔案、所有控制檔案、所有聯機REDO LOG 檔案
3、冷備份的步驟
①正常關閉要備份的例項(instance)
②拷貝所有重要檔案到備份目錄下
③完成備份後啟動資料庫
4、用冷備份進行資料庫恢復
無歸檔模式:將備份檔案拷貝回原來的目錄即可,然後啟動資料庫。
歸檔模式:
①將資料檔案、控制檔案拷貝回原來目錄
②SQL>startup mount;
SQL>recover database using backup controlfile;
③將相應的歸檔日誌和聯機日誌拖到CMD命令視窗進行跑日誌。
④SQL>alter database open resetlogs;
二、異機恢復
冷備份恢復方式
A、不建立例項:(源機上的資料庫名字為orcl)
①在目標機上的oradata目錄下建立orcl資料夾,拷貝源機的所有data檔案和聯機redo檔案到此目錄下。
②在目標機上的admin目錄下建立orcl資料夾,然後在orcl裡面再建立adump、bdump、cdump、udump、dpdump、pfile六個資料夾
③把源機的密碼檔案拷貝到目標機的database目錄下。
④使用oradim命令在cmd下oradim -new -sid orcl 表示建立一個服務,sid為orcl(最好名字和源機備份的資料庫名字一致,就不需要重建密碼檔案)
⑤拷貝源機的pfile到目標機的一個目錄下,修改pfile裡面相關檔案的路徑,然後通過SQL>create spfile from pfile=‘檔案路徑’來建立引數檔案。
⑥重建控制檔案命令:SQL>alter database backup controlfile to trace;然後會在udump資料夾下產生一個追蹤檔案,開啟檔案找到如下一段,複製到文字中,修改相應路徑然後儲存為:createctl.sql檔案(sql指令碼檔案),複製到目標機上。
注意:SQL>alter database backup controlfile to trace as 'aa.txt';linux系統中會在dbs目錄下建立
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG' SIZE 50M,
GROUP 2 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG' SIZE 50M,
GROUP 3 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG' SIZE 50M
-- STANDBY LOGFILE
DATAFILE
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF',
'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\BANK_DATA02.DBF'
CHARACTER SET ZHS16GBK;
⑦ c:\>set ORACLE_SID=orcl
c:\>sqlplus "/as sysdba"
SQL>create spfile from pfile='c:\pfile.txt';
SQL>@c:\createctl.sql;
SQL>shutdown immediate;
SQL>startup;
SQL>alter database open resetlogs;
⑧在network\admin下的tnsnames.ora中新增如下片段
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
⑨用net configuration為orcl例項新建監聽
B、建立例項(例項SID與源機資料庫SID一致)
①刪除目標機的oradata\orcl底下的所有檔案,把源機的所有data檔案、redo檔案拷貝到此目錄下
②刪除目標機的密碼檔案,拷貝源機密碼檔案到目標機下。
③在源機上重建目標機的控制檔案:SQL>alter database backup controlfile to trace;然後會在udump資料夾下產生一個追蹤檔案,開啟檔案找到上面那段,複製到文字中,修改相應路徑然後儲存為:createctl.sql檔案(sql指令碼檔案),複製到目標機上。
④c:\>sqlplus "/as sysdba"
SQL>@c:\createctl.sql;
SQL>shutdown immediate;
SQL>startup;
SQL>alter database open resetlogs;
⑤在network\admin下的tnsnames.ora中新增如下片段
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
B、建立例項(例項SID與源機資料庫SID一致)
①刪除目標機的oradata\orcl底下的所有檔案,把源機的所有data檔案、redo檔案拷貝到此目錄下
②刪除目標機的密碼檔案,拷貝源機密碼檔案到目標機下。
③在源機上重建目標機的控制檔案:SQL>alter database backup controlfile to trace;然後會在udump資料夾下產生一個追蹤檔案,開啟檔案找到上面那段,複製到文字中,修改相應路徑然後儲存為:createctl.sql檔案(sql指令碼檔案),複製到目標機上。
④c:\>sqlplus "/as sysdba"
SQL>@c:\createctl.sql;
SQL>shutdown immediate;
SQL>startup;
SQL>alter database open resetlogs;
⑤在network\admin下的tnsnames.ora中新增如下片段
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
⑥用net configuration為orcl例項新建監聽
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29489498/viewspace-1107922/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle冷備恢復Oracle
- RMAN備份異機恢復
- Oracle資料庫冷備和恢復Oracle資料庫
- RMAN備份恢復典型案例——異機恢復未知DBID
- DBV:冷備份的校驗和恢復
- Oracle 備份和恢復介紹Oracle
- oracle 異機恢復Oracle
- rman備份異機恢復(原創)
- 備份和恢復
- Oracle 備份 與 恢復 概述Oracle
- Oracle 備份恢復之 FlashbackOracle
- ORACLE備份&恢復案例(轉)Oracle
- RAC備份恢復之Voting備份與恢復
- KunlunDB備份和恢復
- redis 備份和恢復Redis
- 透過搭建恢復目錄實現RMAN異地備份和恢復
- 物理冷備份與恢復的操作命令
- 備份與恢復oracle_homeOracle
- oracle 增量備份恢復驗證Oracle
- ORACLE備份&恢復案例三(轉)Oracle
- ORACLE備份&恢復案例二(轉)Oracle
- ORACLE本地磁碟備份恢復Oracle
- SqlServer備份和恢復(二)SQLServer
- SqlServer 備份和恢復(一)SQLServer
- 【MySQL】MySQL備份和恢復MySql
- 備份與恢復:polardb資料庫備份與恢復資料庫
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql
- Oracle 12c 備份與恢復Oracle
- Oracle 備份恢復篇之RMAN catalogOracle
- ORACLE DG從庫 Rman備份恢復Oracle
- G017-ORACLE-MIGRATION-01 RMAN備份異機不完全恢復Oracle
- 兩篇oracle異機恢復文章Oracle
- mydumper備份恢復
- Mysql備份恢復MySql
- 異機使用完全備份恢復指定的PDB
- MySQL 非常規恢復與物理備份恢復MySql
- OceanBase-OB備份異地恢復流程
- innobackupex 部分表備份和恢復
- 詳解叢集級備份恢復:物理細粒度備份恢復