프로그래밍/Database

오라클 명령어

kdy0831 2010. 12. 28. 16:46

1) PK 추가 / 삭제하기

ALTER TABLE 테이블이름 ADD CONSTRAINT 인덱스 이름 PRIMARY KEY(field1, field2) 

Alter TABLE 테이블이름 drop primary key cascade

 2) 전체 테이블 날리기.

SELECT 'DROP TABLE ' || TABLE_NAME || ';' FROM ALL_TABLES WHERE OWNER = 'KICT'; 

 3) 테이블 스페이지

   #1. 테이블 스페이스 생성 확인 및 테이블 스페이스 생성.
      select count(*) from dba_users;


CREATE TABLESPACE EMS_COMN_DAT DATAFILE
 '/oradata/ems/ems_comn_dat01.dbf' size 1000M
 DEFAULT STORAGE (
   INITIAL   100K
   NEXT   100K
   PCTINCREASE  0
   MINEXTENTS  1
 );

CREATE TABLESPACE EMS_COMN_IDX DATAFILE
 '/oradata/ems/ems_comn_idx01.dbf' size 500M
 DEFAULT STORAGE (
   INITIAL   100K
   NEXT   100K
   PCTINCREASE  0
   MINEXTENTS  1
 );
 
CREATE TABLESPACE EMS_LST_DAT DATAFILE
 '/oradata/ems/ems_lst_dat01.dbf' size 4096M
 DEFAULT STORAGE (
   INITIAL   100K
   NEXT   100K
   PCTINCREASE  0
   MINEXTENTS  1
 );

CREATE TABLESPACE EMS_LST_IDX DATAFILE
 '/oradata/ems/ems_lst_idx01.dbf' size 2048M
 DEFAULT STORAGE (
   INITIAL   100K
   NEXT   100K
   PCTINCREASE  0
   MINEXTENTS  1
 );

CREATE USER ems IDENTIFIED BY ems2005
DEFAULT TABLESPACE EMS_COMN_DAT
TEMPORARY TABLESPACE TEMP;

GRANT CONNECT,RESOURCE TO ems;

     
   #2. 테이블 스페이스 삭제
DROP TABLESPACE app_data
INCLUDING CONTENTS ;
<including 을 안해주었을 경우 tablespace 가 비워져 있을때만 삭제가 된다.>


 
4) DB 사용자 생성
create user 아이디
identified by 비번
default tablespace tablespace이름;

5) 계정에 권한부여
grant connect,resource,dba to 아이디

6) tablespace 생성 확인
select count(*) from dba_users;

7) 메모리 사용보기 : show sga;

8) 현재 생성된 사용자 보기 : select * from all_users;

9) DB NAME과 SID 확인 방법
SQL> select name from v$database;

SQL> select instance from v$thread;



########################## 계정관련 ##########################

1. 계정생성
create user rchwin
identified externally    -->  운영체제에 로그인한후  $sqlplus /  하게되면 바로 로그인된다.
default tablespace users
temporary tablespace temp
quota 20M on users
password expire;  --> 접속후 패스워드 변경해야한다.

A. 계정생성후에는 반드시 기본적인 권한을 부여한다. 기본적으로 connect 와 resource 권한을 부여한다.
grant connect, resource to rchwin;

B. 파라미터 파일에 OS_AUTHENT_PREFIX 라는 파라미터값을 " " 로 설정한다.
 OS_AUTHENT_PREFIX = " "

C. 운영체제로 부터 데이터베이스 아이디와 같은 아이디를 생성한다.
 useradd -m -d /opt/oracle -s /bin/ksh -g dba rchwin


* 사용자가 자신의 패스워드를 변경하게 해주는 명령어
 SQL> alter user rchwin password expire;
 
* 사용자에 관한 딕셔너리 정보 - dba_users, dba_ts_quotas
 
 
2. 계정 삭제 (실무자를 위한 p 506)
 
A. drop user rchwin cascade; 

* 현재 접속한 상태라면 삭제할수 없다.