일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 데이터베이스
- ogg
- oracle goldengate
- 오라클구조
- 오라클아키텍쳐
- 오지지
- Oracle
- ORACLE19C
- 티베로
- 디비투
- Oracle 19c
- oracle recovery
- oracle installation
- 데이터가드
- 19c
- goldengate
- ActiveDataGuard
- Opatch
- OracleGoldenGate
- 사일런트모드
- Database
- 오라클
- adg
- SILENTMODE
- Installation
- linux
- SSH
- DataGuard
- diskgroup
- 오라클설치
- Today
- Total
DoubleDBDeep
[ORACLE] Data Guard Broker 설정 및 사용하기 본문
현재 ADG 구축상태
2023.05.15 - [ORACLE/OGG] - [ORACLE] Active Data Guard
[ORACLE] Active Data Guard
참고 docs https://docs.oracle.com/en/database/oracle/oracle-database/19/sbydb/oracle-data-guard-concepts.html#GUID-F78703FB-BD74-4F20-9971-8B37ACC40A65 Concepts and Administration docs.oracle.com ADG - Standby Database (DR DB)를 생성하여 운영 데
devcami.tistory.com
Data Guard Broker
DG 구성의 생성 , 유지보수 , 모니터링 등을 자동화하고 중앙 집중화 하는 분산 관리 framework
Broker
Learn about Oracle Data Guard broker, its architecture and components, and how it automates the creation, control, and monitoring of an Oracle Data Guard configuration.
docs.oracle.com
Broker가 단순화 및 자동화 해주는 작업들
- DG 구성 관련 리두 전송 및 로그 적용 서비스와 함께 생성
- DG 구성 추가
- 보호모드 관리
- 전환 또는 장애조치 시작, 역할 변경, 시작 및 제어
- primary가 손실될 때 자동으로 실행되는 장애 조치 구성 (수동 조작 없이 가용성 향상)
- 전체 구성 상태 모니터링, 진단 정보 검색, 리두 적용률 및 생성률과 같은 통계 보고서, 중앙 집중식 모니터링, 테스트 및 성능 도구를 사용한 문제 감지
등등이 있다.
즉 DataGuard를 더 사용하기 쉽게 하기위한 하나의 툴임
- DG Broker 프로세스 모니터링 동적 뷰 - V$DATAGUARD_PROCESS (NAME : DMON)
- DGMGRL : DG Broker 명령행 인터페이스로, 프롬프트 또는 스크립트 내에서 DG를 제어 및 모니터링
사용법
환경 : primary database / oracle 계정 환경 / SYS 유저 / dgmgrl 로 접속하여 사용
primary db name : rac
standby db name : racdr
- 사전 준비 : DGMGRL 사용을 위한 PARAMETER 설정 (primary, standby)
alter system set DG_BROKER_START=TRUE scope=both sid='*' ;
- DGMGRL 접속
# TNS를 사용한 접속
dgmgrl sys/PASSWORD@rac
# 로컬 접속
dgmgrl sys/PASSWORD
DGMGRL for Linux: Release 19.0.0.0.0 - Production on Mon May 15 14:42:21 2023
Version 19.17.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
Welcome to DGMGRL, type "help" for information.
Connected to "rac"
Connected as SYSDBA.
- CONFIGURATION 등록
Configuration : DataGuard Broker 환경 구성
Broker를 처음 시작 시 자동으로 config file이 생성된다.
# CONFIGURATION 등록
- PRIMARY 등록
CREATE CONFIGURATION DG_EM AS PRIMARY DATABASE IS rac CONNECT IDENTIFIER IS rac ;
Configuration "dg_em" created with primary database "rac"
- STANDBY 등록
ADD DATABASE racdr AS CONNECT IDENTIFIER IS racdr MAINTAINED AS PHYSICAL ;
Database "racdr" added
* 참고 : STANDBY 추가 시 ORA-16698 에러
Error: ORA-16698: member has a LOG_ARCHIVE_DEST_n parameter with SERVICE attribute set
원인 : STANDBY의 LOG_ARCHIVE_DEST_2 PARAMETER가 설정되어있음
해결 방법 : ALTER SYSTEM RESET LOG_ARCHIVE_DEST_2 SCOPE=BOTH SID='*';
- CONFIGURATION 등록 확인
DGMGRL> SHOW CONFIGURATION ;
Configuration - dg_em
Protection Mode: MaxPerformance
Members:
rac - Primary database
racdr - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
DISABLED
- CONFIGURATION 상세 옵션 내역 확인
DGMGRL> show configuration verbose ;
Configuration - dg_em
Protection Mode: MaxPerformance
Members:
rac - Primary database
racdr - Physical standby database
Properties:
FastStartFailoverThreshold = '30'
OperationTimeout = '30'
TraceLevel = 'USER'
FastStartFailoverLagLimit = '30'
CommunicationTimeout = '180'
ObserverReconnect = '0'
FastStartFailoverAutoReinstate = 'TRUE'
FastStartFailoverPmyShutdown = 'TRUE'
BystandersFollowRoleChange = 'ALL'
ObserverOverride = 'FALSE'
ExternalDestination1 = ''
ExternalDestination2 = ''
PrimaryLostWriteAction = 'CONTINUE'
ConfigurationWideServiceName = 'rac_CFG'
Fast-Start Failover: Disabled
Configuration Status:
SUCCESS
- Broker 활성화
ENABLE CONFIGURATION ;
* 참고 : ASM DISK 사용 시 나타나는 ORA-16532 에러
DGMGRL> SHOW CONFIGURATION ;
Configuration - dg_em
Protection Mode: MaxPerformance
Members:
rac - Primary database
Warning: ORA-16532: Oracle Data Guard broker configuration does not exist
racdr - Physical standby database
Warning: ORA-16809: multiple warnings detected for the member
Fast-Start Failover: Disabled
Configuration Status:
WARNING (status updated 7 seconds ago)
원인 : ORA-16532 // PRIMARY의 DG_BROKER_CONFIG_FILE[1/2]가 ASM이 아님
SQL> show parameter dg_broker
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
dg_broker_config_file1 string /u01/app/oracle/product/19.0.0/dbhome_1/dbs/dr1rac.dat
dg_broker_config_file2 string /u01/app/oracle/product/19.0.0/dbhome_1/dbs/dr2rac.dat
해결 방법 : 해당 파일을 ASM DISK로 이동
CREATE DIRECTORY DG_FS AS '/u01/app/oracle/product/19.0.0/dbhome_1/dbs' ;
CREATE DIRECTORY DG_ASM AS '+DATA/ADG' ;
1. BROKER 중지 // DISABLE CONFIGURATION ;
2. DMON 중지 // alter system set dg_broker_start=false ;
3. 파일명 변경 //
alter system set dg_broker_config_file1='+DATA/ADG/dr1rac.dat' scope=both sid='*';
alter system set dg_broker_config_file2='+DATA/ADG/dr2rac.dat' scope=both sid='*';
alter system set dg_broker_config_file1='+DATA/ADG/dr1racdr.dat' scope=both sid='*';
alter system set dg_broker_config_file2='+DATA/ADG/dr2racdr.dat' scope=both sid='*';
4. 파일 위치 변경 //
BEGIN DBMS_FILE_TRANSFER.COPY_FILE('DG_FS', 'dr1rac.dat', 'DG_ASM', 'dr1rac.dat'); END;
BEGIN DBMS_FILE_TRANSFER.COPY_FILE('DG_FS', 'dr2rac.dat', 'DG_ASM', 'dr2rac.dat'); END;
BEGIN DBMS_FILE_TRANSFER.COPY_FILE('DG_FS', 'dr1racdr.dat', 'DG_ASM', 'dr1racdr.dat'); END;
BEGIN DBMS_FILE_TRANSFER.COPY_FILE('DG_FS', 'dr2racdr.dat', 'DG_ASM', 'dr2racdr.dat'); END;
5. DMON 시작 // alter system set dg_broker_start=true ;
6. BROKER 시작 // ENABLE CONFIGURATION ;
7. 확인 // SHOW CONFIGURATION;
DGMGRL> SHOW CONFIGURATION;
Configuration - dg_em
Protection Mode: MaxPerformance
Members:
rac - Primary database
racdr - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
SUCCESS (status updated 44 seconds ago)
- Database 확인
standby
DGMGRL> SHOW DATABASE RACDR
Database - racdr
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: 0 seconds (computed 1 second ago)
Apply Lag: 0 seconds (computed 0 seconds ago)
Average Apply Rate: 1.97 MByte/s
Real Time Query: ON
Instance(s):
racdr1 (apply instance)
racdr2
Database Status:
SUCCESS
# 데이터베이스 구성정보 상세확인 - 지정된 옵션까지 확인 가능
DGMGRL> show database verbose 'racdr' ;
primary
DGMGRL> show database rac
Database - rac
Role: PRIMARY
Intended State: TRANSPORT-ON
Instance(s):
rac1
rac2
Database Status:
SUCCESS
# 데이터베이스 구성정보 상세확인 - 지정된 옵션까지 확인 가능
DGMGRL> show database verbose 'rac' ;
관리
1. primary -> standby 로 redo data 전송 끄기 / 켜기
# 전송 끄기
EDIT DATABASE rac SET STATE='TRANSPORT-OFF' ;
Succeeded.
# 전송 켜기
EDIT DATABASE rac SET STATE='TRANSPORT-ON' ;
Succeeded.
2. standby에서 redo data 전용 끄기 / 켜기
# 적용 끄기
EDIT DATABASE racdr SET STATE='APPLY-OFF' ;
# 적용 켜기
EDIT DATABASE racdr SET STATE='APPLY-ON' ;
3. Configuration Status 정보
Success | 모든 데이터베이스가 오류 및 경고 없음 |
Warning | 하나 이상의 데이터베이스에서 지정한대로의 조작 수행 불가 상태 상세 확인 : show database <db-unique-name> |
Error | 하나 이상의 데이터베이스에서 장애 발생으로 조작 수행 불가 상태 상세 확인 : show database <db-unique-name> |
Unknown/Disabled | 브로커 관리 사용 불가능, 데이터베이스 상태 모니터링 하지 않음 |
ROLLING DATABASE MAINTENANCE IN PROGRESS | PL/SQL DBMS_ROLLING Package가 수행 중 |
4. 속성값 초기화
# 특정 DATABASE의 속성 리셋
EDIT DATABASE 'DB-UNQ-NAME' RESET PROPERTY [속성명];
# 특정 속성값 리셋
EDIT CONFIGURATION RESET PROPERTY [속성명];
5. 속성값 변경
# database 전체 상세 속성 확인
show database verbose 'unique-dbname' ;
# database 특정 속성 확인
show database 'unique-dbname' '속성명';
# 특정 속성 변경
edit database 'unique-dbname' set property 속성명='value' ;
6. Redo 전송 서비스 모드 관리
전송모드 | 내용 |
SYNC | 최대 보호모드 또는 최대 가용성 모드로 작동 최고 수준의 데이터 보호를 제공하지만, 성능에 큰 영향을 줄 수 있음 |
ASYNC | 적당한 수준의 데이터 보호로 성능에 미치는 영향을 줄임 |
FASTSYNC | 최대 가용성 보호모드에서만 사용 가능한 모드 |
EDIT DATABASE 'unique-dbname' SET PROPERTY 'RedoRoutes' = '(primary : standby [전송모드])' ;
또는
EDIT DATABASE 'unique-dbname' SET PROPERTY 'LogXptMode'='모드' ;
7. 전송 경고 관련
# 전송 지연 SECOND 초 이상 시 경고 생성 (DEFAULT = 30)
EDIT DATABASE 'DB-UNQ-NAME' SET PROPERTY 'TransportLagThreshold'=[SECOND];
# 전송 통신 없음 SECOND 초 이상 시 경고 생성 (DEFAULT = 30)
EDIT DATABASE 'DB-UNQ-NAME' SET PROPERTY 'TransportDisconnectedThreshold'=[SECOND];
8. 특정 데이터베이스 등록 삭제
REMOVE DATABASE 'DB-UNQ-NAME';
9. configuration 삭제
REMOVE CONFIGURATION ;
'ORACLE > OGG | ADG' 카테고리의 다른 글
[ORACLE] OGG core 19.1 install 설치 / Oracle 11g to 19c 동기화 (0) | 2024.02.20 |
---|---|
[ORACLE] Data Guard 관련 내용 정리 (0) | 2023.12.20 |
[ORACLE] ADG : Cascaded Redo Transport Destinations (0) | 2023.08.02 |
[ORACLE] ADG : Snapshot Standby (0) | 2023.08.02 |
[ORACLE] Active Data Guard (0) | 2023.05.15 |