Programing/Oracle

Oracle - Control file

woony5231 2008. 7. 29. 17:01

Control file - information file(정보파일)

                           DBID , NAME , 생성일

                           DATAFILE, REDO LOG FILE 경로

                           MAX VALUE

                           RMAN(오라클 리커버리 메니져) BACKUP 정보가 저장된다.

DB를 생성할때 이름이 같게 되면 DB관리가 힘들어 DB마다 생성할때 ID를 지정해 두었다.

SQL> SELECT DBID, NAME FROM V$DATABASE;

      DBID NAME
---------- ---------
1031454834 ORCL1


RAID(MIRRORING) : 똑같은 파일을 몇개가지고있다. 파일 손상을 막기 위해
컨트롤 파일들에 대한 경로

SQL> SHOW PARAMETER CONTROL_FILES

NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------------------------
control_files                        string      C:\oracle\oradata\ORCL1\CON
                                                       L01.CTL, C:\oracle\oradata\
                                                       L1\CONTROL02.CTL, C:\oracle
                                                       adata\ORCL1\CONTROL03.CTL


SQL> SELECT NAME FROM V$CONTROLFILE;

NAME
------------------------------------------
C:\ORACLE\ORADATA\ORCL1\CONTROL01.CTL
C:\ORACLE\ORADATA\ORCL1\CONTROL02.CTL
C:\ORACLE\ORADATA\ORCL1\CONTROL03.CTL


MIRRORING 하는법

1. PARAMETER 수정

2. DB 정상 종료

3. OS COPY

4. OPEN


SQL> ALTER SYSTEM SET CONTROL_FILES=
  2     'C:\ORACLE\ORADATA\ORCL1\CONTROL01.CTL',
  3     'C:\ORACLE\ORADATA\ORCL1\CONTROL02.CTL',
  4     'C:\ORACLE\ORADATA\ORCL1\CONTROL03.CTL',
  5     'C:\ORACLE\ORADATA\ORCL1\CONTROL04.CTL' SCOPE=SPFILE;

시스템이 변경되었습니다.



SQL>SHUTDOWN IMMEDIATE


SQL> HOST COPY C:\ORACLE\ORADATA\ORCL1\CONTROL01.CTL C:\ORACLE\ORADATA\ORCL1
        1개 파일이 복사되었습니다.


SQL> SELECT NAME FROM V$CONTROLFILE;