리두/아카이브 로그 이중화


1. 리두로그 이중화 


select a.group#, a.member, b.bytes/1024/1024 mb, b.sequence#, b.archived, b.status

from v$logfile a, v$log b

where a.group#=b.group#

order by 1,2;


current -> active 

alter system switch logfile;


active -> inactive

alter system checkpoint;


#####################################################


리두로그 그룹추가

alter database add logfile group 그룹번호

   '리두로그파일명' size 크기;


alter database add logfile group 4

   '/home/oracle/oradata/testdb/redo04.log' size 10M;


리두로그 맴버추가

alter database add logfile member

   '리두로그파일명' to group 그룹번호;


alter database add logfile member

   '/home/oracle/oradata/testdb/redo04_b.log' to group 4;


리두로그 그룹 삭제

  - 해당 그룹에 멤버가 1개밖에 남지 않았다면 그룹삭제를 해야만 지울 수 있다.


  - 8i까지는 멤버가 2개 이상 들어있는 그룹을 한번에 삭제 불가능했다. 꼭 멤버 하나가 남게 한다음 그룹삭제가 가능했다. 

하지만 9i부터는 그룹에 멤버가 여러 개 있어도 그룹을 한방에 삭제 가능하다.

  

  - INACTIVE만 삭제 가능하다. 

  

  - 리두로그파일 상태 조회 쿼리를 날려서 리두로그파일의 상태를 확인 후 로그스위치를 날려서 CURRENT는 ACTIVE로 바꾼 후, 

체크포인트를 날려서 ACTIVE를 INACTIVE로 바꾼 후 삭제를 하면 된다.

  

  - OS명령어로 파일 먼저 삭제하고 alter명령을 날리면 에러가 나면서 안지워진다.

 왜냐하면 alter명령을 날리면 서버프로세스가 컨트롤파일 안에 있는 리두로그파일의 명단과 위치를 보고 찾아가서 있으면 지우는데, 

가보니 이미 OS명령어로 삭제했다면 해당 파일이 없다며 에러를 띄우게 된다.


alter database drop logfile group 그룹번호;

alter database drop logfile group 4;


리두로그 멤버 삭제

  - INACTIVE만 삭제 가능하다.

alter database drop logfile member

   '리두로그파일명';


alter database drop logfile member

   '/home/oracle/oradata/testdb/redo04_b.log';


#####################################################


운영중인 아카이브모드 서버에 이미 그룹 갯수가 충분하므로(현재 5개다) 각 그룹에 멤버들만 추가해주면 된다.


## 원래 위치는 /data1/oradata/ASPDB/redo1.log redo2.log ......


alter database add logfile member

   '/data1/Backup/redo/redo1-bkp.log' to group 1;


alter database add logfile member

   '/data1/Backup/redo/redo2-bkp.log' to group 2;


alter database add logfile member

   '/data1/Backup/redo/redo3-bkp.log' to group 3;


alter database add logfile member

   '/data1/Backup/redo/redo4-bkp.log' to group 4;


alter database add logfile member

   '/data1/Backup/redo/redo5-bkp.log' to group 5;



2. 아카이브로그 이중화

alter system set log_archive_dest_2='location=/data1/Backup/archive'

select * from v$archive_dest


alter system switch logfile 로 아카이브 생성 확인

'리눅스ETC' 카테고리의 다른 글

rsync 에러  (0) 2016.03.30
drbd 설치  (0) 2016.03.30
오라클 커넥션 에러  (0) 2016.03.30
오라클 리스너 로그 로테이트 시키기  (0) 2016.03.30
재설치를 위해 기존 오라클 삭제하기  (0) 2016.03.30

to Top