ORACLE DATAGUARD 資料庫---建立物理備用資料庫
本文指導物理備用資料庫的建立,包括以下主題:
準備主庫
建立物理備用資料庫
更多準備
1、在建立備庫之前準備主庫
1.1強制記錄日誌模式
SQL>alter database force logging;
1.2建立一個口令檔案
DATA GUARD配置中的每一個資料庫都需要一個口令檔案,用來傳輸日誌的sys使用者的密碼在所有系統中必須是一致的。
1.3設定主庫的初始化引數檔案
在主庫中,你需要定義一些控制日誌傳輸服務的初始化引數。當主庫被轉換成備庫角色的時候,你需要增加一些額外的引數來控制日誌資料的接收和日誌應用服務。下面是一個主庫的初始化引數檔案示例,這個示例展現一個主庫在芝加哥,一個物理備用資料庫在波士頓的DATA GUARD配置。當芝加哥的資料庫執行在主庫角色或者從庫角色時,這些示例中的引數是有效的。配置使用的名稱如下:
Database DB_UNIQUE_NAME Oracle Net Service Name
Primary chicago chicago
Physical standby boston boston
主庫: Primary Role Initialization Parameters
DB_NAME=chicago
DB_UNIQUE_NAME=chicago
SERVICE_NAMES=chicago
LOG_ARCHIVE_CONFIG='DG_CONFIG=(chicago,boston)'
CONTROL_FILES='/arch1/chicago/control1.ctl', '/arch2/chicago/control2.ctl'
LOG_ARCHIVE_DEST_1=
'LOCATION=/arch1/chicago/
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=chicago'
LOG_ARCHIVE_DEST_2=
'SERVICE=boston
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=boston'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
這些引數控制日誌傳輸服務如何傳輸日誌資料以及日誌資料在本地的歸檔。注意示例假定使用預設的ARCn程式傳輸日誌資料,如果你指定LGWR程式傳輸日誌資料,需要包括NET_TIMEOUT引數在LOG_ARCHIVE_DEST_2引數。
下面一個例子顯示當主庫轉換為從庫時的一些其他引數,這些引數當主庫轉換為從庫時起作用:
FAL_SERVER=boston
FAL_CLIENT=chicago
DB_FILE_NAME_CONVERT=
'/arch1/boston/','/arch1/chicago/','/arch2/boston/','/arch2/chicago/'
LOG_FILE_NAME_CONVERT=
'/arch1/boston/','/arch1/chicago/','/arch2/boston/','/arch2/chicago/'
STANDBY_FILE_MANAGEMENT=AUTO
下面提供對每一個初始化引數的簡單解釋:
DB_NAME--指定一個8個字元的名稱,對於所有備用資料庫使用相同的名稱
DB_UNIQUE_NAME--為每一個資料庫指定一個唯一的名稱
SERVICE_NAMES--為備用資料庫指定一個與主庫不同的服務名,如果你不明確指定不同的服務名,並且主庫和從庫位於同一系統中,相同的global name(由資料庫名和域名組成DB_NAME,DB_DOMAIN),會對兩個資料庫有效
LOG_ARCHIVE_CONFIG--指定DG_CONFIG列出主庫和備庫的DB_UNIQUE_NAME,可以動態新增備庫。
LOG_ARCHIVE_DEST_n--指定重做資料在主庫和從庫的歸檔位置,示例中的LOG_ARCHIVE_DEST_1歸檔主庫的本地聯機重做日誌檔案到本地歸檔日誌檔案/arch1/chicago/,LOG_ARCHIVE_DEST_2只對於主庫角色有效,傳輸重做資料到遠端物理備用目標boston。注意:如果配置了閃回恢復區(DB_RECOVERY_FILE_DEST),並且你沒有使用LOCATION屬性配置本地歸檔目標,Data Guard 自動使用LOG_ARCHIVE_DEST_10初始化引數作為本地歸檔的預設目標。
REMOTE_LOGIN_PASSWORDFILE--在主庫和備庫為sys使用者設定相同的密碼,這個引數的推薦設定是EXCLUSIVE或者SHARED
FAL_SERVER--指定FAL server(一般執行在主庫角色的資料庫)的網路服務名,當Chicago資料庫執行在備用角色時,它使用這個引數指定的伺服器來獲取缺少的日誌資料
FAL_CLIENT--指定Chicago資料庫的網路服務名,FAL server Boston 複製缺少的重做日誌檔案到Chicago備用資料庫
STANDBY_FILE_MANAGEMENT--設定成AUTO,當主庫資料檔案增加或刪除時,自動改變備用資料庫
警告:小心初始化引數檔案中的引數,如果主庫與從庫的目錄位置不同的話。
1.4歸檔
主庫必須工作在歸檔模式
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE OPEN;
2、建立一個物理備用資料庫
2.1建立主庫資料檔案的副本
2.2建立備用資料庫的控制檔案
SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/tmp/boston.ctl';
注意:不能使用同樣的控制檔案
2.3為備用資料庫準備初始化引數檔案
第一步,複製主庫的初始化引數檔案到從庫
SQL> CREATE PFILE='/tmp/initboston.ora' FROM SPFILE;
第二步,設定引數
下例顯示備用資料庫的初始化引數
DB_NAME=chicago
DB_UNIQUE_NAME=boston
SERVICE_NAMES=boston
LOG_ARCHIVE_CONFIG='DG_CONFIG=(chicago,boston)'
CONTROL_FILES='/arch1/boston/control1.ctl', '/arch2/boston/control2.ctl'
DB_FILE_NAME_CONVERT=
'/arch1/chicago/','/arch1/boston/','/arch2/chicago/','/arch2/boston/'
LOG_FILE_NAME_CONVERT=
'/arch1/chicago/','/arch1/boston/','/arch2/chicago/','/arch2/boston/'
LOG_ARCHIVE_FORMAT=log%t_%s_%r.arc
LOG_ARCHIVE_DEST_1=
'LOCATION=/arch1/boston/
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=boston'
LOG_ARCHIVE_DEST_2=
'SERVICE=chicago
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=chicago'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
STANDBY_FILE_MANAGEMENT=AUTO
INSTANCE_NAME=boston
FAL_SERVER=chicago
FAL_CLIENT=boston
另外,確保COMPATIBLE引數被設定成相同的值。如果值不同,資料傳輸服務不可用。
2.4從主庫複製檔案到從庫
資料檔案
控制檔案
初始化引數檔案
2.5設定環境
第一步,建立windows服務
WINNT> oradim -NEW -SID boston -INTPWD password -STARTMODE manual
第二步,建立密碼檔案
第三步,配置主庫和從庫的監聽器
第四步,備庫斷開連線的監測
在備庫SQLNET.ORA檔案中SQLNET.EXPIRE_TIME=2
第五步,建立oracle網路服務名
第六步,為備庫建立spfile
SQL> CREATE SPFILE FROM PFILE='initboston.ora';
2.6啟動物理備用資料庫
第一步,啟動資料庫到只讀模式
SQL> STARTUP OPEN READ ONLY;
第二步,為物理備用資料庫增加一個新的臨時檔案
SQL> ALTER TABLESPACE TEMP1 ADD TEMPFILE
2> '/arch1/boston/temp01.dbf'
3> SIZE 40M REUSE;
第三步,開始日誌應用
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
第四步,測試物理備用資料庫的歸檔操作
直到日誌切換,重做日誌才傳輸到遠端備用位置。
SQL> ALTER SYSTEM SWITCH LOGFILE;
2.7驗證備用資料庫工作正常
首先檢查備用資料庫存在的歸檔重做日誌檔案,然後強制日誌切換歸檔一些主庫的聯機重做日誌,再檢查從庫。
第一步,檢驗已存在的歸檔日誌檔案
在從庫,查詢V$ARCHIVED_LOG檢視
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME
2 FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# FIRST_TIME NEXT_TIME
---------- ------------------ ------------------
8 11-JUL-02 17:50:45 11-JUL-02 17:50:53
9 11-JUL-02 17:50:53 11-JUL-02 17:50:58
10 11-JUL-02 17:50:58 11-JUL-02 17:51:03
3 rows selected.
第二步,日誌切換歸檔當前的聯機重做日誌檔案
在主庫
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
第三步,驗證新的重做資料被歸檔到備用資料庫
在備用資料庫,查詢V$ARCHIVED_LOG檢視
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME
2> FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# FIRST_TIME NEXT_TIME
---------- ------------------ ------------------
8 11-JUL-02 17:50:45 11-JUL-02 17:50:53
9 11-JUL-02 17:50:53 11-JUL-02 17:50:58
10 11-JUL-02 17:50:58 11-JUL-02 17:51:03
11 11-JUL-02 17:51:03 11-JUL-02 18:34:11
4 rows selected.
第四步,驗證新的歸檔日誌檔案被應用
在備用資料庫,查詢V$ARCHIVED_LOG檢視來驗證歸檔日誌檔案被應用
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG
2 ORDER BY SEQUENCE#;
SEQUENCE# APP
--------- ---
8 YES
9 YES
10 YES
11 YES
3、更多的準備
3.1升級資料保護模式
3.2配置備用重做日誌
當備用資料庫執行在最高保護模式和最高可用性模式時需要備用重做日誌檔案。但是,推薦在所有備用資料庫配置備用日誌檔案,因為在失敗轉移時Data Guard可以應用更多的重做資料。備用日誌檔案存在在主庫和從庫並且有相同的大小和名稱。
3.3啟用閃回資料庫
啟用閃回資料庫,在失敗轉移之後,不需要重建主庫。閃回資料庫類似於基於時間點的資料庫恢復,閃回資料庫比基於時間點的恢復更快,你可以在主庫,從庫,或者兩者同時啟用閃回資料庫。
原文地址: http://www.cnitblog.com/feiyang0721/archive/2007/12/07/37469.html
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/81912/viewspace-382/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 物理備用資料庫(二)資料庫
- 物理備用資料庫(一)資料庫
- 【DATAGUARD 學習】使用duplicate 建立物理standby 資料庫資料庫
- dataguard之物理備庫丟失資料檔案
- ORACLE DUPLICATE建立物理standby資料庫Oracle資料庫
- RMAN DUPLICATE建立DataGuard物理備庫
- dataguard-建立物理備庫全程解析
- 利用RMAN建立備用資料庫資料庫
- 用rman建立dataguard備用資料庫繼續(無法找到備份檔案)資料庫
- dataguard之主庫增加資料檔案--物理備庫相應的調整(一)
- ORACLE資料庫Dataguard dg brokerOracle資料庫
- 使用RMAN建立物理Standby資料庫資料庫
- Oracle資料庫由dataguard備庫引起的log file sync等待Oracle資料庫
- 【DataGuard】手工冷備搭建 Oracle 11g DataGuard 物理備庫Oracle
- oracle rman備用資料庫(一)Oracle資料庫
- GoldenGate12.2從DataGuard備庫同步資料到其他Oracle資料庫GoOracle資料庫
- 關於建立DataGuard Physical Standby資料庫資料庫
- 【DataGuard】使用GC建立的物理DataGuard主備庫pfile比較GC
- 在物理備庫上部署閃回資料庫資料庫
- oracle 備份資料庫,匯出資料庫Oracle資料庫
- dataguard系列之六------備用資料庫的維護資料庫
- 備用資料庫資料庫
- 使用RMAN線上建立DataGuard備用庫(資料檔案不同路徑結構)
- 【DG】怎麼使用Data Pump備份物理備用資料庫資料庫
- 靜默建立oracle資料庫及克隆資料庫Oracle資料庫
- 使用 RMAN DUPLICATE...FROM ACTIVE DATABASE 建立物理備用資料庫的分步指南Database資料庫
- Oracle 手工建立資料庫Oracle資料庫
- 建立oracle資料庫(1)Oracle資料庫
- 手工建立oracle資料庫Oracle資料庫
- Oracle Standby資料庫建立Oracle資料庫
- oracle邏輯備用資料庫(一)Oracle資料庫
- 使用RMAN進行快速Dataguard資料庫建立資料庫
- 【DATAGUARD】DG系列之RACtoONE快照備用資料庫的搭建資料庫
- Oracle11g的Dataguard測試,建立物理備庫(Physical Standby Database)OracleDatabase
- 【DataGuard】Oracle 11g物理Data Guard之Snapshot Standby資料庫功能Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(上)Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(中)Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(下)Oracle資料庫