db_files 꽉 찬 후에도 redo log 추가는 가능한가?
Q : 현재 데이터파일의 갯수가 db_files의 설정 되어있는 값과 같다.
이 상황에서 리두로그의 그룹과 멤버를 추가하려고 합니다.
가능한지요?
A : 가능합니다.
redo 로그는 db_files의 갯수와 무관합니다.
테스트
# db_files의 갯수 확인
SQL> show parameter db_files;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_files integer 7
# 현재 datafile들의 갯수 확인
SQL> select count(*) from dba_data_files;
COUNT(*)
----------
7
# 리두로그 현황
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/redo01.log
/u01/app/oracle/oradata/orcl/redo02.log
/u01/app/oracle/oradata/orcl/redo03.log
SQL> alter database add logfile '/u01/app/oracle/oradata/orcl/redo04.log' size 50M;
데이타베이스가 변경되었습니다
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/redo01.log
/u01/app/oracle/oradata/orcl/redo02.log
/u01/app/oracle/oradata/orcl/redo03.log
/u01/app/oracle/oradata/orcl/redo04.log
=> 잘 추가되었다.
테이블스페이스 추가를 해볼까?
SQL> create tablespace test1 datafile '/u01/app/oracle/oradata/orcl/test1_01.dbf' size 10m;
create tablespace test1 datafile '/u01/app/oracle/oradata/orcl/test1_01.dbf' size 10m
*
1행에 오류:
ORA-00059: 최대 DB_FILES 수를 초과했습니다
=> 추가 안됨