>>박경호 님께서 쓰시길<<
:: 공간이 부족해서 해당 테이블의 데이터를 모두 truncate시켰는데, 용량이 줄질 않네요...
:: 다음은 /home/oracle/app/oracle/oradata/orcl 디렉토리의 파일들입니다...
:: [oracle@s210-117-125-198 orcl]$ ls -lh
:: 합계 2.9G
:: -rw-r----- 1 oracle dba 5.6M 1월 12 11:31 control01.ctl
:: -rw-r----- 1 oracle dba 5.6M 1월 12 11:31 control02.ctl
:: -rw-r----- 1 oracle dba 5.6M 1월 12 11:31 control03.ctl
:: -rw-r----- 1 oracle dba 84M 1월 12 11:31 drsys01.dbf
:: -rw-r----- 1 oracle dba 54M 1월 12 11:31 indx01.dbf
:: -rw-r----- 1 oracle dba 1.3G 1월 12 11:31 rbs01.dbf
:: -rw-r----- 1 oracle dba 500k 1월 12 11:29 redo01.log
:: -rw-r----- 1 oracle dba 500k 1월 12 11:31 redo02.log
:: -rw-r----- 1 oracle dba 500k 1월 12 11:29 redo03.log
:: -rw-r----- 1 oracle dba 1.2G 1월 12 11:31 system01.dbf
:: -rw-r----- 1 oracle dba 68M 1월 12 11:31 temp01.dbf
:: -rw-r----- 1 oracle dba 8.0M 1월 12 11:31 tools01.dbf
:: -rw-r----- 1 oracle dba 104M 1월 12 11:31 users01.dbf
::
:: 어떻게 하면 이 공간을 복구할 수 있죠??
1, truncate 를 사용했다고 해서 datafile의 크기가 줄어들지는 않습니다.
truncate는 데이타를 삭제하고, option 을 지정하지 않으면
extent를 minextents 보다 큰 extents를 삭제하고, HWM 를 최소화 시킵니다.
2. datafile의 크기를 줄여야만 파일 시스템의 free 가 늘어납니다.
이때는 system 유저에서 아래의 명령어를 사용해야 합니다.
alter database datafile '/home/oracle/app/oracle/oradata/orcl/users01.dbf'
resize 50M ;
|