db2 8 버전입니다.
a 라는 테이블의 테이블 스페이스 확인을 하려면 어떻게 해야하나요?
쿼리문이 있으면 알려주세요
정확히 어떤것을 물어보시는지 잘 모르겠군요..
테이블스페이스의 정보를 물어보시는 건지 아니면 테이블스페이스의 크기와 같은 것을 물어보시는 건지......
먼저 DB2의 테이블 스페이스를 보는 방법은 명령문을 이용하는 방법과 SQL쿼리를 이용하는 방법이 있습니다.
Tablespace를 보는 명령문은
1. db2 list tablespaces
위의 정보를 더 자세히 보기 위해서는
2. db2 list tablespaces show detail
Tablespace의 컨테이너를 보는 명령문
1. db2 list tablespace containers for tablespace-id
더 자세히 보기위해서는
2. db2 list tablespace containers for tablespace-id show detail
카탈로그VIEW에서 tablespace 정보를 보기위해서는
SYSCAT.TABLESPACES 를 쿼리해 보시면 됩니다.
테이블 스페이스의 사용량과 같은 모니터링 정보를 보기 위해서는
V8부터 만들어진 snapshot 테이블함수를 사용하시면 됩니다.
테이블 스페이스 정보가 들어있는 snapshot 테이블 함수는
snapshot_tbs, snapshot_tbs_cfg, snapshot_container
입니다.
이함수를 사용하기 위해서는 모니터링 스위치를 ON시켜주셔야 합니다. dbm cfg에서 하셔도 되고 update monitor switch명령어를 이용하셔도 됩니다.
이 테이블 함수의 정보는 Online 도큐먼트에서 찾아 보시면 됩니다.
describe select * from table( snapshot_tbs_cfg('sample',-1)) as a;
로 테이블함수의 정보를 보실수 있습니다.
예)
1. db2 update dbm cfg using dft_mon_bufferpool on
2. db2 connect to sample
3. db2 "select * from table( snapshot_tbs_cfg('sample',-1)) as a"
4. db2 terminate