1. 程式人生 > >手工搭建Data Guard

手工搭建Data Guard

Data Guard的搭建可以使用GC圖形化安裝,優缺點很明顯,優點就是圖形化操作,符合國人的習慣(據secooler介紹外國程式設計師能用圖形化做的事就一定用圖形做,因為boss看得懂,和國人正相反。。。),缺點就是如同Windows一樣,宛如黑盒,換句話說,要時刻祈禱不要出問題,否則有時很難知道他為什麼掛了。。。

Data Guard還可以使用命令列操作,正如各位所知,圖形化的任何操作背後,其實都是使用的命令。OCM第七場景考試中,我也是糾結了許久,臨開始前才決定使用手工方式建立DG,怕的就是圖形安裝的不確定性。

當然,作為練習,兩種方式都熟悉下沒什麼不好。最近新找了兩臺機器資源,於是決定搭建一下DG的測試環境,以備後用。

環境準備:
OS:RH Linux
配置:2C4G,40G磁碟空間
資料庫:11.2.0.4
主庫SID:BEIJING,單例項
備庫SID:GUOAN,單例項

1.主庫準備工作

編輯listener.ora,配置主庫靜態監聽:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = BEIJING)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0.4)
      (SID_NAME = BEIJING)
    )
  )

LISTENER
= (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = bill02)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) ) ADR_BASE_LISTENER = /u01/app/oracle

編輯tnsnames.ora,配置備庫連線串:

GUOAN =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = bill01)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = GUOAN)
    )
  )

設定force_logging引數:

SYS@BEIJING> alter database force logging;

檢視是否開啟歸檔:

[email protected]> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     6
Next log sequence to archive   8
Current log sequence           8

若未開啟,將庫置於mount狀態,執行:

alter database archivelog;

確認shared_servers、max_shared_servers、dispatchers和max_dispatchers引數是否置空。(此步驟為了防止建立過程出錯,實際驗證不設定亦可)。

檢視主庫日誌組:

SYS@BEIJING> select group#, member from v$logfile;
    GROUP# MEMBER
---------- --------------------------------------------------
         1 /u01/app/oracle/oradata/BEIJING/redo01.log
         2 /u01/app/oracle/oradata/BEIJING/redo02.log
         3 /u01/app/oracle/oradata/BEIJING/redo03.log

一共有三組,再增加四組standby日誌:

SYS@BEIJING> alter database add standby logfile '/u01/app/oracle/oradata/BEIJING/redo04.log' size 100M;
SYS@BEIJING> alter database add standby logfile '/u01/app/oracle/oradata/BEIJING/redo05.log' size 100M;
SYS@BEIJING> alter database add standby logfile '/u01/app/oracle/oradata/BEIJING/redo06.log' size 100M;
SYS@BEIJING> alter database add standby logfile '/u01/app/oracle/oradata/BEIJING/redo07.log' size 100M;

SYS@BEIJING> select group#, member, type from v$logfile;
GROUP# MEMBER                                        TYPE
---------- ---------------------------------------- -------
1 /u01/app/oracle/oradata/BEIJING/redo01.log         ONLINE
2 /u01/app/oracle/oradata/BEIJING/redo02.log         ONLINE
3 /u01/app/oracle/oradata/BEIJING/redo03.log         ONLINE
4 /u01/app/oracle/oradata/BEIJING/redo04.log         STANDBY
5 /u01/app/oracle/oradata/BEIJING/redo05.log         STANDBY
6 /u01/app/oracle/oradata/BEIJING/redo06.log         STANDBY
7 /u01/app/oracle/oradata/BEIJING/redo07.log         STANDBY

編輯pfile檔案,

DB_NAME=BEIJING
DB_UNIQUE_NAME=BEIJING
LOG_ARCHIVE_CONFIG='DG_CONFIG=(BEIJING,GUOAN)’  --順序填寫主備庫
LOG_ARCHIVE_DEST_1=
 'LOCATION=/home/oracle/flash                   --location表示本機
  VALID_FOR=(ALL_LOGFILES,ALL_ROLES)            --填寫主庫歸檔路徑
  DB_UNIQUE_NAME=BEIJING'
LOG_ARCHIVE_DEST_2=
 'SERVICE=GUOAN ASYNC                           --service表示另一臺機器
  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
  DB_UNIQUE_NAME=GUOAN’                         --填寫備庫DB名稱
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
LOG_ARCHIVE_MAX_PROCESSES=4        --最大歸檔程序數官方文件預設30,此處改為4

FAL_SERVER=GUOAN        --為了切換後主備角色互換使用,Fetch Archived Log縮寫
DB_FILE_NAME_CONVERT='GUOAN',’BEIJING’          --資料檔案目錄結構對應關係
LOG_FILE_NAME_CONVERT='GUOAN',’BEIJING’         --日誌檔案目錄結構對應關係
STANDBY_FILE_MANAGEMENT=AUTO    --主庫資料檔案修改,備庫可以選擇自動或手工管理

將主庫已經改好的引數檔案和密碼檔案傳至備庫dbs路徑下:

[oracle@bill02 dbs]$ scp initBEIJING.ora oracle@bill01:/u01/app/oracle/product/11.2.0.4/dbs/initGUOAN.ora
[oracle@bill02 dbs]$ scp orapwBEIJING oracle@bill01:/u01/app/oracle/product/11.2.0.4/dbs/orapwGUOAN

建立主庫spfile,並啟動:

SYS@BEIJING> create spfile from pfile;
SYS@BEIJING> startup;

2.備庫準備工作

編輯tnsnames.ora檔案,建立主庫連線串:

BEIJING =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = bill02)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = BEIJING)
    )
  )

建立備庫監聽:略

編輯備庫pfile檔案,

db_name=‘BEIJING’                   --注意此處,主備庫的db_name引數要一致
memory_target=1G
processes = 150
audit_file_dest='/u01/app/oracle/admin/guoan/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/u01/app/oracle/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01/app/oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=GUOANXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS'
control_files = (/u01/app/oracle/oradata/GUOAN/control01.ctl, /u01/app/oracle/oradata/GUOAN/control02.ctl)
compatible ='11.2.0'

DB_UNIQUE_NAME=GUOAN
LOG_ARCHIVE_CONFIG='DG_CONFIG=(GUOAN,BEIJING)'
LOG_ARCHIVE_DEST_1=
 'LOCATION=/home/oracle/flash
  VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
  DB_UNIQUE_NAME=GUOAN'
LOG_ARCHIVE_DEST_2=
 'SERVICE=BEIJING ASYNC
  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
  DB_UNIQUE_NAME=BEIJING'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
LOG_ARCHIVE_MAX_PROCESSES=4

FAL_SERVER=BEIJING
DB_FILE_NAME_CONVERT='BEIJING','GUOAN'
LOG_FILE_NAME_CONVERT='BEIJING','GUOAN'
STANDBY_FILE_MANAGEMENT=AUTO

可以採用替換的方式來修改備庫pfile檔案:
(1) 將BEIJING替換為中間變數TMP_BEIJING;
(2) 將GUOAN替換為BEIJING;
(3) 將TMP_BEIJING替換為GUOAN;

建立spfile,啟動備庫:

SYS@GUOAN> create spfile from pfile;

SYS@GUOAN> startup
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size                  2260088 bytes
Variable Size             671089544 bytes
Database Buffers          390070272 bytes
Redo Buffers                5517312 bytes
ORA-00205: error in identifying control file, check alert log for more info

此處有報錯,可以暫時忽略,因為備庫還未有控制檔案。

3.主備庫檔案傳輸

此處我們採用RMAN來將主庫檔案傳至備庫:

[email protected] dbs]$ rman target / auxiliary sys/[email protected]

Recovery Manager: Release 11.2.0.4.0 - Production on Fri Jul 29 09:46:22 2016
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database: BEIJING (DBID=882855131)
connected to auxiliary database: BEIJING (not mounted)

執行復制:

RMAN> duplicate target database for standby from active database;

Starting Duplicate Db at 29-JUL-16
using target database control file instead of recovery catalog
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=10 device type=DISK

contents of Memory Script:
{
   backup as copy reuse
   targetfile  '/u01/app/oracle/product/11.2.0.4/dbs/orapwBEIJING' auxiliary format 
 '/u01/app/oracle/product/11.2.0.4/dbs/orapwGUOAN'   ;
}
executing Memory Script

Starting backup at 29-JUL-16
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK
Finished backup at 29-JUL-16

contents of Memory Script:
{
   backup as copy current controlfile for standby auxiliary format  '/u01/app/oracle/oradata/GUOAN/control01.ctl';
   restore clone controlfile to  '/u01/app/oracle/oradata/GUOAN/control02.ctl' from 
 '/u01/app/oracle/oradata/GUOAN/control01.ctl';
}
executing Memory Script

Starting backup at 29-JUL-16
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
copying standby control file
output file name=/u01/app/oracle/product/11.2.0.4/dbs/snapcf_BEIJING.f tag=TAG20160729T094647 RECID=1 STAMP=918467209
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03
Finished backup at 29-JUL-16

Starting restore at 29-JUL-16
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: copied control file copy
Finished restore at 29-JUL-16

contents of Memory Script:
{
   sql clone 'alter database mount standby database';
}
executing Memory Script

sql statement: alter database mount standby database

contents of Memory Script:
{
   set newname for tempfile  1 to 
 "/u01/app/oracle/oradata/GUOAN/temp01.dbf";
   switch clone tempfile all;
   set newname for datafile  1 to 
 "/u01/app/oracle/oradata/GUOAN/system01.dbf";
   set newname for datafile  2 to 
 "/u01/app/oracle/oradata/GUOAN/sysaux01.dbf";
   set newname for datafile  3 to 
 "/u01/app/oracle/oradata/GUOAN/undotbs01.dbf";
   set newname for datafile  4 to 
 "/u01/app/oracle/oradata/GUOAN/users01.dbf";
   backup as copy reuse
   datafile  1 auxiliary format 
 "/u01/app/oracle/oradata/GUOAN/system01.dbf"   datafile 
 2 auxiliary format 
 "/u01/app/oracle/oradata/GUOAN/sysaux01.dbf"   datafile 
 3 auxiliary format 
 "/u01/app/oracle/oradata/GUOAN/undotbs01.dbf"   datafile 
 4 auxiliary format 
 "/u01/app/oracle/oradata/GUOAN/users01.dbf"   ;
   sql 'alter system archive log current';
}
executing Memory Script

executing command: SET NEWNAME

renamed tempfile 1 to /u01/app/oracle/oradata/GUOAN/temp01.dbf in control file

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting backup at 29-JUL-16
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
input datafile file number=00001 name=/u01/app/oracle/oradata/BEIJING/system01.dbf
output file name=/u01/app/oracle/oradata/GUOAN/system01.dbf tag=TAG20160729T094657
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:25
channel ORA_DISK_1: starting datafile copy
input datafile file number=00002 name=/u01/app/oracle/oradata/BEIJING/sysaux01.dbf
output file name=/u01/app/oracle/oradata/GUOAN/sysaux01.dbf tag=TAG20160729T094657
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile copy
input datafile file number=00003 name=/u01/app/oracle/oradata/BEIJING/undotbs01.dbf
output file name=/u01/app/oracle/oradata/GUOAN/undotbs01.dbf tag=TAG20160729T094657
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile copy
input datafile file number=00004 name=/u01/app/oracle/oradata/BEIJING/users01.dbf
output file name=/u01/app/oracle/oradata/GUOAN/users01.dbf tag=TAG20160729T094657
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
Finished backup at 29-JUL-16

sql statement: alter system archive log current

contents of Memory Script:
{
   switch clone datafile all;
}
executing Memory Script

datafile 1 switched to datafile copy
input datafile copy RECID=1 STAMP=918381060 file name=/u01/app/oracle/oradata/GUOAN/system01.dbf
datafile 2 switched to datafile copy
input datafile copy RECID=2 STAMP=918381060 file name=/u01/app/oracle/oradata/GUOAN/sysaux01.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=3 STAMP=918381060 file name=/u01/app/oracle/oradata/GUOAN/undotbs01.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=4 STAMP=918381060 file name=/u01/app/oracle/oradata/GUOAN/users01.dbf
Finished Duplicate Db at 29-JUL-16

回顯所使用的檔案傳輸指令碼和過程。

此時從備庫可以使用watch監控檔案傳輸進度:

watch ls
Every 2.0s: ls              Thu Jul 28 09:51:41 2016

control01.ctl
control02.ctl
redo01.log
redo02.log
redo03.log
redo04.log
redo05.log
redo06.log
redo07.log
sysaux01.dbf
system01.dbf
undotbs01.dbf
users01.dbf

傳輸完成,可以從備庫檢視,此時主備庫資料檔案、日誌檔案、引數檔案保持一致:

[email protected] GUOAN]$ ls -rlth
total 1.9G
-rw-r-----. 1 oracle oinstall 501M Jul 28 09:50 system01.dbf
-rw-r-----. 1 oracle oinstall 326M Jul 28 09:50 sysaux01.dbf
-rw-r-----. 1 oracle oinstall 201M Jul 28 09:50 undotbs01.dbf
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:50 users01.dbf
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:51 redo01.log
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:51 redo02.log
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:51 redo03.log
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:51 redo04.log
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:51 redo05.log
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:51 redo06.log
-rw-r-----. 1 oracle oinstall 101M Jul 28 09:51 redo07.log
-rw-r-----. 1 oracle oinstall 9.1M Jul 28 09:51 control01.ctl
-rw-r-----. 1 oracle oinstall 9.1M Jul 28 09:51 control02.ctl

4.驗證主備庫狀態

此時檢視備庫狀態,處於MOUNT,角色是物理備庫:

SQL> select database_role, open_mode from v$database;
DATABASE_ROLE    OPEN_MODE
---------------- --------------------
PHYSICAL STANDBY MOUNTED

SQL> select status from v$instance;
STATUS
------------
MOUNTED

此時主庫狀態,處於OPEN,可讀寫:

[email protected]> select database_role, open_mode from v$database;
DATABASE_ROLE    OPEN_MODE
---------------- --------------------
PRIMARY          READ WRITE

[email protected]> select status from v$instance;
STATUS
------------
OPEN

5.切換ADG

開啟備庫實時應用:

SQL> recover managed standby database using current logfile disconnect from session;
Media recovery complete.

SQL> recover managed standby database cancel;
Media recovery complete.

SQL> alter database open;

SQL> select database_role, open_mode from v$database;
DATABASE_ROLE    OPEN_MODE
---------------- --------------------
PHYSICAL STANDBY READ ONLY

其中disconnect from session表示後臺執行,類似於shell的&。可以看出現在備庫處於READ ONLY狀態,不再是處於MOUNT不可使用的狀態,即現在可以執行只讀操作了。

繼續:

SQL> recover managed standby database using current logfile disconnect from session;
Media recovery complete.

SQL> select database_role, open_mode from v$database;
DATABASE_ROLE    OPEN_MODE
---------------- --------------------
PHYSICAL STANDBY READ ONLY WITH APPLY

此時資料庫狀態時READ ONLY WITH APPLY,即只讀且實時應用日誌,通常所說的ADG,Active Data Guard。

READ ONLY WITH APPLY表示備庫處於READ ONLY狀態的同時可以接收主庫傳過來的日誌檔案並進行恢復,以便備庫可以即時檢視到主庫的變化。

6.切換SNAPSHOT DATABASE

執行:

SQL> alter database recover managed standby database cancel;

SQL> alter database convert to snapshot standby;

SNAPSHOT的原理是基於閃回資料原理,此時備庫是可讀寫狀態,可以用這種真實的生產環境進行一些無法在測試環境做的實驗。使用完後,可以執行命令退回,SNAPSHOT期間對備庫做的所有變更都會還原:

SQL> alter database convert to physical standby;

SQL> alter database recover managed standby database disconnect;

7.切換主庫日誌

通過主庫手工切換日誌,來看看備庫是否實時接收應用了日誌,可以看出此時備庫的最新日誌SEQUENCE#是15號:

SYS@BEIJING> alter system archive log current; 
System altered.

SYS@BEIJING> select sequence#, first_time, next_time from v$archived_log order by sequence#;
 SEQUENCE# FIRST_TIME         NEXT_TIME
---------- ------------------ ------------------
        13 29-JUL-16          29-JUL-16
        13 29-JUL-16          29-JUL-16
        14 29-JUL-16          29-JUL-16
        14 29-JUL-16          29-JUL-16
        15 29-JUL-16          29-JUL-16
        15 29-JUL-16          29-JUL-16

此時檢視備庫,已經應用15號日誌:

SQL> select sequence#, first_time, next_time from v$archived_log order by sequence#;
 SEQUENCE# FIRST_TIME         NEXT_TIME
---------- ------------------ ------------------
        12 29-JUL-16       29-JUL-16
        13 29-JUL-16       29-JUL-16
        14 29-JUL-16       29-JUL-16
        15 29-JUL-16       29-JUL-16

8.設定歸檔日誌刪除策略

可以設定主庫的歸檔日誌應用至備庫後再刪除的策略,一方面保證了歸檔日誌傳輸接收,另一方面可以有效控制歸檔日誌檔案的產生量大小。預設是沒有任何刪除策略:

[[email protected] BEIJING]$ rman target /

Recovery Manager: Release 11.2.0.4.0 - Production on Fri Jul 29 10:10:55 2016
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database: BEIJING (DBID=882855131)

RMAN> show all;

using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name BEIJING are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
**CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default**
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0.4/dbs/snapcf_BEIJING.f'; # default

執行:

RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;

new RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;
new RMAN configuration parameters are successfully stored

再次檢視:

RMAN> show all;

RMAN configuration parameters for database with db_unique_name BEIJING are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
**CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;**
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0.4/dbs/snapcf_BEIJING.f'; # default

9.總結
Data Guard的手工搭建方式,如果理清思路,還是比較清晰的,我最開始做的時候,由於監聽、連線串一系列問題,總是duplicate出錯,但手工方式好就好在可以讓你有除錯排查的機會,因為每一步手工操作都有他的意義,過程可逆,若是圖形操作,則相對封閉些。
另外,這裡只是DG搭建的最基礎方式,其實對於一套DG生產環境,還有很多預防性設定,之前參考過某些牛人的梳理,確實很詳細,有些內容自己還未掌握,還需要繼續學習。

相關推薦

手工搭建Data Guard

Data Guard的搭建可以使用GC圖形化安裝,優缺點很明顯,優點就是圖形化操作,符合國人的習慣(據secooler介紹外國程式設計師能用圖形化做的事就一定用圖形做,因為boss看得懂,和國人正相反。。。),缺點就是如同Windows一樣,宛如黑盒,換句話說,

從擺脫Data Guard手工搭建及維護的煩惱說起

講師介紹 楊建榮 搜狐暢遊高階DBA DBAplus社群聯合發起人。現就職於搜狐暢遊,OracleACE-A、YEP成員,超7年資料庫開發和運維經驗,擅長電信資料業務、資料庫遷移和效能調優。 持Oracle10GOCP,OCM,MySQLOCP認證,《OracleDBA工作筆記》作者。 本次分享將

Oracle數據庫11g 中Data Guard物理備用數據庫搭建與配置

Oracle Data Guard Oracle主備 Oracle Data Guard是由Oracle公司提供的一套高可用性數據庫解決方案。Data Guard可以確保企業數據的高可用性,並實現數據保護和災難恢復。Data Guard提供了一套綜合創建、維護、管理和監視一個或多個備用數據庫的

Oracle11g Data Guard物理備用數據庫搭建與配置(第1部分 主數據庫實例創建)

Data Guard Oracle主從環境準備 在我的測試環境中,準備了兩臺CentOS7.4虛擬機,並同時都安裝了Oracle11gR2的11.2.0.1.0企業版的數據庫軟件,其中只有主服務器創建一個數據庫實例,備用服務器僅安裝Oracle數據庫軟件。主數據庫(DB1)OSCentOS7.4Hostnam

Oracle11g Data Guard物理備用數據庫搭建與配置(第2部分 配置物理備用數據庫)

Oracle Data Guard環境準備 接著上一篇文章 Oracle11g Data Guard物理備用數據庫搭建與配置(第1部分 主數據庫實例創建)在我的測試環境中,我準備了兩臺CentOS7.4虛擬機,並同時都安裝了Oracle11gR2的11.2.0.1.0企業版的數據庫軟件,其中只有主服務器創建

Oracle data guard 10g 搭建

ora-01078 esc product dom rail des force swa 應用 Oracle data guard 10g 搭建 1系統常規參數檢查 硬盤 [root@localhost ~]# df -h 內核 [root@localhost ~]# u

【oracle】Oracle Data Guard 環境搭建

Oracle Data Guard 環境搭建 二、 配置主庫 1、 強制寫日誌  2、 設定資料庫為歸檔模式  3、 在主庫新增備庫日誌檔案  4、 檢視備庫日誌檔案  5、 配置靜態

DATA GUARD環境搭建

本文主要涉及到以下內容 一、安裝前環境配置 二、主庫配置 三、備庫配置 四、主庫複製資料庫到備庫 五、開啟備庫資料庫 六、備庫應用日誌檔案 七、查詢主備庫資料庫狀態 八、驗證資料同步 一、安裝前環境配置 1、一臺完整可用裝有ORACLE資料庫的虛擬機器作為主庫 2、一臺乾

如何搭建一個 Data Guard 環境

在Blog裡零零散散的講了一些DB 維護的東西,比較雜,也比較散。 這裡就Oracle Data Guard 這塊做一個小結。 主要是流程上的東西。 做個參考,以後裝DG,照這個流程走就ok了。

Oracle 12c Data Guard 搭建手冊

  注:本文謝絕轉載! Oracle 12c 的DataGuard 是在CDB 級別進行的,所以我們的配置都是從CDB角度出發。 測試裡主備庫的資料庫CDB名稱相同。 1  環境說明 OS Version: [[email protected] etc]#

oracle 搭建實時同步data guard的最高可用-切換主備

搭建實時同步data guard的最高可用-切換主備 首先保證主庫在歸檔模式下:錯過N次了 準備二臺機器(hostname gw hosts ech0)host-only [[email protected] ~]# ifconfig eth0      Lin

Oracle RAC + Data Guard 環境搭建

引用:http://blog.csdn.net/xujinyang/article/details/6836780 國慶之前就準備做這個實驗了。 後來時間不夠,就沒搞了。 6天的長假一放,都散漫的不成樣子了。懶散了很多。 今天7號。 上班也沒啥精神,但是該做

用Broker搭建Oracle Data Guard的必須注意知識點

最近在用Broker 配置和管理Data Guard(Oracle version : 10.2.0.1.0),以前的資料庫都基本不設定db_domain的,當使用database link的時候,啟用了global_names=true,也設定了db_domain,所以以

Data Guard 主備庫角色轉換

1.5 total abort ase required using art gap edi 1. switchover操作 1.1 備庫先關閉實時日誌應用 standby>alter database recover managed standby databas

Tomcat手工搭建Jsp和Servlet程序

.org light pri meta text map 不同 bsp timeout 要執行J2EE的程序,就必須安裝相關的容器。而怎樣選擇JSP+Servlet模式。Tomcat是非常重要的選擇之中的一個,是世界上最為廣泛的Servlet和JSP容器。 下載: 1.

[校園網]UDP繞過校園網,純手工搭建

repo fst bre park ebo fan oci 校園 doc 購61E事酚7際95僖http://www.huochai.mobi/p/d/7052101 雀5挖YO糠茲1笨尚抖http://www.huochai.mobi/p/d/7052102 TFgAI牌

oracle data guard備庫備份恢復

startup ring pset 文件拷貝 style pga patch physical size   客戶有套data guard環境,主庫在阿裏雲上,備庫在本地機房,現在想定期做備份,但是因為一些原因,備份阿裏雲上的主庫實現會有些問題,所以只能備份本地的備庫。目前

Oracle Data Guard Protection Modes

sub data loss tin best ext persist down app take Maximum Availability This protection mode provides the highest level of data protecti

Oracle塗抹oracle學習筆記第10章Data Guard說,我就是備份

為什麽 enc blog mar 用戶 日誌 size 命名 一個 DG 是備份恢復工具,但是更加嚴格的意義它是災難恢復   Data Guard是一個集合,由一個Primary數據庫及一個或者多個Standby數據庫組成,分兩類邏輯Standby和物理Standby

手工搭建kubernetes(k8s)1.9集群 - (二)核心模塊部署

kubernetes 集群部署 環境搭建 devops 持續集成 1. 部署ETCD(主節點) 1.1 簡介 ??kubernetes需要存儲很多東西,像它本身的節點信息,組件信息,還有通過kubernetes運行的pod,deployment,service等等。都需要持久化。etcd就