'DATAGUARD'에 해당되는 글 4건

  1. 2015.07.09 dataguard 에서 sys password
  2. 2015.06.17 dataguard 모니터링 스크립트
  3. 2015.06.17 dataguard stop, start 절차
  4. 2015.06.17 dataguard archive policy


Dataguard 환경에서 sys의 암호를 바꾸면 passwd 화일을 standby 로 copy 해줘야 ora-16191 에러가 안 난다.


매번 Copy 하기 귀찮으면 DB단에서..


SQL> GRANT SYSOPER to &USER; 


SQL> ALTER SYSTEM SET REDO_TRANSPORT_USER = <user_name> SID='*';

Posted by pat98

- Primary 쪽 확인 -

 

set pages 500
select thread#, sequence# from v$thread;

select dest_id, database_mode, recovery_mode, protection_mode,
standby_logfile_count,standby_logfile_active,archived_seq#, status
from v$archive_dest_status
where rownum <=2;

set lines 150
col destination format a30
col error format a20
select dest_id,destination,status,target,schedule,process,error from v$archive_dest
where rownum <=2;


 

- Standby 쪽 확인 -

 

SET HEADING OFF
prompt ==================================================================
prompt = Data Guard Monitor for Standby Site
select '= Time Computed: '||MIN(TIME_COMPUTED)
from v$dataguard_stats
/
prompt ==================================================================

SET PAGESIZE 124
SET HEADING ON
SET FEEDBACK OFF
SET TIMING OFF
COL DB_NAME FORMAT A8
COL HOSTNAME FORMAT A10
COL switchover_status FORMAT A15
COL RECEIVED1 FORMAT 999999
COL APPLIED1 FORMAT 9999
COL RECEIVED2 FORMAT 999999
COL APPLIED2 FORMAT 9999
COL APPLIED_TIME FORMAT A20
COL RECEIVED_TIME2 FORMAT A20
COL APPLIED_TIME2 FORMAT A20
COL RECEIVED_TIME FORMAT A20
COL MRP_DELAY FORMAT A5
COL NAME FORMAT A40
COL VALUE FORMAT A30


SELECT DB_NAME, database_role,switchover_status, open_mode, HOSTNAME
FROM
(
SELECT NAME DB_NAME, database_role, open_mode,switchover_status
FROM V$DATABASE
),
(
SELECT UPPER(SUBSTR(HOST_NAME,1,(DECODE(INSTR(HOST_NAME,'.'),0,LENGTH(HOST_NAME),
(INSTR(HOST_NAME,'.')-1))))) HOSTNAME
FROM V$INSTANCE
)
/

prompt
prompt ==================================================================
prompt = Standby Log Status
prompt ==================================================================
select THREAD#,GROUP#,STATUS from v$standby_log order by GROUP#;

prompt
prompt ==================================================================
prompt = LOG RECEIVED  and APPLIED STATUS
prompt ==================================================================
prompt '                       THREAD#1                           THREAD#2             '
prompt '            ------------------------------   ----------------------------------'

set heading off
SELECT 'RECEIVED'||chr(9)||rtrim(received1)||'-> '||received_time1||chr(9)||rtrim(received2)||'-> '||received_time2
FROM
(select max(sequence#) received1, to_char(max(next_time),'YYYY/MM/DD HH24:MI:SS') RECEIVED_TIME1
from V$ARCHIVED_LOG
where thread#=1
),
(select max(sequence#) received2, to_char(max(next_time),'YYYY/MM/DD HH24:MI:SS') RECEIVED_TIME2
from V$ARCHIVED_LOG
where thread#=2
)
/


SELECT 'APPLIED '||chr(9)||rtrim(applied1)||'-> '||applied_time1||chr(9)||rtrim(applied2)||'-> '||applied_time2
from
(select MAX(SEQUENCE#) applied1, TO_CHAR(MAX(COMPLETION_TIME),'YYYY/MM/DD HH24:MI:SS') APPLIED_TIME1
from V$ARCHIVED_LOG where applied='YES' and thread#=1
),
(select MAX(SEQUENCE#) applied2, TO_CHAR(MAX(COMPLETION_TIME),'YYYY/MM/DD HH24:MI:SS') APPLIED_TIME2
from V$ARCHIVED_LOG where applied='YES' and thread#=2
)
/

prompt
SET HEADING OFF

prompt ==================================================================
prompt = DG Stats
prompt ==================================================================

select
NAME,
VALUE Value
from v$dataguard_stats
/

SET HEADING ON

prompt

prompt ==================================================================
prompt = MRP Status (No Rows Return) => MRP down
prompt ==================================================================

COL MRP_DELAY FORMAT A10

select inst_id,process, mrp_delay_setting
from
(select inst_id,process
 from gv$managed_standby where process like 'MRP%'
),
(
select to_char(delay_mins) MRP_DELAY_SETTING from gv$managed_standby where process = 'MRP0'
)
/

prompt

Posted by pat98

- Dataguard stop 절차

 

standby에서

 

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

 

Primary에서

 

SQL> ALTER SYSTEM SET log_archive_dest_state_2='DEFER' SCOPE=BOTH SID='*';

 

        srvctl stop database -d RAC or shutdown immediate

 

- Dataguard start 절차

 

standby에서

 

SQL> startup mount

 

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DICONNECT;

 

primary에서


SQL> ALTER SYSTEM SET log_archive_dest_state_2='ENABLE' SCOPE=BOTH SID='*';

       

        srvctl start database -d RAC  or startup

 

Posted by pat98

2015. 6. 17. 10:47 오라클

dataguard archive policy


Dataguard 에서 archive log 를 막 지우지 않고 standby 에 redo apply 된거 확인하고 지우고 싶다면?

primary에서

CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;


Posted by pat98
이전버튼 1 이전버튼

04-27 21:14
Flag Counter
Yesterday
Today
Total

글 보관함

최근에 올라온 글

달력

 « |  » 2024.4
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

최근에 달린 댓글