테이블스페이스 질문입니닷.. 0 4 1,806

by 리틀맹 [2009.01.05 18:41:36]


또 도움청하러 왔네요...^^; 자주 올것같아 아예 회원가입을 해버렸습니다..ㅎㅎ^^

현재 운영에 테이블스페이스를 변경하려 하는데요..

지금 하려는건 아니고 PM님이 테이블스페이스 변경방법을 숙지하라고 하셔서;;

어찌어찌 하다보니 초짜개발자가 DBA가 됐다는...ㅠ_ㅠ;;;;;

암튼 찾아보니,

SQL>Alter table 테이블명 Move Tablespace 테이블스페이스명;

으로 변경하는건 알겠는데.. 문젠 운영중인 서버라...

서비스중에 저 쿼리를 그대로 날려도 되는지 궁금합니다~ 에러라도 뜨면...-_-;;;;

8i구요~ 현재 테이블스페이스가 25G로 잡혀있다 하던데 더이상 늘릴 공간이 없어서 변경할듯하거든요..

답변주시면 감사하겠습니다.. 그럼 야근하시는분들 오늘두 고생하세요...( -_- )( __ )( -_- );

 

by 현 [2009.01.05 19:54:26]
저 문장을 날리시면 해당 테이블을 엑세스 하는데 엄청난 문제가 발생할 수 있습니다..(너무 겁줬나요?)
테이블 스페이스를 옮기는 문제는 테이블의 물리적 위치를 바꾸는 것입니다.
그렇게 되면 인덱스와의 결합 문제가 깨지게 됩니다.
즉, 인덱스는 테이블에 있는 데이터의 위치를 가지고 있게 되어 있는데,
그 위치가 바뀌었으므로 더이상 인덱스를 사용하지 못하게 됩니다.
따라서 테이블의 테이블스페이스를 바꾸셨다면 관련된 인덱스 들을 모두 rebuild 해 주셔야 합니다.

by 현 [2009.01.05 19:55:33]
운영중인 테이블 이라면 작업하시지 마시구요,
차라리 테이블스페이스를 늘리는 방법을 생각해 보시길 권해 드립니다.

by 리틀맹 [2009.01.06 09:40:10]
현님 감사합니다^^ 테이블스페이스를 다시 공부해야겠어요;;

by 랄랄라젠카 [2009.01.06 14:26:53]
작업할때 데이터 정합성 면에서 일관성을 보장해준다는 전제조건하에

새로운 Tablespace로 Re-org 작업을 수행해줘도 무난할것 같습니다.
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입