블로그 이미지
BJcomm
bjcomm

공지사항

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

calendar

1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
11-23 15:47

오라클 온라인 Document  참고 : http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/create.htm#sthref242

 

■ 오라클 DB 생성방법

- CREATE DATABASE (수동생성)

  1. 구성정보 선택 (SID,메모리크기,파일위치,인증모드,캐릿터셋,계정 등등)

  2. pfile 생성 (앞서 선택한 구성정보대로 init$ORACLE_SID.ora)

  3. spfile 생성 (spfile$ORACLE_SID.ora) => 생략해도 무방

  4. stratup nomount

  5. CREATE DATABASE 문을 이용해 DB 생성 (앞서 선택한 구성정보대로  ^^)

  6. DB관리용 VIEW 생성 (catalog.sql, catproc.sql)

  7. 시용자용 테이블 스페이스 생성

 

- DBCA (자동생성) => 그냥 하면됨. ㅋ ^^

 

CREATE DATABASE  문을 이용항 DB 설치

- OS : 리눅스 엔터프라이즈 어드벤스드 서버 (RHEL AS 4)

- oracle SID : MYDB

- 설치 위치 : /home/oracle/MYDB

- 계정 : oracle

- character set : WE8ISO8859P1

- national characterset : AL16UTF16

- 원격에서 DB접속시 패스워드 파일인증사용 가능하도록 설정

- 데이터 파일 정보

분류

위치

크기

조건

Control File

/home/oracle/MYDB/data1

/home/oracle/MYDB/data2

-2개생성

-디스크분산

Redolog File

/home/oracle/MYDB/data3

10M

-Group 2개

-Member 1개

SYSTEM Tablespace

/home/oracle/MYDB/data5

300M

-Locally Managed

-자동확장 가능

-최대 크기 1G

SYSAUX Tablespace

/home/oracle/MYDB/data5

120M

-자동확작 가능

-최대 크기 1G

TEMP Tablespace

/home/oracle/MYDB/data5

50M

-Default temporary

-자동확장 가능

-최대 크기 1G

UNDO Tablespace

/home/oracle/MYDB/data5

200M

-자동확장 가능

-최대 크기 1G

 

----------------------------------------기본 정보 끝--------------------------------------------------

 

■ DB 설치 상세과정

 

자그럼 위의 정보대로 DB 인스턴스를 생성해 해보도록 합시다.

 

1. init.ora 파일 만들기

#] cd $ORACLE_HOME

#] cd dbs

#] cp init.ora initMYDB.ora

#] vi initMYDB.ora

---------------------------------- init.MYDB.ora 추가내용 -----------------------------------------

# controlfile 정보 수정

control_file = (/home/oracle/MYDB/data1/control01.ctl,

                     /home/oracle/MYDB/data2/control02.ctl)

#db_name 수정

db_name=MYDB

#shared_pool_size 수정 (init.ora 에는 기본 32M 로 잡혀있음 64M 미만이면 catalog.sql 수행시 오류가 발생한다.)

shared_pool_size=64M

#undo_management 자동

undo_management=AUTO

#undo_tablespace 지정

undo_tablespace=UNDOTBS1

#리모트에서 패스워드 파일 인증사용

remote_login_passwordfile=exclusive

#DB Cache 크기는 32M 로 설정

db_cache_size=32M

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

 

2. 오라클인스턴스 디렉토리및 데이터파일 디렉토리 생성

<oracle 계정으로 수행>

#] cd /home/oracle

#] mkdir MYDB  => 새로 생성될 인스턴스의 보금자리 되겠다.

#] cd MYDB

#] mkdir data1 data2 data3 data4 data5

 

3. 패스워드 파일 생성

#] cd $ORACLE_HOME/dbs

#] orapw file=orapwMYDB password=oracle (패스워드는 "oracle")

=> orapwMYDB 라는 파일이 생성된다.

 

4. 오라클 인스턴스 생성

#] export ORACLE_SID=MYDB

#] sqlplus "/as sysdba"

SQL> startup nomount

SQL> CREATE DATABASE MYDB

controlfile reuse   # initrNEWDB.ora 에 따로 위치는 지정되있음.

datafile '/home/oracle/MYDB/data5/system01.dbf' size 300m reuse # system tablespace 의 데이터 파일 지정

autoextend on next 10m maxsize 1024m extent management local # 자동확장,최대 1G, local management

sysaux  # sysaux 테이블 스페이스 설정 시작

datafile '/home/oracle/MYDB/data5/sysaux01.dbf' size 120m reuse

autoextend on next 10m maxsize 1024m

default temporary tablespace temp # TEMP 테이블 스페이스 설정 시작

tempfile '/home/oracle/MYDB/data5/temp01.dbf' size 50m reuse

undo tablespace undotbs1 # UBDO 테이블 스페이스 설정 시작

datafile '/home/oracle/MYDB/data5/undotbs01.dbf' size 200m reuse

autoextend on next 10m maxsize 1024m

character set WE8ISO8859P1 # 캐릭터셋

national character set AL16UTF16 # 캐릭터셋

logfile # 리두로그파일 설정 시작 (2개그룹 이면서 그룹당 멤버 1개씩)

group 1 ('/home/oracle/MYDB/data3/redolog01.log') size 10m reuse,

group 2 ('/home/oracle/MYDB/data3/redolog02.log') size 10m reuse

user sys identified by oracle         # sys유저 패스워드 설정

user system identified by oracle;   # system유저 패스워드 설정

 

※ 모든 파일생성시 REUSE 옵션을 주는 이유는?

    그냥 안줘도 사실 상관없습니다. 하지만 CREATE DATABASE 를 수행하면 에러가 자주 발생합니다. (주로 오타 ^^ 혹은 기타 사유로)

    그래서 여러번 수행하는것에 미리 대비하는 차원에서 REUSE 를 넣었습니다. (하다가 에러나면 에러나기 전까지의 파일은 만들어지거등요)

    만약 자신이 오타없이 혹은 에러없이 한번에 CREATE DATABASE 를 성공시킬수 있다면 REUSE 옵션은 빼도 됩니다. ^^

 

5. 카탈로그 DB 생성및 오라클 프로시저 생성

#] cd $ORACLE_HOME/rdbms/admin

#] sqlplus "/as sysdba"

SQL>@catalog.sql

SQL>@catproc.sql

 

6. 기타 뷰생성 (생략해도됨)

SQL> catblock.sql

SQL> quit

#] cd $ORACLE_HOME/sqlplus/admin

#] sqlplus "/as sysdba"

SQL> @pupbld.sql

SQL> !cd ./help

SQL> @hlpbld.sql helpus.sql

 

7. DB 정보 확인사살

SQL> select property_name, property_value from database_properties;