원본 링크 : http://www.oracleclub.com/lecture/1975 ◈ 운영 중인 오라클의 로그 모드를 확인합니다. SQL> ARCHIVE LOG LIST; 데이터베이스 로그 모드 아카이브 모드가 아님 자동 아카이브 사용 안함 아카이브 대상 C:\oracle\ora92\RDBMS 가장 오래된 온라인 로그 순서 17 현재 로그 순서 19 |
◈ PFILE을 이용하여 ARCHIVE LOG MODE로 변경
1. 파라미터 파일에서 수정한다.(INIT<SID>.ORA파일의 parameter 수정)
# 아카이브 프로세스를 오라클 시작과 함께 실행하도록 설정 # log switch 발생시 자동으로 archive를 수행 합니다 LOG_ARCHIVE_START = TRUE # 아카이브 로그 파일을 저장할 디렉토리 설정 LOG_ARCHIVE_DEST = "C:\oracle\ora92\database\archive" # 아카이브 로그 파일의 이름 설정 LOG_ARCHIVE_FORMAT = %S.ARC 2. 데이터베이스를 종료 합니다(NORMAL, IMMEDIATE, TRANSACTIONAL) SQL> SHUTDOWN IMMEDIATE 3. 데이터베이스를 Mount 상태로 시작합니다. SQL> STARTUP MOUNT 4. ALTER DATABASE 명령을 사용하여 데이터베이스의 모드를 변경합니다. SQL> ALTER DATABASE ARCHIVELOG; 5. 데이터베이스를 OPEN합니다. SQL> ALTER DATABASE OPEN; 6. ARCHIVE LOG MODE가 정상적으로 설정되어 있는지 확인합니다. SQL> ARCHIVE LOG LIST; 데이터베이스 로그 모드 아카이브 모드 자동 아카이브 사용ㄴ 아카이브 대상 C:\oracle\ora92\database\archive 가장 오래된 온라인 로그 순서 17 아카이브할 다음 로그 19 현재 로그 순서 19 7. 데이터베이스에 대한 전체 백업을 수행합니다. |
※ LOG_ARCHIVE_FORMAT 옵션 - %S : redo 로그 시퀀스 번호를 표시하여 자동으로 왼쪽이 0으로 채워져 파일 이름 길이를 일정하게 만든다. - %s : redo 로그 시퀀스 번호를 표시하고, 파일 이름 길이를 일정하게 맞추지 않는다. - %T : redo 스레드 넘버를 표시하며, 자동으로 왼쪽이 0으로 채워져 파일 이름 길이를 일정하게 만든다. - %t : redo 스레드 넘버를 표시하며, 파일 이름 길이를 일정하게 맞추지 않는다. ※ NOARCHIVELOG 모드에서 ARCHIVELOG 모드로 변경한 후에는 Control file정보가 변경되어 이전의 백업본은 사용할 수 없으므로 반드시 모든 데이터파일 및 Control file을 백업하여야만 합니다.
◈ SPILE을 수정하여 데이터베이스를 ARCHIVE LOG MODE로 변경하기
1. SPFILE설정
-- sqlplus 실행 C:\> sqlplus /nolog -- SYSDBA 권한으로 접속 SQL> conn / as sysdba --LOG_ARCHIVE_START 파라미터 변경 SQL> ALTER SYSTEM SET LOG_ARCHIVE_START=TRUE SCOPE=SPFILE; --LOG_ARCHIVE_DEST 파라미터 변경 SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST=’C:\oracle\ora92\database\archive’ SCOPE=SPFILE; 2. 데이터베이스를 종료 합니다(NORMAL, IMMEDIATE, TRANSACTIONAL) SQL> SHUTDOWN IMMEDIATE
3. 데이터베이스를 Mount 상태로 시작합니다. SQL> STARTUP MOUNT
4. ALTER DATABASE 명령을 사용하여 데이터베이스의 모드를 변경합니다. SQL> ALTER DATABASE ARCHIVELOG;
5. 데이터베이스를 OPEN합니다. SQL> ALTER DATABASE OPEN;
6. ARCHIVE LOG MODE가 정상적으로 설정되어 있는지 확인합니다. SQL> ARCHIVE LOG LIST; 데이터베이스 로그 모드 아카이브 모드 자동 아카이브 사용ㄴ 아카이브 대상 C:\oracle\ora92\database\archive 가장 오래된 온라인 로그 순서 17 아카이브할 다음 로그 19 현재 로그 순서 19
7. 데이터베이스에 대한 전체 백업을 수행합니다.
|
|
|
|
spfile 파일 내용 [oracle@localhost dbs]$
cat spfileora9i.ora
Z³1(
*.aq_tm_processes=1
*.background_dump_dest='/usr/local/ora9i/admin/oracle/bdump'
*.compatible='9.2.0.0.0' *.control_files='/usr/local/ora9i/oradata/oracle/control01.ctl','/usr/local/ora9i/oradata/oracle/control02.ctl','/usr/local/ora9i/oradata/oracle/control03.ctl' *.core_dump_dest='/usr/local/ora9i/admin/oracle/cdump'
*.db_block_size=8192
*.db_cache_size=33554432 *.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=ora9iXDB)' *.fast_start_mttr_target=300
*.hash_join_enabled=TRUE
*.instance_name='ora9i'
*.java_pool_size=83886080
*.job_queue_processes=10
*.large_pool_size=16777216
*.log_archive_dest='/usr/local/ora9i/product/9.2.0/dbs/arch'
*.log_archive_start=TRUE *.open_cursors=300
*.pga_aggregate_target=25165824
*.processes=150
*.query_rewrite_enabled='FALSE'
*.remote_login_passwordfile='EXCLUSIVE'
*.shared_pool_size=83886080
*.sort_area_size=524288
*.star_transformation_enabled='FALSE'
*.timed_statistics=TRUE
*.undo_management='AUTO'
*.undo_retention=10800
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/usr/local/ora9i/admin/oracle/udump'
출처 : 오라클 클럽 http://www.oracleclub.com
덧글