久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么搭建dataguard

141次閱讀
沒有評論

共計 11261 個字符,預計需要花費 29 分鐘才能閱讀完成。

本篇內容主要講解“怎么搭建 dataguard”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“怎么搭建 dataguard”吧!

        此方案適合于生產運營中的數據庫,DB
服務器停機時間非??量?,或無法停機維護的情況下,如支付,電商等業務,可通過該方案在線部署 Dataguard,對客戶系統無任何影響。

一、基礎信息

操作系統:windows2008

數據庫:11.2.0.3

配置信息:

說明主機名 IP 地址 db_namesidDB_UNIQUE_NAMEService_name 主庫 dg1192.168.16.14orclorclorclorcl 備庫 dg2192.168.16.15orclorclorclbakorclbak

二、準備工作

按照要求創建相應的主數據庫和備用數據庫,并刪除備用數據庫的數據文件、控制文件,兩個數據庫的所有路徑需要一致;

三、搭建數據庫

主庫的操作: 

1. 確認主庫參數

SQL  select name,open_mode,database_role,log_mode,force_logging from v$database;
NAME OPEN_MODE DATABASE_ROLE LOG_MODE FOR
--------- -------------------- ---------------- ------------ ---
ORCL READ WRITE PRIMARY ARCHIVELOG YES
SQL  show parameter name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string
db_name string orcl
db_unique_name string orcl
global_names boolean FALSE
instance_name string orcl
lock_name_space string
log_file_name_convert string
processor_group_name string
service_names string orcl

2. 設置數據庫的歸檔模式

SQL  archive log list;
數據庫日志模式   存檔模式
自動存檔   啟用
存檔終點  E:\u01\fast_recovery_area\orcl
最早的聯機日志序列  833
下一個存檔日志序列  835
當前日志序列  835

歸檔模式的設置:

1、shutdown abort;2、alter database mount;
3、alter database archive log;4、alter database open;3. 開啟 force logging
SQL  alter database force logging;
SQL  select name,DB_UNIQUE_NAME,database_role,log_mode,force_logging from v$database;
NAME DB_UNIQUE_NAME DATABASE_ROLE LOG_MODE FOR--------- ------------------------------ ---------------- ------------ ---
ORCL orcl PRIMARY ARCHIVELOG YES

4. 主庫配置監聽

SID_LIST_LISTENER =
 (SID_LIST =
 (SID_DESC =
 (SID_NAME = CLRExtProc)
 (ORACLE_HOME = E:\u01\product\11.2.0\dbhome_1)
 (PROGRAM = extproc)
 (ENVS =  EXTPROC_DLLS=ONLY:E:\u01\product\11.2.0\dbhome_1\bin\oraclr11.dll)
 )
 )
LISTENER =
 (DESCRIPTION_LIST =
 (DESCRIPTION =
 (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-QS00S09CJ12)(PORT = 1521))
 (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
 )
 )
ADR_BASE_LISTENER = E:\u01

5. 配置主庫的 TNSNAMES.ORA 并和密碼文件一起傳到備庫

# tnsnames.ora Network Configuration File: E:\u01\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora# Generated by Oracle configuration tools.ORCL=
 (DESCRIPTION =
 (ADDRESS_LIST =
 (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
 )
 (CONNECT_DATA =
 (SERVER = DEDICATED)
 (SID = ORCL)
 (UR=A)
 )
 )
ORCLBAK =
 (DESCRIPTION =
 (ADDRESS_LIST =
 (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.14.15)(PORT = 1521))
 )
 (CONNECT_DATA =
 (SERVICE_NAME = orclbak)
 (UR=A) -- 這里記得加這個,否無法連接 nomount 狀態下備庫
 )
 )

傳輸監聽文件到備庫:

6. 修改主庫 pfile 參數

– 前提是采用 spfile 啟動,并且業務不能停,可用下列命令動態設置:

ALTER SYSTEM SET LOG_ARCHIVE_CONFIG= DG_CONFIG=(orcl,orclbak)  
ALTER SYSTEM SET LOG_ARCHIVE_DEST_1=  LOCATION=E:\u01\fast_recovery_area\orcl VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcl  
ALTER SYSTEM SET LOG_ARCHIVE_DEST_2= SERVICE=orclbak LGWR ASYNC affirm VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orclbak  
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_1= ENABLE  
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2= DEFER  -- 這里先設置關閉  ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT= AUTO  ALTER SYSTEM SET FAL_SERVER=orclbak; ALTER SYSTEM SET FAL_CLIENT=orcl; 
下面是可選,如果路相同,忽略下面操作: 
ALTER SYSTEM SET DB_FILE_NAME_CONVERT= E:\u01\oradata\orcl , E:\u01\oradata\orcl  scope=spfile;
ALTER SYSTEM SET LOG_FILE_NAME_CONVERT= E:\u01\oradata\orcl , E:\u01\oradata\orcl  scope=spfile;

7. 全備主庫, 并傳輸備份集到備庫的相同位置

run
 allocate channel c0 device type disk;
 allocate channel c1 device type disk;
 CONFIGURE CONTROLFILE AUTOBACKUP ON;
 CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO  e:\orabak\rman/%F 
 backup database format  e:\orabak\ora11g_full_db_%d_%T_%u.bak 
 BACKUP ARCHIVELOG ALL FORMAT  e:\orabak\ora11g_arc_%s_%p_%t.bak 
 }

8. 修改備庫參數并將備庫啟動至 nomount 狀態 (參考主庫進行,主要是 service_name 要反過來)

DB_UNIQUE_NAME=orclbak
LOG_ARCHIVE_CONFIG= DG_CONFIG=(orcl,orclbak)  
LOG_ARCHIVE_DEST_1=  LOCATION=E:\u01\fast_recovery_area\orcl VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orclbak  
LOG_ARCHIVE_DEST_2=  SERVICE=orcl LGWR ASYNC affirm VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl  
LOG_ARCHIVE_DEST_STATE_1=ENABLE 
LOG_ARCHIVE_DEST_STATE_2=ENABLE 
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc 
FAL_SERVER=orcl
FAL_CLIENT=orclbak
STANDBY_FILE_MANAGEMENT=AUTO

 9. 啟動備庫監聽

# listener.ora Network Configuration File: E:\u01\product\11.2.0\dbhome_1\network\admin\listener.ora# Generated by Oracle configuration tools.SID_LIST_LISTENER =
 (SID_LIST =
 (SID_DESC =
 (SID_NAME = CLRExtProc)
 (ORACLE_HOME = E:\u01\product\11.2.0\dbhome_1)
 (PROGRAM = extproc)
 (ENVS =  EXTPROC_DLLS=ONLY:E:\u01\product\11.2.0\dbhome_1\bin\oraclr11.dll)
 )
 )
LISTENER =
 (DESCRIPTION_LIST =
 (DESCRIPTION =
 (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-4GH7UKQEEOC)(PORT = 1521))
 (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
 )
 )
SID_LIST_LISTENER =
 (SID_LIST =
 (SID_DESC =
 (GLOBAL_DBNAME = orcl)
 (ORACLE_HOME = E:\u01\product\11.2.0\dbhome_1)
 (SID_NAME = orcl)
 )
 )
ADR_BASE_LISTENER = E:\u01

10. 進行備庫的恢復

C:\Users\Administrator rman target /
恢復管理器: Release 11.2.0.3.0 - Production on  星期五  2 月  26 17:35:52 2016Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
已連接到目標數據庫: ORCL (DBID=1389423916)
RMAN  connect auxiliary sys/*******@orclbak
已連接到輔助數據庫: ORCL (未裝載)

開始復制數據庫: 

RMAN  duplicate target database for standby nofilenamecheck;
啟動  Duplicate Db  于  26- 2 月  -16
使用目標數據庫控制文件替代恢復目錄
分配的通道: ORA_AUX_DISK_1
通道  ORA_AUX_DISK_1: SID=2091  設備類型 =DISK
內存腳本的內容:
 restore clone standby controlfile;
正在執行內存腳本
啟動  restore  于  26- 2 月  -16
使用通道  ORA_AUX_DISK_1
通道  ORA_AUX_DISK_1:  正在開始還原數據文件備份集
通道  ORA_AUX_DISK_1:  正在還原控制文件
通道  ORA_AUX_DISK_1:  正在讀取備份片段  D:\ORABAK\C-1389423916-20160226-00
通道  ORA_AUX_DISK_1:  段句柄  = D:\ORABAK\C-1389423916-20160226-00  標記  = TAG20160226T140701
通道  ORA_AUX_DISK_1:  已還原備份片段  1
通道  ORA_AUX_DISK_1:  還原完成,  用時: 00:00:04
輸出文件名 =E:\U01\ORADATA\ORCL\CONTROL01.CTL
完成  restore  于  26- 2 月  -16
內存腳本的內容:
 sql clone  alter database mount standby database 
正在執行內存腳本
sql  語句: alter database mount standby database
內存腳本的內容:
 set newname for tempfile 1 to
  E:\U01\ORADATA\ORCL\TEMP01.DBF 
 switch clone tempfile all;
 set newname for datafile 1 to
  E:\U01\ORADATA\ORCL\SYSTEM01.DBF 
 set newname for datafile 2 to
  E:\U01\ORADATA\ORCL\SYSAUX01.DBF 
 set newname for datafile 3 to
  E:\U01\ORADATA\ORCL\UNDOTBS01.DBF 
 set newname for datafile 4 to
  E:\U01\ORADATA\ORCL\USERS01.DBF 
 set newname for datafile 5 to
  E:\U01\ORADATA\ORCL\GIS01.DBF 
 set newname for datafile 6 to
  E:\U01\ORADATA\ORCL\GIS02.DBF 
 set newname for datafile 7 to
  E:\U01\ORADATA\ORCL\GIS03.DBF 
 set newname for datafile 8 to
  E:\U01\ORADATA\ORCL\GIS04.DBF 
 set newname for datafile 9 to
  E:\U01\ORADATA\ORCL\GIS05.DBF 
 set newname for datafile 10 to
  E:\U01\ORADATA\ORCL\GIS06.DBF 
 set newname for datafile 11 to
  E:\U01\ORADATA\ORCL\GIS07.DBF 
 set newname for datafile 12 to
  E:\U01\ORADATA\ORCL\GIS08.DBF 
 set newname for datafile 13 to
  E:\U01\ORADATA\ORCL\GIS09.DBF 
 set newname for datafile 14 to
  E:\U01\ORADATA\ORCL\GIS10.DBF 
 restore
 clone database
 ;
正在執行內存腳本
正在執行命令: SET NEWNAME
臨時文件  1  在控制文件中已重命名為  E:\U01\ORADATA\ORCL\TEMP01.DBF
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
啟動  restore  于  26- 2 月  -16
使用通道  ORA_AUX_DISK_1
通道  ORA_AUX_DISK_1:  正在開始還原數據文件備份集
通道  ORA_AUX_DISK_1:  正在指定從備份集還原的數據文件
通道  ORA_AUX_DISK_1:  將數據文件  00001  還原到  E:\U01\ORADATA\ORCL\SYSTEM01.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00002  還原到  E:\U01\ORADATA\ORCL\SYSAUX01.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00006  還原到  E:\U01\ORADATA\ORCL\GIS02.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00008  還原到  E:\U01\ORADATA\ORCL\GIS04.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00010  還原到  E:\U01\ORADATA\ORCL\GIS06.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00012  還原到  E:\U01\ORADATA\ORCL\GIS08.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00014  還原到  E:\U01\ORADATA\ORCL\GIS10.DBF
通道  ORA_AUX_DISK_1:  正在讀取備份片段  D:\ORABAK\ORCL_FULL_DB_ORCL_20160226_39QUSTI8.BAK
通道  ORA_AUX_DISK_1:  段句柄  = D:\ORABAK\ORCL_FULL_DB_ORCL_20160226_39QUSTI8.BAK  標記  = TAG20160226T105816
通道  ORA_AUX_DISK_1:  已還原備份片段  1
通道  ORA_AUX_DISK_1:  還原完成,  用時: 02:08:38
通道  ORA_AUX_DISK_1:  正在開始還原數據文件備份集
通道  ORA_AUX_DISK_1:  正在指定從備份集還原的數據文件
通道  ORA_AUX_DISK_1:  將數據文件  00003  還原到  E:\U01\ORADATA\ORCL\UNDOTBS01.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00004  還原到  E:\U01\ORADATA\ORCL\USERS01.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00005  還原到  E:\U01\ORADATA\ORCL\GIS01.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00007  還原到  E:\U01\ORADATA\ORCL\GIS03.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00009  還原到  E:\U01\ORADATA\ORCL\GIS05.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00011  還原到  E:\U01\ORADATA\ORCL\GIS07.DBF
通道  ORA_AUX_DISK_1:  將數據文件  00013  還原到  E:\U01\ORADATA\ORCL\GIS09.DBF
通道  ORA_AUX_DISK_1:  正在讀取備份片段  D:\ORABAK\ORCL_FULL_DB_ORCL_20160226_38QUSTI8.BAK
通道  ORA_AUX_DISK_1:  段句柄  = D:\ORABAK\ORCL_FULL_DB_ORCL_20160226_38QUSTI8.BAK  標記  = TAG20160226T105816
通道  ORA_AUX_DISK_1:  已還原備份片段  1
通道  ORA_AUX_DISK_1:  還原完成,  用時: 02:36:38
完成  restore  于  26- 2 月  -16
內存腳本的內容:
 switch clone datafile all;
正在執行內存腳本
數據文件  1  已轉換成數據文件副本
輸入數據文件副本  RECID=2 STAMP=904861333  文件名 =E:\U01\ORADATA\ORCL\SYSTEM01.DBF
數據文件  2  已轉換成數據文件副本
輸入數據文件副本  RECID=3 STAMP=904861334  文件名 =E:\U01\ORADATA\ORCL\SYSAUX01.DBF
數據文件  3  已轉換成數據文件副本
輸入數據文件副本  RECID=4 STAMP=904861334  文件名 =E:\U01\ORADATA\ORCL\UNDOTBS01.DBF
數據文件  4  已轉換成數據文件副本
輸入數據文件副本  RECID=5 STAMP=904861334  文件名 =E:\U01\ORADATA\ORCL\USERS01.DBF
數據文件  5  已轉換成數據文件副本
輸入數據文件副本  RECID=6 STAMP=904861334  文件名 =E:\U01\ORADATA\ORCL\GIS01.DBF
數據文件  6  已轉換成數據文件副本
輸入數據文件副本  RECID=7 STAMP=904861334  文件名 =E:\U01\ORADATA\ORCL\GIS02.DBF
數據文件  7  已轉換成數據文件副本
輸入數據文件副本  RECID=8 STAMP=904861334  文件名 =E:\U01\ORADATA\ORCL\GIS03.DBF
數據文件  8  已轉換成數據文件副本
輸入數據文件副本  RECID=9 STAMP=904861334  文件名 =E:\U01\ORADATA\ORCL\GIS04.DBF
數據文件  9  已轉換成數據文件副本
輸入數據文件副本  RECID=10 STAMP=904861335  文件名 =E:\U01\ORADATA\ORCL\GIS05.DBF
數據文件  10  已轉換成數據文件副本
輸入數據文件副本  RECID=11 STAMP=904861335  文件名 =E:\U01\ORADATA\ORCL\GIS06.DBF
數據文件  11  已轉換成數據文件副本
輸入數據文件副本  RECID=12 STAMP=904861335  文件名 =E:\U01\ORADATA\ORCL\GIS07.DBF
數據文件  12  已轉換成數據文件副本
輸入數據文件副本  RECID=13 STAMP=904861335  文件名 =E:\U01\ORADATA\ORCL\GIS08.DBF
數據文件  13  已轉換成數據文件副本
輸入數據文件副本  RECID=14 STAMP=904861335  文件名 =E:\U01\ORADATA\ORCL\GIS09.DBF
數據文件  14  已轉換成數據文件副本
輸入數據文件副本  RECID=15 STAMP=904861335  文件名 =E:\U01\ORADATA\ORCL\GIS10.DBF
完成  Duplicate Db  于  26- 2 月  -16

12. 將主庫的 LOG_ARCHIVE_DEST_STATE_2 設置為 ENABLE

ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2= ENABLE

13. 添加 standby redo log – 如本身主庫已建立 standby redo log,此步驟可省去

SQL  select member from v$logfile;

# 主庫增加  STANDBY LOGFILE

ALTER DATABASE ADD STANDBY LOGFILE group 4(E:\u01\oradata\standby_log\slog1.rdo) SIZE 200M;
ALTER DATABASE ADD STANDBY LOGFILE group 5(E:\u01\oradata\standby_log\slog2.rdo) SIZE 200M;
ALTER DATABASE ADD STANDBY LOGFILE group 6(E:\u01\oradata\standby_log\slog3.rdo) SIZE 200M;
ALTER DATABASE ADD STANDBY LOGFILE group 7(E:\u01\oradata\standby_log\slog4.rdo) SIZE 200M;

# 備庫增加 STANDBY LOGFILE

SQL select member from v$logfile; 

ALTER DATABASE ADD STANDBY LOGFILE group 4(E:\u01\oradata\standby_log\slog1.rdo) SIZE 200M;
ALTER DATABASE ADD STANDBY LOGFILE group 5(E:\u01\oradata\standby_log\slog2.rdo) SIZE 200M;
ALTER DATABASE ADD STANDBY LOGFILE group 6(E:\u01\oradata\standby_log\slog3.rdo) SIZE 200M;
ALTER DATABASE ADD STANDBY LOGFILE group 7(E:\u01\oradata\standby_log\slog4.rdo) SIZE 200M;

14. 最后在備庫開啟 active dataguard

SQL  ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;
SQL  ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; 
SQL  ALTER DATABASE OPEN;
SQL  ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;

到此,相信大家對“怎么搭建 dataguard”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-26發表,共計11261字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 江北区| 衡山县| 灵丘县| 胶南市| 齐齐哈尔市| 泽普县| 平果县| 平遥县| 肇州县| 江油市| 永安市| 阳山县| 湟源县| 乐东| 威宁| 安义县| 淮滨县| 潼关县| 出国| 万年县| 确山县| 安康市| 泽普县| 平谷区| 蕲春县| 大丰市| 内丘县| 雷山县| 巫溪县| 聂拉木县| 鄂温| 凉山| 阜康市| 沈丘县| 大石桥市| 曲松县| 濮阳市| 和政县| 宁国市| 新竹市| 三明市|