"Rac 아카이브모드"의 두 판 사이의 차이
DB CAFE
1번째 줄: | 1번째 줄: | ||
− | = RAC 환경 아카이브 로그 전환 방법 = | + | == RAC 환경 아카이브 로그 전환 방법 == |
0.아카이브로그 모드 확인 | 0.아카이브로그 모드 확인 | ||
42번째 줄: | 42번째 줄: | ||
+ | == 노드별 작업 방법 == | ||
+ | ※ 설명 | ||
+ | : Raw device 환경에서 archive log file은 각 로컬 노드에 저장해야 한다. | ||
+ | : 이유 - raw device(공유스토리지) 에서는 하나의 파일이 하나의 디스크처럼 취급되는데, | ||
+ | log switch 가 생길 때마다 Archive redo log file 이 생기게 되면 | ||
+ | 그 파일들을 일일이 raw device 를 생성해 줄 수 없기 때문이다. | ||
+ | # 양쪽 노드 모두 shutdown immediate 수행 | ||
+ | # 한쪽 노드만 마운트 단계로 시작 startup mount | ||
+ | # Alter system set log_archive_dest_1='location=/data/arc1'; | ||
+ | # Alter system set log_archive_dest_2='location=/data/arc2'; | ||
+ | # Alter database archivelog; | ||
+ | # Alter database open; | ||
+ | # Archive log list 로 결과 확인 후, 다른 노드에서도 2,3,4 단계 수행 (#1에서 변경한 상태면, #2는 해당 디렉토리만 만들고 open하면 적용됨) | ||
+ | |||
+ | |||
+ | === [노드1], [노드2] DB 정지 === | ||
+ | <source lang=sql> | ||
+ | SQL> shutdown immediate; | ||
+ | </source> | ||
+ | |||
+ | === [노드1] 아카이브로그 디렉토리 생성 === | ||
+ | <source lang=sql> | ||
+ | [root@rac1 ~]# mkdir -p /data/arc1 | ||
+ | [root@rac1 ~]# mkdir -p /data/arc2 | ||
+ | [root@rac1 ~]# chown oracle.dba -R /data/ | ||
+ | [root@rac1 ~]# ls -lSh /data/ | ||
+ | </source> | ||
+ | * 로그저장위치를 미리 작업해 둔다. | ||
+ | === [노드1] 마운트로 시작 === | ||
+ | <source lang=sql> | ||
+ | SQL> startup mount | ||
+ | </source> | ||
+ | <source lang=sql> | ||
+ | SQL> alter system set log_archive_dest_1='location=/data/arc1'; | ||
+ | SQL> alter system set log_archive_dest_2='location=/data/arc2'; | ||
+ | </source> | ||
+ | === [노드1] 아카이브 로그 모드 로 변경 === | ||
+ | <source lang=sql> | ||
+ | SQL> alter database archivelog; | ||
+ | </source> | ||
+ | === [노드1] DB 오픈 변경 === | ||
+ | <source lang=sql> | ||
+ | SQL> alter database open; | ||
+ | </source> | ||
+ | === [노드1] 아카이브 로그 상태 확인 === | ||
+ | <source lang=sql> | ||
+ | SQL> archive log list; | ||
+ | </source> | ||
+ | |||
+ | |||
+ | === [노드2] 아카이브로그 디렉토리 생성 === | ||
+ | <source lang=sql> | ||
+ | [root@rac2 ~]# mkdir -p /data/arc1 | ||
+ | [root@rac2 ~]# mkdir -p /data/arc2 | ||
+ | [root@rac2 ~]# chown oracle.dba -R /data/ | ||
+ | </source> | ||
+ | * 아카이브로그모드로 변경후 DB오픈 하기 전에 양쪽노드(rac1,rac2)에 해당 디렉토리가 존재해야 한다는 것이다. | ||
+ | |||
+ | === [노드2] DB시작 === | ||
+ | SQL> startup | ||
+ | |||
+ | SQL> archive log list | ||
+ | Database log mode Archive Mode | ||
+ | Automatic archival Enabled | ||
+ | Archive destination /data/arc2 | ||
+ | Oldest online log sequence 3 | ||
+ | Next log sequence to archive 4 | ||
+ | Current log sequence 4 | ||
+ | |||
+ | --- --- --- --- --- --- | ||
[[Category:oracle]] | [[Category:oracle]] |
2021년 3월 23일 (화) 22:11 판
thumb_up 추천메뉴 바로가기
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
목차
1 RAC 환경 아카이브 로그 전환 방법[편집]
0.아카이브로그 모드 확인
$ sqlplus / as sysdba
sql> archive log list;
1.DB 종료 (stop/immediate)
$ srvctl stop database -d <DB명> -o immediate;
2.DB MOUNT 모드로 시작
$ srvctl start database -d <DB명> -o mount
3.아카이브 모드로 변경(sqlplus 작업)
$ sqlplus / as sysdba
sql> alter database archivelog;
sql> exit;
4.DB 종료
$ srvctl stop database -d <DB명> -o immediate;
5.DB 시작
$ srvctl start database -d <DB명>
6.아카이브로그 모드 확인
sql> archive log list;
2 노드별 작업 방법[편집]
※ 설명
: Raw device 환경에서 archive log file은 각 로컬 노드에 저장해야 한다. : 이유 - raw device(공유스토리지) 에서는 하나의 파일이 하나의 디스크처럼 취급되는데, log switch 가 생길 때마다 Archive redo log file 이 생기게 되면 그 파일들을 일일이 raw device 를 생성해 줄 수 없기 때문이다.
- 양쪽 노드 모두 shutdown immediate 수행
- 한쪽 노드만 마운트 단계로 시작 startup mount
- Alter system set log_archive_dest_1='location=/data/arc1';
- Alter system set log_archive_dest_2='location=/data/arc2';
- Alter database archivelog;
- Alter database open;
- Archive log list 로 결과 확인 후, 다른 노드에서도 2,3,4 단계 수행 (#1에서 변경한 상태면, #2는 해당 디렉토리만 만들고 open하면 적용됨)
2.1 [노드1], [노드2] DB 정지[편집]
SQL> shutdown immediate;
2.2 [노드1] 아카이브로그 디렉토리 생성[편집]
[root@rac1 ~]# mkdir -p /data/arc1
[root@rac1 ~]# mkdir -p /data/arc2
[root@rac1 ~]# chown oracle.dba -R /data/
[root@rac1 ~]# ls -lSh /data/
- 로그저장위치를 미리 작업해 둔다.
2.3 [노드1] 마운트로 시작[편집]
SQL> startup mount
SQL> alter system set log_archive_dest_1='location=/data/arc1';
SQL> alter system set log_archive_dest_2='location=/data/arc2';
2.4 [노드1] 아카이브 로그 모드 로 변경[편집]
SQL> alter database archivelog;
2.5 [노드1] DB 오픈 변경[편집]
SQL> alter database open;
2.7 [노드2] 아카이브로그 디렉토리 생성[편집]
[root@rac2 ~]# mkdir -p /data/arc1
[root@rac2 ~]# mkdir -p /data/arc2
[root@rac2 ~]# chown oracle.dba -R /data/
- 아카이브로그모드로 변경후 DB오픈 하기 전에 양쪽노드(rac1,rac2)에 해당 디렉토리가 존재해야 한다는 것이다.
2.8 [노드2] DB시작[편집]
SQL> startup
SQL> archive log list Database log mode Archive Mode Automatic archival Enabled Archive destination /data/arc2 Oldest online log sequence 3 Next log sequence to archive 4 Current log sequence 4
--- --- --- --- --- ---