오라클의 통계 정보 수집은 자동으로 되는게 아닌거죠? 0 2 2,046

by 공기 [Oracle 기초] 통계정보 [2019.01.22 13:45:16]


사용자가  직접  명령어를  돌려줘야하는거죠?

오라클 12c 라고 해서  자동으로   통계정보를   갱신하고 그러지는 않죠?

 

(데이터를  3백만껀  넣어놓고  인덱스를 몇개 만들어주면

오라클이  자동으로 알아먹거나 그러지는 않는거죠?  )

 

DB공부를 너무 안해서...ㅠ.ㅠ

by 랑에1 [2019.01.22 13:54:12]

자동으로 갱신하지만 변경이 일어났다고 해서 무조건 갱신은 아닙니다.(10g 이상부터 생겼다고 하니 12c도 마찬가지라는 가정하에요)

11g 기준으로 말씀드리면 자동생성이 기본이고 오브젝트별로 자동생성 안되게 disable 시킬수 있습니다.

매일 수동으로 돌려주는 회사도 있더군요.

자세한 내용은 아래 글 참고하세요~

 

http://www.gurubee.net/lecture/2918

통계정보란 무엇인가?

통계정보는 오라클의 옵티마이저가 실행계획을 작성할 때 참조하는 정보다. 실행계획을 최적화하기 위해서는 현재 데이터 상태를 참고할 무언가가 필요하다. 그래서 옵티마이저는 수집된 통계정보를 바탕으로 최적의 실행계획을 세운다.

통계정보는 테이블을 생성하고 데이터를 삽입할지라도 이러한 변경이 실시간으로 반영되지 않는다. DBA가 수동적으로 통계정보를 수집하는데, 오라클 10g 버전 이상부터는 자동스케줄링(JOB)를 통해 수집된다.

 

통계정보 수집에 자동스케줄링을 활용하면 SQL 실행계획의 재생성으로 인해 데이터베이스의 성능 저하가 야기될 수 있다. 그러므로 통계정보 정책을 기반으로 수동으로 통계정보를 수집하는 것이 바람직하다. 그렇다면 통계정보 정책 수립 시 고려해야 할 사항은 무엇일까? 지금부터 살펴보자.


by 공기 [2019.01.22 16:38:01]

아 그렇군요...

댓글 감사합니다....

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