본문 바로가기

IT/DB

[Oracle] 기본 명령어 모음

oracle 10g 기초부터 사용자 계정 만들기

 

### DB connection

## console에서 sysdba로 접속하기

$ sqlplus "/as sysdba"

## user connection

SQL>CONNET SCOTT/TIGER;

SQL>CONNET /as sysdba

 

## DB mount/dismount

SQL> STARTUP

SQL> SHUTDOWN IMMEDIATE

 

 

### Tablespace

## Tablespace 조회

SELECT * FROM DBA_TABLESPACES;

 

## Tablespace 만들기

SQL> CREATE TABLESPACE test_data DATAFILE '/oracle/oradata/orcl/TESTDATA.dbf' SIZE 10M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;

 

## Tablespace 옵션

/*

autoextend off또는 on 자동증가 off또는 on

inital 50k 처음생성되는 extend 크기

next 50k 현재 존재하는 마지막 extend 다음에 생성될 extend에 할당 크기

minextents 10 세그먼트가 생성될 때 할당되어야 하는 extend의 수

maxextents 121 오라클이 객체에 대해 할당할 스ㅜ 있는 extend의 최대수

pctincrease 0 마지막 extend 다음에 생성될 extend의 증가율

*/

## Tablespace 삭제

SQL> DROP TABLESPACE 테이블스페이스명 INCLUDING CONTENTS;

물리적 파일은 파일시스템에서 직접 삭제 할것

 

## Tablespace와 user 연동

SQL> ALTER USER 유저명 DEFAULT TABLESPACE 테이블스페이스명;

 

## Tablespace의 datafile을 먼저 지웠을때 Tablespace 삭제 방법

SQL> ALTER DATABASE DATAFILE '/oracle/oradata/orcl/TSDITAMSDATA.dbf' OFFLINE DROP;

SQL> DROP TABLESPACE 테이블스페이스명 INCLUDING CONTENTS;

 

## Tablespace 사이즈 줄이기
SQL>ALTER DATABASE DATAFILE 'DBF파일경로' RESIZE 1100M

 

### User만들기

## user 생성
SQL> CREATE USER 유저명 IDENTIFIED BY 유저패스워드;

## user 생성시 default tablespace 설정

SQL> CREATE USER 유저명 IDENTIFIED BY 유저패스워드 DEFAULT TABLESPACE 테이블스페이스명;

## user에게 default tablespace 설정

SQL> ALTER USER 유저명 DEFAULT TABLESPACE 테이블스페이스명;

## user 삭제하기

SQL> DROP USER 유저명 CASCADE;

## user에게 모든 권한 부여
SQL> GRANT ALL PRIVILEGE TO 유저명;

## user에게 권한 부여
SQL>GRANT CREATE SESSION TO 유저명;
SQL>GRANT CREATE TABLE TO 유저명;
SQL>GRANT CREATE VIEW TO 유저명;
SQL>GRANT CREATE SEQUENCE TO 유저명;
SQL>GRANT CREATE PROCEDURE TO 유저명;
## user unlock 하기 (user lock일때)

SQL>ALTER USER scott ACCOUNT UNLOCK;

 

### Table

## Table 컬럼명보기

SQL>DESC 테이블명;
## Table생성 안될시

SQL>ALTER USER 유저명 DEDAULT TABLESPACE USERS QUOTA UNLIMITED ON USERS;
## Table만들기

CREATE TABLE 테이블명

(
    b_num NUMBER PRIMARY KEY,
    b_title VARCHAR2(50),
    b_content CLOB,
    b_count NUMBER DEFAULT 0,
    b_file VARCHAR2(100),
    b_register DATE
);

 

 

### 필수 명령어

## user 확인

SQL> SHOW 유저명

## current directory 파일 확인

SQL> !dir

## current directory에 *.sql 파일 실행

SQL> @파일명.sql