oracle-11g-配置dataguard
1、環境資訊:
系統:
oracle-linux 5.7
資料庫版本:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production
主庫:192.168.12.31 SID:yoon db_unique_name:yoon
備庫:192.168.12.231 SID:yoon db_unique_name:yoondg
2、檢視DG是否已經安裝:
SQL> select * from v$option where parameter = 'Oracle Data Guard';
PARAMETER VALUE
-------------------- --------------------
Oracle Data Guard TRUE
TRUE表示已經安裝可以配置,否則需要安裝相應軟體
3、檢視主庫是否開啟歸檔:
SQL> archive log list;
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 4
Current log sequence 6
4、設定主庫為歸檔模式:
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.
Total System Global Area 2505338880 bytes
Fixed Size 2230952 bytes
Variable Size 553649496 bytes
Database Buffers 1946157056 bytes
Redo Buffers 3301376 bytes
Database mounted.
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
Database altered.
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 4
Next log sequence to archive 6
Current log sequence 6
5、設定主庫為強制記錄日誌:
SQL> alter database force logging;
Database altered.
6、建立standy log files:
SQL> select group#,member from v$logfile;
GROUP# MEMBER
------- -----------------------------------
3 /opt/oracle/oradata/yoon/redo03.log
2 /opt/oracle/oradata/yoon/redo02.log
1 /opt/oracle/oradata/yoon/redo01.log
新增:
SQL> alter database add standby logfile group 7 '/opt/oracle/oradata/yoon/standby07.log' size 50m;
Database altered.
SQL> alter database add standby logfile group 8 '/opt/oracle/oradata/yoon/standby08.log' size 50m;
Database altered.
SQL> alter database add standby logfile group 9 '/opt/oracle/oradata/yoon/standby09.log' size 50m;
Database altered.
SQL> alter database add standby logfile group 10 '/opt/oracle/oradata/yoon/standby10.log' size 50m;
Database altered.
7、建立standby控制檔案:
SQL> shutdown immediate
SQL> startup mount
SQL> alter database create standby controlfile as '/opt/oracle/oradata/yoon/standby_control01.ctl';
Database altered.
SQL>alter database open;
8、設定db_unique_name:
預設db_name和db_unique_name是一樣的,主庫是yoon
在配置DG中主庫和備庫的SID可以一樣,But,db_unique_name不能相同,備庫設定為:yoondg
SQL> show parameter db_unique_name;
NAME TYPE VALUE
------------------------------------ ---------- ------------------------------
db_unique_name string yoon
--注意雖然預設db_unique_name和db_name是一致的,但是需要顯式設定,否則在spfile中沒有此引數
SQL> alter system set db_unique_name=yoon scope=spfile;
System altered.
9、配置主庫listener.ora:
# listener.ora Network Configuration File: /opt/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER=
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = yoon)
(ORACLE_HOME = /opt/oracle/product/11.2.0/db_1/)
(SID_NAME = yoon)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.31)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /opt/oracle
配置tnsnames.ora
# listener.ora Network Configuration File: /opt/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
YOON =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.31)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = yoon)
)
)
YOONDG =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.231)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = yoondg)
)
)
10、將主庫listener.ora和tnsnames.ora複製到備庫修改
[root@1231 admin]# scp listener.ora tnsnames.ora oracle@192.168.12.231:/opt/oracle/product/11.2.0/db_1/network/admin/
配置listener.ora
# listener.ora Network Configuration File: /opt/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER=
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = yoon)
(ORACLE_HOME = /opt/oracle/product/11.2.0/db_1/)
(SID_NAME = yoon)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.231)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /opt/oracle
配置tnsnames.ora
# listener.ora Network Configuration File: /opt/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
YOONDG =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.231)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = yoondg)
)
)
YOON =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.31)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = yoon)
)
)
11、配置完以後在主和備的oralce使用者下測試下是否能ping通
主:
[oracle@1231 ~]$ tnsping yoon
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.31)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = yoon)))
OK (0 msec)
[oracle@1231 ~]$ tnsping yoondg
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.231)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = yoondg)))
OK (10 msec)
備:
[oracle@12231 ~]$ tnsping yoon
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.31)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = yoon)))
OK (0 msec)
[oracle@12231 ~]$ tnsping yoondg
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.12.231)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = yoondg)))
OK (0 msec)
12、重做日誌傳輸配置
a.配置歸檔日誌位置:
SQL> alter system set log_archive_dest_1='location=/opt/oracle/archive_bak valid_for=(all_logfiles,primary_roles) db_unique_name=yoon' scope=spfile;
System altered.
b.配置重做日誌到備份庫:
SQL> alter system set log_archive_dest_2='service=yoondg lgwr sync valid_for=(online_logfiles,primary_role) db_unique_name=yoondg' scope=spfile;
System altered.
13、配置FAL_SERVER
主:
SQL> alter system set fal_server='yoondg';
System altered.
14、Data Guard 配置裡的另外一個庫的名字
SQL> alter system set log_archive_config='dg_config=(yoon,yoondg)';
System altered.
SQL> alter system set log_archive_dest_state_1=enable scope=spfile;
System altered.
SQL> alter system set log_archive_dest_state_2=enable scope=spfile;
System altered.
SQL> create pfile from spfile;
File created.
SQL> create spfile from pfile;
File created.
15、檢視主庫inityoon.ora資訊
yoon.__db_cache_size=1946157056
yoon.__java_pool_size=16777216
yoon.__large_pool_size=16777216
yoon.__oracle_base='/opt/oracle'#ORACLE_BASE set from environment
yoon.__pga_aggregate_target=838860800
yoon.__sga_target=2516582400
yoon.__shared_io_pool_size=0
yoon.__shared_pool_size=520093696
yoon.__streams_pool_size=0
*.audit_file_dest='/opt/oracle/admin/yoon/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/opt/oracle/oradata/yoon/control01.ctl','/opt/oracle/fast_recovery_area/yoon/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='yoon'
*.db_recovery_file_dest='/opt/oracle/fast_recovery_area'
*.db_recovery_file_dest_size=4322230272
*.db_unique_name='YOON'
*.diagnostic_dest='/opt/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=yoonXDB)'
*.fal_server='yoondg'
*.log_archive_config='dg_config=(yoon,yoondg)'
*.log_archive_dest_1='location=/opt/oracle/archive_bak valid_for=(all_logfiles,primary_roles) db_unique_name=yoon'
*.log_archive_dest_2='service=yoondg lgwr sync valid_for=(online_logfiles,primary_role) db_unique_name=yoondg'
*.log_archive_dest_state_1='ENABLE'
*.log_archive_dest_state_2='ENABLE'
*.open_cursors=300
*.pga_aggregate_target=837812224
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.standby_file_management='AUTO'
*.sga_target=2514485248
*.undo_tablespace='UNDOTBS1'
16、將主庫的資料檔案、控制檔案、引數檔案、密碼檔案複製到備庫對應的目錄
[root@1231 oracle]# scp -r admin/ fast_recovery_area/ oradata/ oracle@192.168.12.231:/opt/oracle/
17、修改備庫引數檔案
yoon.__db_cache_size=1946157056
yoon.__java_pool_size=16777216
yoon.__large_pool_size=16777216
yoon.__oracle_base='/opt/oracle'#ORACLE_BASE set from environment
yoon.__pga_aggregate_target=838860800
yoon.__sga_target=2516582400
yoon.__shared_io_pool_size=0
yoon.__shared_pool_size=520093696
yoon.__streams_pool_size=0
*.audit_file_dest='/opt/oracle/admin/yoon/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/opt/oracle/oradata/yoon/control01.ctl','/opt/oracle/fast_recovery_area/yoon/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='yoon'
*.db_recovery_file_dest='/opt/oracle/fast_recovery_area'
*.db_recovery_file_dest_size=4322230272
*.db_unique_name='YOONDG'
*.diagnostic_dest='/opt/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=yoonXDB)'
*.fal_server='yoon'
*.log_archive_config='dg_config=(yoondg,yoon)'
*.log_archive_dest_1='location=/opt/oracle/archive_bak valid_for=(all_logfiles,primary_roles) db_unique_name=yoondg'
*.log_archive_dest_2='service=yoon lgwr sync valid_for=(online_logfiles,primary_role) db_unique_name=yoon'
*.log_archive_dest_state_1='ENABLE'
*.log_archive_dest_state_2='ENABLE'
*.open_cursors=300
*.pga_aggregate_target=837812224
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.standby_file_management='AUTO'
*.sga_target=2514485248
*.undo_tablespace='UNDOTBS1'
18、在備庫透過pfile建立spfile
19、刪除備庫的控制檔案control01.ctl和control02.ctl
將standby_control01.ctl替換成control01.ctl和control02.ctl
20、啟動備庫
SQL> startup nomount
ORACLE instance started.
Total System Global Area 2505338880 bytes
Fixed Size 2230952 bytes
Variable Size 553649496 bytes
Database Buffers 1946157056 bytes
Redo Buffers 3301376 bytes
SQL>
SQL> alter database mount standby database;
Database altered.
啟用redo應用
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
停止standby
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
SQL>shutdown immediate;
21、備用伺服器的管理模式與只讀模式
a.啟動到管理模式
SQL>shutdown immediate;
SQL>startup nomount;
SQL>alter database mount standby database;
SQL>alter database recover managed standby database disconnect from session;
b.啟動到只讀模式
SQL>shutdown immediate;
SQL>startup nomount;
SQL>alter database mount standby database;
SQL> alter database open read only;
c.在管理恢復模式下到只讀模式
SQL> recover managed standby database cancel;
SQL> alter database open read only;
d.從只讀方式到管理恢復方式
SQL> recover managed standby database disconnect from session;
22、DG啟動:
監聽:先起備庫再起主庫
資料庫:先起備庫再起主庫
關閉:與啟動相反.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28939273/viewspace-1061447/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle dataguard broker 配置Oracle
- 配置Oracle physical DataGuardOracle
- 【DATAGUARD】Dataguard遠端同步配置最佳實踐
- Oracle 單機配置DataGuardOracle
- oracle 11G dataguard配置Oracle
- DataGuard引數配置詳解
- dataguard安裝和配置(DG)
- Debian下配置Oracle DataGuardOracle
- 跨平臺級聯dataguard配置
- oracle dataguard 配置錯誤彙總Oracle
- 配置DataGuard的準備知識
- VMware中配置ORACLE DATAGUARD步驟Oracle
- [zt] Oracle 11g DataGuard 配置Oracle
- 使用虛擬機器配置dataguard虛擬機
- ORACLE 11g dataguard配置練習Oracle
- ORACLE10G DATAGUARD配置筆記Oracle筆記
- ORACLE10g DataGuard 配置Physical Standby DatabaseOracleDatabase
- Oracle 11g dataguard 配置簡約步驟Oracle
- Oracle物理DG自動切換——Dataguard Broker配置Oracle
- Oracle 11g RAC 配置單例項 DataGuardOracle單例
- RAC+Dataguard環境中JDBC Failover配置JDBCAI
- ORACLE RAC資料庫配置Dataguard環境(3)Oracle資料庫
- ORACLE RAC資料庫配置Dataguard環境(2)Oracle資料庫
- ORACLE RAC資料庫配置Dataguard環境(1)Oracle資料庫
- 虛擬機器實現dataguard配置過程虛擬機
- 通過 rman duplicate 配置Oracle 11g Active DataguardOracle
- Oracle 11gR2 Active DataGuard配置Step By Step(一)Oracle
- Oracle 11gR2 Active DataGuard配置Step By Step(二)Oracle
- Oracle 11gR2 Active DataGuard配置Step By Step(三)Oracle
- 配置 Oracle 10g RAC primary + RAC physical standby dataguardOracle 10g
- oracle 10g dataguard 安裝配置說明及原理Oracle 10g
- ORACLE11GR2 RAC DATABASE+STANDLONE DATAGUARD配置摘要OracleDatabase
- RMAN配置DATAGUARD完整案例(主庫基於ASM儲存)ASM
- Linux Oracle 11g Dataguard配置詳細步驟LinuxOracle
- ORACLE資料庫dataguard配置,rman移機,dx鎖處Oracle資料庫
- 引數配置 -- 最大效能模式 dataguard 不影響Production DB .模式
- 【DATAGUARD】物理dg配置客戶端無縫切換 (八.1)--Data Guard Broker 的配置客戶端
- 【DATAGUARD】物理dg配置客戶端無縫切換 (八.3)--客戶端TAF 配置客戶端