dba_data_files 뷰에 bytes 컬럼 문의드립니다. 0 5 1,457

by jangjane [Oracle 기초] dba_data_files bytes [2022.04.20 14:37:35]


dba_data_files 뷰에서 bytes 컬럼에 대한 질문입니다.

예를 들어서 select bytes from dba_data_files 쿼리를 수행하면
users02.dbf 파일이 maxbytes는 32GB고 bytes 항목도 32GB로 표시됩니다.
이 파일은 생성한지 하루 이틀된 데이터파일이고 초기 사이즈를 1g를 주고 autoextend on next 100m 값을 주었습니다.
궁금증은 dba_free_space에서 확인해보면 실제 사용은 1GB 조금 넘게 사용했고 여유 공간이 31GB 정도 됐습니다.
초기 사이즈를 1gb를 주고 32GB까지 사용하지 않았음에도 불구하고 dba_data_files 뷰에서 bytes 컬럼에 왜 다 32GB로 잡히는지 궁금합니다.. 

by 우리집아찌 [2022.04.20 15:28:13]

테이블스페이스 설정시 내가 얼마만큼 쓸지 설정하는겁니다 그래야 32G를 대이터 영역으로 쓸수 있죠

다른 영역/작업이 쓸수 없도록 하는겁니다


by jangjane [2022.04.20 15:46:29]

제가 의문인건 위에 써놓은 datafile과 같은 조건으로 datafile을 두 개 더 생성했는데 그 두개는 초기 사이즈 1gb가 bytes 컬럼에 그대로 출력됐습니다..

초기 사이즈인 1gb 보다 조금 더 사용했으면 next 100m 설정한 값대로 100m씩 증가한 값이 보여야하는데 bytes 컬럼에 32GB로 보인다는 것입니다.. 왜 그런건지 궁금하네요,,


by 타락천사 [2022.04.20 16:22:06]

생각하시는 것처럼 initial size 상태에서 데이타 증가로, next 만큼 증가하는게 맞습니다. ( 12c 부턴가 data file 증가할 때 alert log 에 찍혀요 ( 기본 설정) )

테스트 하신 로그 다시 한번 확인 해보세요 혹은 공유 ㅇ.ㅇ


by jangjane [2022.04.20 16:48:51]

테스트한 것은 아니고 운영중인 곳에서 본거라서,,

일단 11g네요..ㅜㅜ

말씀하신건 next만큼 증가한다는건데 왜 next만큼 증가한 값이 dba_data_files 뷰에 bytes 컬럼에 보여야하는데 maxbytes 값과 동일하게 보이는건지 궁금합니다..

생각해보니 maxbytes 값까지 아니더라도 dba_free_space 뷰를 참조해서 셀렉트해보면 높은 bytes 값에 비해서 너무 free 영역이 많다는겁니다.. 왜 bytes 컬럼 값이 초기 사이즈 값과 다르게 높게 나오는지 궁금합니다


by 타락천사 [2022.04.21 11:46:41]

아래 2가지 경우, 그런 결과가 나올 수 있어요..

1.이야기 하신것처럼 datafile 추가 후에, 추가된 datafile 을 maxbytes 까지 resize

2. 데이타가 증가하면 추가된 datafile 이 자연스럽게 maxbytes 까지 증가

   데이타 증가 원인 segment 가 drop 이나 truncate 됨

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입