
1) PK 추가 / 삭제하기
ALTER TABLE 테이블이름 ADD CONSTRAINT 인덱스 이름 PRIMARY KEY(field1, field2)
Alter TABLE 테이블이름 drop primary key cascade
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;
* 현재 접속한 상태라면 삭제할수 없다.