자주사용하는 통계정보 명령어

카테고리 없음 2009. 11. 20. 08:51 posted by 이한비
.  CBO  환경의 DB 를 운영하면서 절대  빼놓을수 없는 것 중 하나가 통계정보다.
   개인적으로 느끼기엔 잘하면 본전인데 잘못하면 이거 대박 장애다.
   직접 경험한 바로 프로젝트가 오픈하기전 개발에서 아무문제 없다가 실제 운영으로 이관하였고
   다음날 아침 슈퍼돔 사양의 DB 가 뻗어벼렸다.
   사후 원인분석 결과  통계정보가 개발기와 다름으로써 PLAN 이 변경되어 특정 SQL 하나만으로 슈퍼돔이 뻗어 버린것이다.
   11G 에서는 통계정보가 얼마나 DBA 를 편하게 해줄지 몰라도 10G 에서의 통계정보는 항상 조심하자.
   특정 SQL 하나가 슈퍼돔을 한순간에 뻗게 만들수도 있기 때문이다.
   아래는 CBO 환경에서 DB 를 를 운영하면서 통계정보 관련  자주 사용하는 명령어들을 정리해봤다.
   
 
. 통계정보 생성
 

> exec dbms_stats.gather_table_stats(ownname=>'SCOTT', tabname=>'EMP', method_opt=> 'FOR ALL COLUMNS', cascade=>true , degree=>8,  granularity=>'ALL');

 
 
 
. 통계정보 삭제
 

> exec dbms_stats.delete_table_stats('SCOTT','EMP') ;

 

. 파티션 테이블 파티션 통계정보 삭제

 

> exec dbms_stats.delete_table_stats(ownname=> 'SCOTT',tabname=>'EMP_PART' ,partname=>'P_200812');

 
 
. 통계정보 백업 테이블 생성

> exec dbms_stats.create_stat_table(ownname=>'SYSTEM',stattab=>'STATS_BACKUP',tblspace=>'USERS');

 
 
. 통계정보 EXPORT
 

> exec dbms_stats.export_table_stats (OWNNAME=>'SCOTT', TABNAME=>'EMP', STATTAB=> 'STATS_BACKUP', STATID=> 'STATS_BACKUP',STATOWN=>'SYSTEM', cascade=>true);

 
 
. 통계정보 IMPORT
 

> exec dbms_stats.import_table_stats (OWNNAME=>'SCOTT', TABNAME=>'EMP', STATTAB=> 'STATS_BACKUP', STATID=> 'STATS_BACKUP',STATOWN=>'SYSTEM', cascade=>true);

 
 
. 테이블 통계정보 확인
 

> select owner, table_name, num_rows, last_analyzed from dba_tables
  where table_name='EMP';

OWNER                          TABLE_NAME                     NUM_ROWS    LAST_ANALYZED     
------------------------------ ------------------------------ ----------- -------------------
SCOTT                            EMP                                     246              2008/12/11 00:16:00

 
 
. 인덱스 통계정보 확인
 

> SELECT owner, index_name, num_rows, last_analyzed from dba_indexes
where index_name='RM_RMNG_CMMN_CD_DTL_PK';

 OWNER                          INDEX_NAME                            NUM_ROWS    LAST_ANALYZED     
------------------------------ ------------------------------ ----------- -------------------
CBADM                          RM_RMNG_CMMN_CD_DTL_PK               246              2008/12/11 00:16:02

 

 

 

. 파티션 테이블 통계정보 확인

 

> select table_owner, table_name, partition_name, num_rows, last_analyzed
from dba_tab_partitions where table_owner = 'SCOTT' and table_name = 'EMP_PART'
order by partition_position;

TABLE_OWNER   TABLE_NAME      PARTITION_NAME   NUM_ROWS    LAST_ANALYZED     
------------------------------------------- ------------ ----------- ---------
SCOTT          EMP_PART          P_200801     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200802     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200803     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200804     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200805     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200806     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200807     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200808     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200809     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200810     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200811     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART          P_200812     1244703 2007/12/08 09:03:25

 

 
 
. 파티션 인덱스 통계정보 확인
 

 

> select index_owner, index_name, partition_name, num_rows, last_analyzed
from dba_ind_partitions
where  index_name in (select index_name
                      from dba_indexes
                      where table_owner = 'SCOTT' 
                      and table_name = 'EMP_PART'
                      and partitioned = 'YES')
order by index_name, partition_position;

 

INDEX_OWNER   INDEX_NAME      PARTITION_NAME   NUM_ROWS    LAST_ANALYZED     
------------------------------------------- ------------ ----------- ---------
SCOTT          EMP_PART_IDX          P_200801     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200802     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200803     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200804     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200805     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200806     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200807     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200808     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200809     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200810     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200811     1244703 2007/12/08 09:03:25
SCOTT          EMP_PART_IDX          P_200812     1244703 2007/12/08 09:03:25

 

 
 
. 파티션 테이블 통계정보 UNLOCK
 

 

> exec dbms_stats.unlock_table_stats('SCOTT','PART_EMP');

 

 
 
. 파티션 테이블 통계정보 LOCK 확인
 

 

> select owner, table_NAME, stattype_locked from dba_tab_statistics where table_name='PART_EMP' ;

OWNER                          TABLE_NAME                                  STATT
------------------------------ ------------------------------ -----
SCOTT
                            EMP_PART                                       ALL 

 

 
 
. 파티션 인덱스 통계정보 LOCK 확인
 

 

> select owner, index_NAME, stattype_locked from dba_ind_statistics
where index_name='PART_EMP_IDX';

OWNER                          INDEX_NAME                                   STATT
------------------------------ ------------------------------ ---------------
SCOTT                          EMP_PART_IDX                                  ALL 

 


 

실제 경험한 바로 운영하는 DB 에서 통계정보가 변경되어질  경우 최악의 경우 슈퍼돔 사양의 RAC DB 라도 뻗을수도 있다는 사실을 앞선 시간에 언급하였다.

이런 최악의 경우를 경험하다 보니 통계정보를 관리하지 않을 경우 얼마나 위험한 상황이 닥치는지 깨닫게 되었고

그 이후부터는 크고 작던간에 어떠한 프로젝트이건 간에 개발DB 에서 사용하였던 통계정보를 그대로 운영DB로 이관하는 방향으로 정책을 삼고 있다.

심지어 신규테이블에 대해서도 통계정보의 이관을 정책으로 삼게 되었다.

아래는 일반테이블의 통계정보 이관 방법에 대해서 소개한다.

다음 시간에는 파티션 테이블의 통계정보 관리 방법 및 이관 방법에 대해서 소개하도록 하겠다.

 

 

■ 통계정보를 생성에는 2가지 방법이 있다.
 
첫째 ANALYZE 사용과
둘째 DBMS_STATS 패키지 사용  (오라클 8i 버전에서 새롭게 추가된 DBMS_STATS 패키지를 사용하는 방법)
의 두가지 방법이 있는데
오라클에서는 DBMS_STATS 패키지 사용을 권고한다.
 
■ DBMS_STATS 를 사용하면 좋은 점
 
- PARALLEL 을 사용할수 있다.
- 현재시점의 통계정보를 백업 하고 RECOVERY 할수 있다. (통계정보 이관시 사용한다) 
 
■  통계정보 이관 방법 (서로 다른 서버일 경우)
 

1. 통계정보를 담을 백업 테이블 생성

exec dbms_stats.create_stat_table(ownname=>'SYSTEM',stattab=>'stats_backup',tblspace=>'USERS');

 

2. 신규테이블에 대해서 통계정보를 생성하기 전 통계정보 존재하는지 확인

  해당 값이 NULL 이면 통계정보 생성이 안되어 있는 것임

SQL> select OWNER,TABLE_NAME,NUM_ROWS,BLOCKS,LAST_ANALYZED from dba_tables

  2  where table_name='EMP';

 

OWNER           TABLE_NAME             NUM_ROWS     BLOCKS LAST_ANA

--------------- -------------------- ---------- ---------- --------

SCOTT           EMP

 

3.  통계정보 생성

exec dbms_stats.gather_table_stats(ownname=>'SCOTT', tabname=>'EMP', method_opt=> 'FOR ALL COLUMNS', cascade=>true , degree=>8,  granularity=>'ALL');

 

 

4. 테이블과 인덱스에 통계정보 존재하는지 확인

SQL> select OWNER,TABLE_NAME,NUM_ROWS,BLOCKS,LAST_ANALYZED from dba_tables

  2  where table_name='EMP';

 

OWNER           TABLE_NAME             NUM_ROWS     BLOCKS LAST_ANA

--------------- -------------------- ---------- ---------- --------

SCOTT           EMP                        14           5 2008/12/12 09:59:23

 

SQL> select OWNER,INDEX_NAME,NUM_ROWS,LAST_ANALYZED from dba_indexes

where INDEX_NAME='PK_EMP';

 

OWNER           INDEX_NAME                     NUM_ROWS    LAST_ANALYZED     

--------------------- ------------------------------ ----------- ---------------

SCOTT            PK_EMP                     14       2008/12/12 09:59:23

 

 

5. 생성된 통계정보를 운영DB import 하기위해 export 실행

EXEC DBMS_STATS.EXPORT_TABLE_STATS

(OWNNAME=>'SCOTT', TABNAME=>'EMP', STATTAB=> 'STATS_BACKUP',

STATID=> 'STATS_BACKUP',STATOWN=>'SYSTEM', cascade=>true);

 

6. 백업된 테이블을 EXPORT 실행

 

> exp userid=system/manager file=./exp_stats_backu

p.dmp log=./exp_stats_backup.log tables=system.stats_backup

 

Export: Release 10.2.0.1.0 - Production on 12 12 10:13:36 2008

 

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

다음에 접속됨: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Produ

ction

With the Partitioning, OLAP and Data Mining options

 

지정된 테이블을 엑스포트하려고 합니다 via 규정 경로...

. . 테이블                   STATS_BACKUP()을 엑스포트 중         73 행이 엑스

포트됨

엑스포트가 경고 없이 정상적으로 종료되었습니다.

 

 

7. FTP DUMP 파일 운영DB 로 전송

 

8. 백업된 테이블을 운영DB 에서 IMPORT 실행

>imp userid=system/manager file=exp_stats_backup.

dmp log=imp_stats_backup.log fromuser=system

 

Import: Release 10.2.0.1.0 - Production on 12 12 10:25:00 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

다음에 접속됨: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Produ

ction

With the Partitioning, OLAP and Data Mining options

 

. SYSTEM 객체를 SYSTEM()로 임포트하는 중입니다

. SYSTEM 객체를 SYSTEM()로 임포트하는 중입니다

. . 테이블                 "STATS_BACKUP"()을 임포트 중         73 행이 임포트

되었습니다

임포트가 경고 없이 정상적으로 종료되었습니다.

 

9. IMPORT 한 통계정보 테이블에서 EMP 테이블의 통계정보를 IMPORT 한다. .

EXEC DBMS_STATS.IMPORT_TABLE_STATS

(OWNNAME=>'SCOTT', TABNAME=>'EMP', STATTAB=> 'STATS_BACKUP', STATID=> 'STATS_BACKUP',STATOWN=>'SYSTEM', cascade=>true);

 

10. 테이블과 인덱스에 통계정보 이관었는지 확인

SQL> select OWNER,TABLE_NAME,NUM_ROWS,BLOCKS,LAST_ANALYZED from dba_tables

  2  where table_name='EMP';

 

OWNER           TABLE_NAME             NUM_ROWS     BLOCKS LAST_ANA

--------------- -------------------- ---------- ---------- --------

SCOTT           EMP                        14           5 2008/12/12 09:59:23

 

SQL> select OWNER,INDEX_NAME,NUM_ROWS,LAST_ANALYZED from dba_indexes

where INDEX_NAME='PK_EMP';

 

OWNER           INDEX_NAME                     NUM_ROWS    LAST_ANALYZED     

--------------------- ------------------------------ ----------- ---------------

SCOTT            PK_EMP                     14       2008/12/12 09:59:23

 


이번 시간에는 파티션 테이블의 통계정보 운영관리 방법에 대해 소개하겠다.
단 소개하기전에 사전에 미리 언급해 둘 사항이 있다.
지금 필자가 소개하는 이 방법이 절대 표준은 아니라는 것을 미리 말씀드리고 싶다.
그럼 표준도 아닌데 왜 소개를 하냐 하겠지만...
필자가 운영을 위해 고민하고 고민한 결과 우리 사이트는 이 방법을 선택했고 지금 이런 방법으로 아주 안정적으로 잘 운영하고 있기 때문에 필자와 같은 고민을 하는 사람들을 위해 공유하고픈 마음이다.
그럼 시작하도록 하겠다.

먼저 파티션 테이블은 일반테이블과 달리 통계정보 갱신을 딱 한번, 한달치의 데이터가 정상적으로 들어갔을때만 실행하고 평상시에는 통계정보 lock 을 걸어둔다.
그리고 그 한달치의 파티션 통계정보를 가지고 매달 동일하게 넣어준다.
하지만 필자가 몸담은 사이트 같은 경우는 파티션 테이블만 100 여개다.
그렇기에 매달 작업하는 것은 여간 번거로운 작업일뿐더러 파티션 테이블은 관리 포인트도 많고 그만큼 무지하게 짜증난다. 그래서 필자가 몸담은 사이트 같은 경우는  매년 말 다음 년도의 1년치의 파티션을 미리 추가하고 파티션 추가작업이 끝날경우 마찬가지로 통계정보도 1년치를 미리 만들어 놓는다.
이렇게 함으로써 파티션 작업이 누락되는 상황을 최소화 하고 있고 1년에 딱 한번을 제외한 평상시에는 파티션 작업으로 인한 스트레스를 안받고 있다.
다시 한번 말씀드리지만 지금 소개한 부분은 필자가 몸담은 사이트의 관리 방식일 뿐이고 이게 정답은 아니라는 것을 말씀드린다.
혹시라도 필자가 운영하는 것보다 더 좋은 방법이 있다면 알려주길 바란다. ^^

■ 통계정보를 생성에는 2가지 방법이 있다.

 

첫째 ANALYZE 사용과

둘째 DBMS_STATS 패키지 사용  (오라클 8i 버전에서 새롭게 추가된 DBMS_STATS 패키지를 사용하는 방법)

의 두가지 방법이 있는데

오라클에서는 DBMS_STATS 패키지 사용을 권고한다.

 

DBMS_STATS 를 사용하면 좋은 점

 

- PARALLEL  사용할수 있다.

- 현재시점의 통계정보를 백업 하고 RECOVERY 할수 있다. (통계정보 이관시 사용한다

 

  통계정보 이관 방법  ( 파티션 테이블 ) 

 

1. 통계정보를 담을 백업 테이블 생성

exec dbms_stats.create_stat_table(ownname=>'SYSTEM',stattab=>'stats_backup',tblspace=>'USERS');

 

2. 통계정보를 생성하기 전 한달치의 통계정보가 존재하는지 확인

  해당 값이 NULL 이면 통계정보 생성이 안되어 있는 것임

SQL> select TABLE_NAME, PARTITION_NAME, SUBPARTITION_COUNT, LAST_ANALYZED, NUM_ROWS from dba_tab_partitions 

where table_name = 'HISTORY'

order by PARTITION_NAME;

 

SQL> select TABLE_NAME, PARTITION_NAME, SUBPARTITION_COUNT, LAST_ANALYZED, NUM_R

OWS from dba_tab_partitions

  2  where table_name = 'HISTORY'

  3  order by PARTITION_NAME

  4  /

TABLE_NAME      PARTITION_NAME  SUBPARTITION_COUNT LAST_ANA   NUM_ROWS

--------------- --------------- ------------------ -------- ----------

HISTORY         P_200810                         0

HISTORY         P_200811                         0

HISTORY         P_200812                         0

HISTORY         P_200901                         0

4 rows selected.

 

 

3.  통계정보 생성 ( 현재 10월달 한달치의 데이터만 들어가 있다 )

exec dbms_stats.gather_table_stats(ownname=>'SCOTT', tabname=>'HISTORY', method_opt=> 'FOR ALL COLUMNS', cascade=>true , degree=>8,  granularity=>'ALL');

 

 

4. 테이블과 인덱스에 통계정보 존재하는지 확인

SQL> select TABLE_NAME, PARTITION_NAME, SUBPARTITION_COUNT, LAST_ANALYZED, NUM_R

OWS from dba_tab_partitions

  2  where table_name = 'HISTORY'

  3  order by PARTITION_NAME;

 

TABLE_NAME      PARTITION_NAME  SUBPARTITION_COUNT LAST_ANA   NUM_ROWS

--------------- --------------- ------------------ -------- ----------

HISTORY         P_200810                         0 08/12/12          6

HISTORY         P_200811                         0 08/12/12          0

HISTORY         P_200812                         0 08/12/12          0

HISTORY         P_200901                         0 08/12/12         

 

5. 생성된 통계정보를 운영DB import 하기위해 export 실행

EXEC DBMS_STATS.EXPORT_TABLE_STATS

(OWNNAME=>'SCOTT', TABNAME=>'HISTORY', STATTAB=> 'STATS_BACKUP',

STATID=> 'STATS_BACKUP',STATOWN=>'SYSTEM', cascade=>true);

 

6. 현재달을 제외한 0건으로 생선된 통계정보 삭제

delete from system.STAT_BACKUP

where c1 in ('HISTORY', 'HISTORY_IDX')

and c2 in (

           'P_200811');

commit

 

7. 10 월달 통계정보를 11월달로 UPDATE

update system.STATS_BACKUP

SET c2 = 'P_200811'

where c1 in ('HISTORY','HISTORY_IDX')

and c2 = 'P_200810';

 

commit;

 

8. 파티션 통계정보를 UNLOCK  

exec dbms_stats.unlock_table_stats('SCOTT','HISTORY');

 

9. 새로운 파티션으로 IMPORT 작업

Exec dbms_stats.import_table_stats(ownname=>'SCOTT',tabname=>'HISTORY',partname=>'P_200811', stattab=>'STATS_BACKUP', statid=>'STATS_BACKUP', statown=>'SYSTEM',cascade=>true);

 

10. 파티션 통계정보를 LOCK  

exec dbms_stats.lock_table_stats('SCOTT','HISTORY');

 

11. IMPORT 한 통계정보 테이블에서 EMP 테이블의 통계정보를 IMPORT 한다..

SQL> select TABLE_NAME, PARTITION_NAME, SUBPARTITION_COUNT, LAST_ANALYZED, NUM_R

OWS from dba_tab_partitions

  2  where table_name = 'HISTORY'

  3  order by PARTITION_NAME;

 

TABLE_NAME      PARTITION_NAME  SUBPARTITION_COUNT LAST_ANA   NUM_ROWS

--------------- --------------- ------------------ -------- ----------

HISTORY         P_200810                         0 08/12/12          6

HISTORY         P_200811                         0 08/12/12          6

HISTORY         P_200812                         0 08/12/12          0

HISTORY         P_200901                         0 08/12/12         

 

오라클 유저 생성

카테고리 없음 2009. 11. 19. 20:56 posted by 이한비
본문 : http://www.ischo.net -- 조인상 //시스템 엔지니어

+++++++++++++++++++++++++++++++++++++++++++++++++++++++


오라클 유저 생성

sql> CREATE USER username IDENTIFIED BY password
DEFAULT TABLESPACE tablespace
TEMPORARY TABLESPACE tablepace
PROFILE profile
QUOTA integer ON tablespace;


유저변경

sql> ALTER USER username IDENTIFIED BY password
DEFAULT TABLESPACE tablespace
TEMPORARY TABLESPACE tablepace
PROFILE profile
QUOTA integer ON tablespace
DEFAULT ROLE [role/ALL/NONE];



유저삭제

sql> DROP USER username [CASCADE];

오라클 Object 정보조회

카테고리 없음 2009. 11. 16. 17:58 posted by 이한비
쿼리를 통해 오라클 데이터베이스의 정보를 조회할때 사용하세요.
구분 테이블명 설명
오브젝트 USER_OBJECTS (OBJ) 모든 오브젝트에 대한 정보를 지원 오즈젝트 유형, 작성시간, 오브젝트에 사용된 최종 DDL 명령, alter, grant 및 revoke 등
테이블 USER_TABLES (TABS) 테이블에 대한 정보
USER_TAB_COLUMNS (COLS) 컬럼에 대한 정보
USER_VIEWS 뷰에 대한 정보
동의어 USER_SYNONYMS (SYN)
시퀀스 USER_SEQUENCES (SEQ)
제약조건 USER_CONSTARINTS  
제약조건열 USER_CONS_COLUMNS 제약 조건을 가진 열에 대한 정보
제약조건의 예외사항 EXCEPTIONS 제약조건을 활성화시 에러사항에 대한 정보
테이블 주석 USER_TAB_COMMENTS 테이블/뷰에 대한 주석
열 주석 USER_COL_COMMENTS 열에 대한 주석
인덱스 USER_INDEXES (IND) ( 인덱스에 관한 정보)
인덱스 열 USER_IND_COLUMNS 인덱스열에 대한 정보
클러스터 USER_CLUSTERS (CLU) 클러스터와 관련된 정보
데이터베이스 링크 USER_DB_LINKS 링크에 관련된 정보
스냅샷 USER_SNAPSHOTS  
스냅샷 로그 USER_SNAPSHOT_LOGS  
트리거 USER_TRIGGERS  
프로시저, 함수 및 패키지 USER_SOURCE  
코드 오류 USER_ERRORS  
테이블스페이스 USER_TABLESPACES  
영역 할당량 USER_TS_QUOTAS 테이블스레이스 단위로 사용자가 이용할 수 있는 영역의 최대크기와 할당된 영역의 크기 파악에 대한 정보
세그먼트와 익스텐트 USER_SEGMENTS
USER_EXTENTS
 
여유 영역 USER_FREE_SPACE 현재 여유로 표시된 영역이 얼마인지에 대한 정보
사용자 USER_USERS  
자원 제한량 USER_RESOURCE_LIMITS  
테이블 권한 USER_TAB_PRIVS  
열 권한 USER_COL_PRIVS  
시스템 권한 USER_SYS_PRIVS  
 
EX)
그럼 SEQUENCE정보를 알고 싶을때는 어떻하면 될까요?
SELECT * FROM USER_SEQUENCES
 
참고)  
DICTIONARY(DICT) 뷰
     - 데이터 사전 및 동적 성능 뷰에 대한 정보를 알고 싶으면 DICTIONARY 뷰나
         DICT_COLUMNS 뷰를 조회하면 됩니다.
 
      - 조회 할 수 있는 모든 데이터사전의 테이블이름과 설명을 조회 할 수 있습니다.
         물론 설명은 영문으로 되어 있습니다.
 
      - 동의어인 DICT를 이용해서도 똑같은 정보를 조회 할 수 있습니다.
 
     SQL> SELECT * FROM DICTIONARY WHERE table_name LIKE '%INDEX%';
     SQL> SELECT * FROM DICT WHERE table_name LIKE '%INDEX%';
 
 
DICT_COLUMNS 뷰
       - 뷰를 질의하면 해당 데이터사전의 컬럼에대한 정보를 조회 할 수 있습니다.
        SQL> SELECT * FROM DICT_COLUMNS WHERE TABLE_NAME LIKE '%INDEX%';
        SQL>SELECT * FROM dict WHERE table_name LIKE UPPER('%&데이타사전%');

시스템 시큐리티

카테고리 없음 2009. 6. 30. 19:22 posted by 이한비

gtg

카테고리 없음 2009. 4. 7. 01:35 posted by 이한비

flash player 9.0.151

카테고리 없음 2009. 3. 3. 16:11 posted by 이한비

[oracle] tablespace 늘리기

카테고리 없음 2009. 2. 27. 14:41 posted by 이한비

 

from DBMS 2007/05/29 14:31

SQLPLUS접속,

1. tablespace 정보 얻기

desc user_tablespaces;

2. tablespace 이름 조회

select tablespace_name from user_tablespaces ;

3. tablespace이름으로 포함된 filename 찾기

select file_name, tablespace_name, bytes from dba_data_files where tablespace_name = 'XXX'

4. tablespace 늘리기

 - 파일추가로 늘리기
    alter tablespace 테이블스페이스명 add datafile '(새)파일명포함경로' size 용량M
  - 기존파일 resize
    alter tablespace datafile '파일명포함경로' resize 변환용량 M

IOCTLSample

2008. 12. 30. 22:10

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.