oracle dataguard
Logical Standby配置:
以下資料型別不被支援:
NCLOB
LONG
LONG RAW
BFILE
ROWID
UROWID
檢查不被支援的表:
SQL> SELECT DISTINCT OWNER,TABLE_NAME FROM DBA_LOGSTDBY_UNSUPPORTED ORDER BY OWNER,TABLE_NAME;
以下操作不被支援:
ALTER DATABASE
ALTER SESSION
ALTER SNAPSHOT
ALTER SNAPSHOT LOG
ALTER SYSTEM SWITCH LOG
CREATE CONTROL FILE
CREATE DATABASE
CREATE DATABASE LINK
CREATE PFILE FROM SPFILE
CREATE SCHEMA AUTHORIZATION
CREATE SNAPSHOT
CREATE SNAPSHOT LOG
CREATE SPFILE FROM PFILE
CREATE TABLE AS SELECT FROM A CLUSTER TABLE
DROP DATABASE LINK
DROP SNAPSHOT
DROP SNAPSHOT LOG
EXPLAIN
LOCK TABLE
RENAME
SET CONSTRAINTS
SET ROLE
SET TRANSACTION
高階佇列的管理和物化檢視的重新整理不被支援(DBMS_AQADM,DBMS_MVIEW_REFRESH)
Logical Standby要求每張表應該有Primary key或者Unique index,如果必須有沒有唯一性標示的表,那麼可以啟用Primary庫的supplemental logging屬性,但是這樣將會在redo log中記錄該表中每一條記錄的所有欄位作為標示,會大大增加redo log的記錄量。
檢查沒有唯一性標示的表:
SQL> SELECT OWNER, TABLE_NAME,BAD_COLUMN FROM DBA_LOGSTDBY_NOT_UNIQUE WHERE TABLE_NAME NOT IN (SELECT TABLE_NAME FROM DBA_LOGSTDBY_UNSUPPORTED);
如果可以確認表中有唯一標示的欄位,但是又不想真正建立主鍵或者索引來增加更新的開銷,那麼可以建立disabled RELY型別的約束,比如:
SQL> ALTER TABLE mytab ADD PRIMARY KEY (id, name) RELY DISABLE;
檢查supplemental logging是否已經被啟用。
SQL> SELECT SUPPLEMENTAL_LOG_DATA_PK, SUPPLEMENTAL_LOG_DATA_UI FROM V$DATABASE;
用以下方法啟用Primary庫的supplemental logging屬性:
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY, UNIQUE INDEX) COLUMNS;
啟用supplemental logging屬性以後,作一次日誌切換,保證當前日誌中不包含非追加日誌資料(nonsupplemental log)。
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
建立一個新的表空間,用於LogMiner,否則Logical Standby需要的物件將預設建立在SYSTEM表空間中。
SQL> CREATE TABLESPACE logmnrts DATAFILE '/disk1/oracle/dbs/logmnrts.dbf' SIZE25MAUTOEXTEND ON MAXSIZE UNLIMITED;
SQL> EXECUTE DBMS_LOGMNR_D.SET_TABLESPACE('logmnrts');
關閉Primary,備份所有資料檔案,傳到Standby
啟動Primary,建立logical standby database的資料字典
SQL> EXECUTE DBMS_LOGSTDBY.BUILD;
檢查需要上傳到Standby上的歸檔日誌資訊
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE (SEQUENCE#=(SELECT MAX(SEQUENCE#) FROM V$ARCHIVED_LOG WHERE DICTIONARY_BEGIN = 'YES' AND STANDBY_DEST= 'NO'));
NAME
--------------------------------------------------------------------------------
/opt/oracle/oradata/orcl/archive/1_29.dbf
修改Primary和Standby上的tnsnames.ora和listener.ora,配置方法跟Physical Standby中一樣。
修改Standby上初始化引數中的fal_server和fal_client值。
設定Standby資料庫
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE GUARD ALL;
SQL> ALTER DATABASE REGISTER LOGICAL LOGFILE '/opt/oracle/oradata/orcl/archive/1_29.dbf';
SQL> ALTER DATABASE START LOGICAL STANDBY APPLY INITIAL;
初次啟動Standby需要APPLY INITIAL,以後直接執行以下SQL啟動和關閉Standby日誌應用。
SQL> ALTER DATABASE STOP LOGICAL STANDBY APPLY;
SQL> ALTER DATABASE START LOGICAL STANDBY APPLY;
在Primary作日誌歸檔,測試整個環境是否設定成功。
檢查Standby的日誌應用情況:
SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME, DICT_BEGIN, DICT_END FROM DBA_LOGSTDBY_LOG ORDER BY SEQUENCE#;Trackback:http://tb.blog.csdn.net/TrackBack.aspx?PostId=59323
http://www.360doc.com/content/060711/17/7925_153837.html
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/235507/viewspace-582229/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【DATAGUARD】Oracle Dataguard nologging 塊修復Oracle
- oracle dataguard broker 配置Oracle
- Oracle 11.2.0.4 physical dataguard和snapshot dataguard切換Oracle
- 【DATAGUARD】Oracle Dataguard體系架構詳解Oracle架構
- 【DATAGUARD】Oracle19c dataguard新特性及部署Oracle
- Oracle dataguard failover 實戰OracleAI
- Oracle 單機配置DataGuardOracle
- oracle 19c dataguard silent install (oracle 19c dataguard 靜默安裝)Oracle
- Oracle之11g DataGuardOracle
- Oracle 11.2 DataGuard RAC To RAC搭建Oracle
- 【DATAGUARD】Oracle Dataguard物理備庫切換最佳實踐(sqlplus)OracleSQL
- 【Dataguard】Oracle多租戶環境對Dataguard的影響Oracle
- oracle11g dataguard切換Oracle
- Oracle Dataguard故障轉移(failover)操作OracleAI
- 7 Oracle DataGuard 命令列參考Oracle命令列
- Oracle DataGuard 主備切換 (switchover) oracle11gOracle
- 【DATAGUARD】Oracle19c Data Guard BrokerOracle
- Oracle 11.2.0.4 Dataguard兩則故障處理Oracle
- 【DATAGUARD】Oracle21c Dataguard建立注意事項及主要引數介紹Oracle
- Oracle dataguard報錯:Error 1017 received logging on to the standbyOracleError
- Oracle資料庫(DataGuard)遷移方案(上)Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(中)Oracle資料庫
- Oracle資料庫(DataGuard)遷移方案(下)Oracle資料庫
- 【DATAGUARD】Oracle 通過Dataguard指定恢復時間用於找回丟失資料Oracle
- Oracle 11g dataguard 配置簡約步驟Oracle
- Oracle DataGuard歸檔日誌丟失處理方法Oracle
- oracle10g DataGuard的日誌傳輸方式Oracle
- dataguard 搭建 oracle_sid相同 2節點 primary+standbyOracle
- ORACLE 11G DATAGUARD 日誌中斷處理方案Oracle
- dataguard 搭建 oracle_sid不同 2節點 primary+standbyOracle
- 【Dataguard】DataGuard運維注意事項運維
- ORACLE 12C DATAGUARD環境搭建和主從切換Oracle
- Oracle Linux7下部署oralce 11gr2 dataguardOracleLinux
- Oracle資料庫由dataguard備庫引起的log file sync等待Oracle資料庫
- 【DATAGUARD】Dataguard遠端同步配置最佳實踐
- ORACLE DATAGUARD災備歸檔空間滿導致的ORA-00600 [2619]Oracle
- Oracle 19C CBD Active DataGuard Standby passwd file 注意事項 ORA-01017Oracle
- 【ARCH】留存,Oracle11g之前Dataguard環境刪除歸檔指令碼Oracle指令碼
- 【DG】Oracle11g異構平臺之Linux To Windows DataGuard安裝配置--duplicateOracleLinuxWindows