Oracle 單機配置DataGuard
一.主庫引數配置
1.啟用force logging (強制記錄日誌)
-- 檢視
select log_mode,force_logging from v$database;
-- 啟動
alter database force logging;
2.啟用歸檔
-- 檢視
archive log list;
select log_mode from v$database;
alter database archivelog;
二.配置監聽
TNS:
主庫
DBPRI =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dbpri)
)
)
備庫:
DBSTD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dbstd)
(UR = A)
)
)
三.配置主庫引數
--1. 修改歸檔檔名字尾為.arc(可選)
alter system set log_archive_format=’%t_%s_%r.arc’ scope=spfile;
--2. 檢查db_unique_name
show parameter db_unique_name
alter system set db_unique_name=’dbpri’ scope=spfile;
--3. 修改log_archive_config 引數,括號中為組備庫的db_unique_name
alter system set log_archive_config=’DG_CONFIG=(dbpri,dbstd)’ scope=both;
--4. 配置log_archive_dest_1 ,主庫歸檔位置
alter system set log_archive_dest_1=’LOCATION=/u01/archivelog/dbpri VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=dbpri’ scope=both;
--5. 配置log_archive_dest_2,備份歸檔引數,採用LGWR非同步傳輸方式
alter system set log_archive_dest_2=’SERVICE=dbstd LGWR ASYNC VALID_FOR=(ONLINE_LOGFILE,PRIMARY_ROLE) DB_UNIQUE_NAME=dbstd’ scope=both;
--6. 修改歸檔日誌程式的最大數量(可選)
alter system set log_archive_max_processes=30 scope=both;
show parameter log_archive_max_processes;
--7. 檢查資料庫口令檔案的使用模式(可選)
Show parameter remote_login_passwordfile
Alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile;
--8.修改/etc/hosts 檔案
--9. 修改db_file_name_convert引數,主備庫資料檔名稱跟路徑對應關係
--主庫跟備庫存放檔案的路徑不一定一樣,如果一樣的話可以不指定,但是不一樣就需要指定,一般來說主庫跟備庫的例項名不一樣,所以肯定是前面路徑是備庫資料檔案路徑,後面是主庫路徑
alter system set db_file_name_convert=’/u01/app/oracle/oradata/dbstd/’,’/u01/app/oracle/oradata/dbpri/’ scope=file;
--10. 修改log_file_name_convert引數,主備庫日誌檔名稱跟路徑對應關係
Alter system set log_file_name_convert=’/u01/app/oracle/oradata/dbstd/’,’/u01/app/oracle/oradata/dbpri/’ scope=file;;
--11. 設定standby_file_management為auto
--設定檔案管理模式,此項設定為自動,不然在主庫建立資料檔案後,備庫不會自動建立
Alter system set standby_file_management=auto;
--12.修改fal_client及fal_server
Alter system set fal_client=’dbpri’ scope=both; --主庫tns
Alter system set fal_server=’dbstd’ scope=both; --備庫tns
四.配置備庫引數
1.密碼檔案,主庫和備庫的sys密碼必須一致
-- 方式1: 使用orapwd 設定相同密碼
orapwd file=orapwsbdb password=
-- 方式2: scp 主庫密碼檔案到備庫$ORALCE_HOME/dbs目錄下,並修改密碼檔名為orapwdbstd
2.設定pfile檔案並啟動到nomount狀態
在備庫的dbs目錄下建立initdbstd.ora 並參考主庫新增引數
db_name='dbpri'
db_unique_name='dbstd'
pga_aggregate_target=13520338944 --設定跟主庫一樣
sga_target=40563113984 --設定跟主庫一樣
audit_file_dest='/u01/app/oracle/admin/dbpri/adump' --建立這個路徑
compatible='11.2.0.4.0' --相容性引數 主備庫要保持一致
log_archive_format='%t_%s_%r.arc'
control_files='/u01/app/oracle/oradata/dbstd/control01.ctl','/u01/app/oracle/fast_recovery_area/dbstd/control02.ctl' --注意修改檔案路徑中的例項名
log_archive_config='DG_CONFIG=(dbpri,dbstd)'
log_archive_dest_1='LOCATION=/u01/archivelog/dbstd VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=dbstd'
log_archive_dest_2='SERVICE=dbpri LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=dbpri'
db_file_name_convert='/u01/app/oracle/oradata/dbpri/','/u01/app/oracle/oradata/dbstd/' --前面是對方的,後面是本地的
log_file_name_convert='/u01/app/oracle/oradata/dbpri/','/u01/app/oracle/oradata/dbstd/'
fal_client='dbstd' --該引數與主庫設定相反
fal_server='dbpri' --該引數與主庫設定相反
standby_file_management='AUTO'
用剛編輯的initdbstd.ora 檔案將資料庫啟動到nomount狀態
startup nomount pfile=’/u01/app/oracle/product/11.2.0.4/dbhome_1/dbs/initdbstd.ora';
Create spfile from pfile;
利用spfile將資料庫啟動到nomount狀態。
五.配置備庫tns
主庫tns
DBPRI =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dbpri)
(UR = A)
)
)
備庫tns:
DBSTD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dbstd)
(UR = A)
)
)
測試tns
主庫和備庫分別測試
tnsping dbpri
tnsping dbstd
sqlplus sys/system@dbpri as sysdba;
sqlplus sys/system@dbstd as sysdba;
六.使用duplicate 建立物理standby
備庫執行
-- 連線RMAN 並連線輔助(auxiliary) 例項,備庫目前狀態是nomount狀態。
rman target sys/system@dbpri auxiliary sys/system@dbstd;
-- 執行復制
-- nofilenamecheck 不進行檔名檢查(如果複製資料時,備庫的路徑和原庫一致,就需要加nofilenamecheck,否者會報錯)
duplicate target database for standby from active database nofilenamecheck;
七.新增standby 日誌組並開啟同步
1.主庫新增standby 日誌組
?Standby 日誌組數量: redo 日誌組數量+1
?新增前需要檢視已有的日誌組號
?Standby 日誌大小與普通日誌相同大小即可
?為日後主備切換做準備,所以主庫上也新增standby 日誌
Select * from v$log;
Select * from v$logfile;
主庫新增:
alter database add standby logfile group 4 ('/u01/app/oracle/oradata/dbpri/redo04.log') size 50m;
alter database add standby logfile group 5 ('/u01/app/oracle/oradata/dbpri/redo05.log') size 50m;
alter database add standby logfile group 6 ('/u01/app/oracle/oradata/dbpri/redo06.log') size 50m;
alter database add standby logfile group 7 ('/u01/app/oracle/oradata/dbpri/redo07.log') size 50m;
備庫新增:
alter database add standby logfile group 4 ('/u01/app/oracle/oradata/dbstd/redo04.log') size 50m;
alter database add standby logfile group 5 ('/u01/app/oracle/oradata/dbstd/redo05.log') size 50m;
alter database add standby logfile group 6 ('/u01/app/oracle/oradata/dbstd/redo06.log') size 50m;
alter database add standby logfile group 7 ('/u01/app/oracle/oradata/dbstd/redo07.log') size 50m;
檢視standby 日誌:
Select * from v$standby_log;
開啟備庫:
alter database open;
2.設定同步
-- 1. 開啟實時同步(啟動MRP程式),備庫操作
alter database recover managed standby database using current logfile disconnect from session;
alter database recover managed standby database using current logfile disconnect; -- 簡寫
--2. 開啟同步,日誌切換才會同步
Alter database recover managed standby database disconnect from session;
--3. 停止同步 (關閉MRP 程式)
Alter database recover managed standby database cancel;
3.主備庫檢查模式
Select open_mode,database_role,protection_mode,protection_level from v$database;
八.總結
本篇整理了oracle 11gR2 DG 單機環境搭建過程,日誌傳輸為LGWR ASYNC非同步傳輸,開啟real time apply。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21374452/viewspace-2773108/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle dataguard broker 配置Oracle
- 配置Oracle physical DataGuardOracle
- Oracle 11g RAC 配置單例項 DataGuardOracle單例
- oracle 11G dataguard配置Oracle
- oracle-11g-配置dataguardOracle
- Debian下配置Oracle DataGuardOracle
- ORACLE資料庫dataguard配置,rman移機,dx鎖處Oracle資料庫
- oracle dataguard 配置錯誤彙總Oracle
- VMware中配置ORACLE DATAGUARD步驟Oracle
- [zt] Oracle 11g DataGuard 配置Oracle
- 使用虛擬機器配置dataguard虛擬機
- 配置 Oracle 10g 單例項物理dataguard和邏輯standbyOracle 10g單例
- Oracle 11g RAC 配置單例項 DataGuard(通過 DUPLICATE 方式)Oracle單例
- ORACLE 11g dataguard配置練習Oracle
- ORACLE10G DATAGUARD配置筆記Oracle筆記
- 實戰不停機搭建ORACLE DataGuardOracle
- ORACLE10g DataGuard 配置Physical Standby DatabaseOracleDatabase
- oracle11g單節點DataGuard搭建Oracle
- Oracle11g 搭建單例項DataGuardOracle單例
- Oracle 11g dataguard 配置簡約步驟Oracle
- Oracle物理DG自動切換——Dataguard Broker配置Oracle
- ORACLE RAC資料庫配置Dataguard環境(3)Oracle資料庫
- ORACLE RAC資料庫配置Dataguard環境(2)Oracle資料庫
- ORACLE RAC資料庫配置Dataguard環境(1)Oracle資料庫
- oracle dataguardOracle
- 虛擬機器實現dataguard配置過程虛擬機
- rman oracle11g_單機實用配置Oracle
- Oracle DataGuard 11g 雙機實驗Oracle
- Oracle在一臺機器上搭建dataguardOracle
- 通過 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
- 單機Linux平臺Oracle 10g DataGuard Logical Standby 搭建例項LinuxOracle 10g
- 單機Linux平臺Oracle 10g DataGuard Physical Standby 搭建例項(10)LinuxOracle 10g
- 單機Linux平臺Oracle 10g DataGuard Physical Standby 搭建例項(9)LinuxOracle 10g
- 單機Linux平臺Oracle 10g DataGuard Physical Standby 搭建例項(8)LinuxOracle 10g