목록RDBMS (2)
말랑말랑제리스타일
Oracle 테이블을 정리하다보면 Row 수 또는 사이즈로 정렬해서 테이블 정리의 우선순위를 뽑아볼 수 있을 것 같은데요 일일이 Count(*)로 테이블 Row 수를 조회하면 속도가 느리고 한참 기다려야 하죠 그런 상황 대신 한번에 전체 테이블을 Row 수로 정렬해서 뽑아볼 수 있는 쿼리 전달합니다 SELECT TABLE_NAME,NUM_ROWS FROM USER_TABLES ORDER BY NUM_ROWS DESC; 이건데요 이렇게 조회하면 해당 유저의 전체 테이블과 Row 수를 뽑아볼 수 있습니다 그럼 Row 수가 많다고 단순히 큰 테이블일까요? 아니죠 Column 수도 생각해야되고 확장 관련된 요소도 테이블 사이즈에 영향을 미치는데요 그런 상황을 다 고려해서 실제 테이블의 크기 순으로 뽑아볼 수 있..
오라클 테이블을 수정하거나 프로시저를 깨진 채로 저장한 경우 컴파일이 안된채로 깨져있는데요 이런 경우 토드나 오라클 DB 툴을 이용하면 볼수는 있는데 간혹 다수로 리스트 쫙 뽑아서 보고싶을때나 다른 테이블이랑 엮어서 보고싶을때 조회 쿼리를 이용해서 깨진 프로시저를 한번에 볼 수 있습니다 SELECT * FROM ALL_OBJECTS WHERE OWNER = '유저명' AND STATUS = 'INVALID' 바로 이 ALL_OBJECT 테이블에서 STATUS를 INVALID로 놓고 조회하면 깨진 프로시저, 펑션 등이 쫙 나오는데 DBA 권한이 있어야 조회 가능한 테이블이고 전 유저에 대해 조회하기 때문에 유저명을 OWNER에 넣고 조회해야 퍼포먼스가 나올 수 있다는 점을 참고해서 쓰시길 바랍니다 깨진 프..