Oracle 11g Dataguard 物理备库配置(一)之Duplicate配置
Oracle?11g?Dataguard?Duplicate物理備庫配置(一)之物理備庫創建配置
#?ver:1.5?第五次修改
#?modify:?2013.8.16
#?author:?koumm
?
Oracle?11g?Dataguard?物理備庫配置系列文檔
Oracle?11g?Dataguard?物理備庫配置(一)之duplicate創建
Oracle?11g?Dataguard?物理備庫配置(二)之Active?Dataguard測試
Oracle?11g?Dataguard?物理備庫配置(三)之Dataguard?broker配置
Oracle?11g?Dataguard?物理備庫配置(四)之broker?snapshot?standby測試
Oracle?11g?Dataguard?物理備庫配置(五)之broker?switchover測試
Oracle?11g?Dataguard?物理備庫配置(六)之broker?fastfailover測試
?
Oracle?11g?Dataguard?配置學習小結
http://koumm.blog.51cto.com/703525/1280139
?
說明:
本文安裝配置了Oracle?11g?Dataguard通過duplicate方式創建物理備庫。
比起上次配置有以下不同點:
1.?主備庫目錄結構不同。
2.?采用duplicate方式創建物理備庫。
一、環境介紹
1.?主數據庫環境
操作系統版本??:?OEL5.8?x64
數據庫版本????:?Oracle?11.2.0.3?x64
數據庫名??????:?orcl
數據庫SID?????:?orcl
db_unique_name:?orcl
instance_name?:?orcl
DGMGRL????????:?orcl_DGMGRL
2.?備庫環境
操作系統版本??:?OEL5.8?x64
數據庫版本????:?Oracle?11.2.0.3?x64?(只安裝oracle數據庫軟件,no?netca?dbca)
數據庫名??????:?slave
數據庫SID?????:?slave
db_unique_name:?slave
instance_name?:?slave
DGMGRL????????:?slave_DGMGRL
3.?DataGuard啟動順序
啟動順序:先啟備庫,后啟主庫
關閉順序:先關主庫,后關備庫
?
二、主數據庫環境準備
1.?主庫環境對比
充分利用主數據庫原來環境,僅量不對主庫參數配置做過多的修改。
重新創建口令文件
#?su?-?oracle
$?orapwd?file='/u01/app/oracle/product/11.2.0/db_1/dbs/orapworcl'?password=oracle?entries=10?force=y
2.?修改配置lisener監聽文件
說明:添加dgmgrl靜態監聽配置,為后面的dg?broker配置打基礎。
$?cat?/u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora??
LISTENER?=
??(DESCRIPTION_LIST?=
????(DESCRIPTION?=
??????(ADDRESS?=?(PROTOCOL?=?TCP)(HOST?=?192.168.233.200)(PORT?=?1521))
??????(ADDRESS?=?(PROTOCOL?=?IPC)(KEY?=?EXTPROC1521))
????)
??)
SID_LIST_LISTENER?=
??(SID_LIST?=
????(SID_DESC?=
??????(GLOBAL_DBNAME?=?orcl)
??????(ORACLE_HOME?=?/u01/app/oracle/product/11.2.0/db_1)
??????(SID_NAME?=?orcl)
????)
????(SID_DESC?=
??????(GLOBAL_DBNAME?=?orcl_DGMGRL)
??????(ORACLE_HOME?=?/u01/app/oracle/product/11.2.0/db_1)
??????(SID_NAME?=?orcl)
????)
??)
ADR_BASE_LISTENER?=?/u01/app/oracle
#其中的GLOBAL_DBNAME具有固定的格式:<db_unique_name>_DGMGRL.<db_domain>。
4.?修改配置tnsname.ora文件
說明:ORCL是主庫的服務名,DG是備庫的服務名。
$?vi?/u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
ORCL?=
??(DESCRIPTION?=
????(ADDRESS?=?(PROTOCOL?=?TCP)(HOST?=?192.168.233.200)(PORT?=?1521))
????(CONNECT_DATA?=
??????(SERVER?=?DEDICATED)
??????(SERVICE_NAME?=?orcl)
????)
??)
SLAVE?=
??(DESCRIPTION?=
????(ADDRESS?=?(PROTOCOL?=?TCP)(HOST?=?192.168.233.150)(PORT?=?1521))
????(CONNECT_DATA?=
??????(SERVER?=?DEDICATED)
??????(SERVICE_NAME?=?slave)
????)
??)
5.?修改配置成規檔模式
1)、檢查數據庫是否處于歸檔狀態
SQL>?archive?log?list;
SQL>?shutdown?immediate;
SQL>?startup?mount;
SQL>?alter?database?archivelog;
SQL>?alter?database?flashback?on;
SQL>?alter?database?open;
2)、將主庫設置為?FORCE?LOGGING?模式
SQL>?alter?database?force?logging;
SQL>?select?force_logging,flashback_on?from?v$database;
FOR?FLASHBACK_ON
---?------------------
YES?YES
6.?修改主庫參數文件
SQL>?
alter?system?set?instance_name='orcl'?scope=spfile;??
alter?system?set?db_unique_name='orcl'?scope=spfile;??
alter?system?set?local_listener='orcl'?scope=spfile;
alter?system?set?log_archive_config='DG_CONFIG=(orcl,slave)';??
alter?system?set?log_archive_dest_1='LOCATION=/u01/archivelog/?valid_for=(all_logfiles,all_roles)?db_unique_name=orcl'?scope=spfile;?
alter?system?set?log_archive_dest_2='SERVICE=slave?lgwr?async?valid_for=(online_logfiles,primary_role)?db_unique_name=slave'?scope=spfile;??
alter?system?set?log_archive_format='arch_%r_%t_%s.arc'?scope=spfile;
alter?system?set?fal_client='orcl'?scope=spfile;?
alter?system?set?fal_server='slave'?scope=spfile;??
alter?system?set?standby_file_management=AUTO;??
alter?database?add?standby?logfile?group?4?'/u01/app/oracle/oradata/orcl/standby_redo04.log'?size?50M;??
alter?database?add?standby?logfile?group?5?'/u01/app/oracle/oradata/orcl/standby_redo05.log'?size?50M;??
alter?database?add?standby?logfile?group?6?'/u01/app/oracle/oradata/orcl/standby_redo06.log'?size?50M;??
alter?database?add?standby?logfile?group?7?'/u01/app/oracle/oradata/orcl/standby_redo07.log'?size?50M;??
SQL>?shutdown?immediate;
SQL>?startup;
?
三、備庫配置
1.?備庫環境
操作系統版本??:?OEL5.8?x64
數據庫版本????:?Oracle?11.2.0.3?x64?(只安裝oracle數據庫軟件,no?netca?dbca)
數據庫名??????:?slave
數據庫SID?????:?slave
db_unique_name:?slave
instance_name?:?slave
DGMGRL????????:?slave_DGMGRL
2.?修改配置lisener監聽文件
$?vi?/u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora??
LISTENER?=
??(DESCRIPTION_LIST?=
????(DESCRIPTION?=
??????(ADDRESS?=?(PROTOCOL?=?TCP)(HOST?=?192.168.233.150)(PORT?=?1521))
??????(ADDRESS?=?(PROTOCOL?=?IPC)(KEY?=?EXTPROC1521))
????)
??)
SID_LIST_LISTENER?=
??(SID_LIST?=
????(SID_DESC?=
??????(GLOBAL_DBNAME?=?slave)
??????(ORACLE_HOME?=?/u01/app/oracle/product/11.2.0/db_1)
??????(SID_NAME?=?slave)
????)
????(SID_DESC?=
??????(GLOBAL_DBNAME?=?slave_DGMGRL)
??????(ORACLE_HOME?=?/u01/app/oracle/product/11.2.0/db_1)
??????(SID_NAME?=?slave)
????)
??)
ADR_BASE_LISTENER?=?/u01/app/oracle
其中的GLOBAL_DBNAME具有固定的格式:<db_unique_name>_DGMGRL.<db_domain>。
3.?修改配置tnsname.ora文件
說明:ORCL是主庫的服務名,DG是備庫的服務名。
$?vi?/u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
ORCL?=
??(DESCRIPTION?=
????(ADDRESS?=?(PROTOCOL?=?TCP)(HOST?=?192.168.233.200)(PORT?=?1521))
????(CONNECT_DATA?=
??????(SERVER?=?DEDICATED)
??????(SERVICE_NAME?=?orcl)
????)
??)
SLAVE?=
??(DESCRIPTION?=
????(ADDRESS?=?(PROTOCOL?=?TCP)(HOST?=?192.168.233.150)(PORT?=?1521))
????(CONNECT_DATA?=
??????(SERVER?=?DEDICATED)
??????(SERVICE_NAME?=?slave)
????)
??)
測試服務名連通性:
tnsping?orcl
tnsping?slave
3.?創建11g數據庫基本目錄
#?su?-?oracle
mkdir?-p?/u01/app/oracle/admin/slave/{adump,dpdump,pfile,scripts}??
mkdir?-p?/u01/app/oracle/oradata/slave??
mkdir?-p?/u01/app/oracle/fast_recovery_area/slave
mkdir?-p?/u01/archivelog
4.?拷貝主庫口令文件并改名
注:10g?DG環境只要求密碼相同,11g?DG則要求與主庫完全一致。
否則報無權限錯誤。
$?cd?/u01/app/oracle/product/11.2.0/db_1/dbs/
$?scp?oracle@192.168.233.150:/u01/app/oracle/product/11.2.0/db_1/dbs/orapworcl??$ORACLE_HOME/dbs/
$?mv?orapworcl?orapwslave
測試遠程登錄
$?sqlplus?sys/oracle@orcl?as?sysdba;
$?sqlplus?sys/oracle@slave?as?sysdba;
5.?啟動到nomount狀態
$?echo?'db_name=slave'?>?$ORACLE_HOME/dbs/initslave.ora??
$?sqlplus?/nolog
SQL>?conn?/?as?sysdba;
SQL>?startup?nomount;
四、?開始在RMAN?duplicate數據庫
1.?RMAN同進連接主庫與備庫
$?rman?target?sys/oracle@orcl?auxiliary?sys/oracle@slave
恢復管理器:?Release?11.2.0.3.0?-?Production?on?星期五?8月?16?21:14:10?2013
Copyright?(c)?1982,?2011,?Oracle?and/or?its?affiliates.??All?rights?reserved.
已連接到目標數據庫:?ORCL?(DBID=1351417842)
已連接到輔助數據庫:?SLAVE?(未裝載)
2.?開始duplicate數據庫
RMAN>
run?{
allocate?channel?c1?type?disk;
allocate?channel?c2?type?disk;
allocate?auxiliary?channel?stby?type?disk;
duplicate?target?database?for?standby?nofilenamecheck?from?active?database?
dorecover
spfile
parameter_value_convert?'orcl','slave'
set?instance_name='slave'?
set?db_unique_name='slave'
set?local_listener='slave'
set?db_file_name_convert='/u01/app/oracle/oradata/orcl/','/u01/app/oracle/oradata/slave/'
set?log_file_name_convert='/u01/app/oracle/oradata/orcl/','/u01/app/oracle/oradata/slave/'
set?control_files='/u01/app/oracle/oradata/slave/control01.ctl','/u01/app/oracle/oradata/slave/control02.ctl','/u01/app/oracle/oradata/slave/control03.ctl'
set?log_archive_dest_1='LOCATION=/u01/archivelog/?valid_for=(all_logfiles,all_roles)?db_unique_name=slave'
set?log_archive_dest_2='SERVICE=orcl?lgwr?async?valid_for=(online_logfile,primary_role)?db_unique_name=orcl'
set?log_archive_max_processes='5'
set?standby_file_management='AUTO'
set?fal_client='slave'
set?fal_server='orcl';
release?channel?c1;
release?channel?c2;
release?channel?stby;
}
RMAN>?quit
恢復管理器完成。
3.?查看備庫狀態
說明:duplicate數據庫之后,備庫只是處于mount狀態,查看備庫狀態。
$?sqlplus?/?as?sysdba
#?查看備庫狀態
SQL>?select?open_mode,database_role,db_unique_name?from?v$database;
OPEN_MODE????????????DATABASE_ROLE????DB_UNIQUE_NAME
--------------------?----------------?------------------------------
MOUNTED??????????????PHYSICAL?STANDBY?slave
4.?將備庫置與應用日志模式狀態
SQL>?alter?database?recover?managed?standby?database?using?current?logfile?disconnect?from?session;??
Database?altered.??
5.?驗證物理備庫日志應用
1)主庫上操作
SQL>?conn?/?as?sysdba;
SQL>?create?user?abc?identified?by?abc?;
SQL>?grant?dba?to?abc;
SQL>?conn?abc/abc
SQL>?create?table?abc?(?id?integer?,?name?char(10));
SQL>?insert?into?abc?values?(?0?,?'aaa'?);
SQL>?commit;
SQL>?conn?/?as?sysdba;
SQL>?archive?log?list;
數據庫日志模式??????????存檔模式
自動存檔????????????????啟用
存檔終點????????????????/u01/archivelog/
最早的聯機日志序列??????8
下一個存檔日志序列??????10
當前日志序列????????????10
?
2)備庫上驗證
SQL>?archive?log?list
數據庫日志模式?????????存檔模式
自動存檔???????????????啟用
存檔終點???????????????/u01/archivelog/
最早的聯機日志序列?????9
下一個存檔日志序列?????0
當前日志序列???????????10
SQL>?select?sequence#,first_time,next_time,applied?from?v$archived_log?order?by?sequence#;
?SEQUENCE#?FIRST_TIME?????NEXT_TIME??????APPLIED
----------?--------------?--------------?---------
?????????7?16-8月?-13?????16-8月?-13?????YES
?????????8?16-8月?-13?????16-8月?-13?????YES
?????????9?16-8月?-13?????16-8月?-13?????IN-MEMORY
經過測試,Oracle?11g?dataguard物理備庫創建成功。
?
?
?
轉載于:https://blog.51cto.com/koumm/1275237
總結
以上是生活随笔為你收集整理的Oracle 11g Dataguard 物理备库配置(一)之Duplicate配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sys.stdout sys.stder
- 下一篇: 算法约定