ADG (ACTIVE DATA GUARD)
오라클이 제공하는 무중단 재해복구 솔루션으로 운영단에 문제가 생기더라도 빠른 전환을 통해서 서비스를 제공할 수 있다.
MRP 프로세스가 recovery 를 하면서 갭을 줄이게 되는데 어떤 문제로 인해서 갭이 발생하게 된다면 해당 프로세스를 내렸다 올리면 된다.
아래는 갭이 발생하여 SR에서 답을 받은것인데 사이트마다 구성이 다를수 있으므로 갭 발생시 그대로 하지 말고 SR을 올리자..
(밑에 있는데로 했다가 문제가 생겨도 내 책임 아니다;;)
alter database cover managed standby database cancel;
alter database cover managed standby database using current logfile disconnect;
alter database cover managed standby database cancel;
과정에서 hang이 발생할 경우 몇 번 더 시도해보고 안될경우 db를 내린다.
shutdown immediate
이 과정에서도 제대로 내려가지 않을경우에는 강제로 내렸다가 올린다.
shutdown abort
startup
이 후에는 mount 상태에서 recovery 를 하고 OPEN이 되던지 아니면 그냥 OPEN이 되던지 할것이다.
mount 상태에서 recovery 후 open 이 되었다면 MRP 프로세스가 정상적으로 떠 있는지 확인을 해야 한다.
내 경우에는 단 한번도 자동으로 떠 있는것을 보지 못하였다. 그럼 당연히 띄워줘야한다.
alter database cover managed standby database using current logfile disconnect;
정상적으로 실행이 되어 있는지 다시 한번 체크를 하고 rac 구성일 경우 노드를 확인한다.
이것역시 내 경우에는 2번 노드가 mount 상태로 되어 있어 정상적인 상태는 아니였기 때문에 2번 노트도 재기동 시켜주었다.
만약 mount 상테에서 recovery 없이 open이 되었고 여전히 갭이 있다면 위의 쿼리를 실행시켜 MRP 프로세스를 띄워주면 recovery 를 하게 된다.
마찬가지로 MRP프로세스가 떠 있는지 확인하고 2번 노드 확인하면 된다.
SELECT NAME, VALUE, UNIT FROM V$DATAGUARD_STATS;
select process,pid from V$managed_standby where process like '%MRP%';