수동 Database 생성


기본 설치 정보
설치과정
1. init.ora 파일으로 PFILE 생성 
2. 데이터파일 디렉토리 생성 (oracle)
3. 수동 Database 생성
4. 스크립트 수행 (카탈로그 DB 생성 및 프로시저 생성)
5. DB 정보 확인


기본 설치 정보

오라클 버전 : 10.2.0.5.0
oracle SID : testdb
ORACLE_HOME  : /home/oracle/product/10g 
설치 위치 : /home/oracle/testdb
언어셋
- character set : KO16MSWIN949
- national characterset : AL16UTF16

OS 작업 계정 oracle.dba 


설치 과정

1. init.ora 파일으로 PFILE 생성

$ cd $ORACLE_HOME/dbs 
$ cp init.ora inittestdb.ora


PFILE 내용 추가(inittest.ora)

-- db_name
db_name= testdb
-- controlfile
control_files = (/home/oracle/testdb/data1/control01.ctl, /home/oracle/testdb/data2/control02.ctl)
-- shared_pool_size 수정 : init.ora 에는 기본 32M로 잡혀있고 64M 미만이면 startup이 안되고 catalog.sql 수행시 오류가 발생
shared_pool_size=64M
-- undo_tablespace
undo_tablespace=UNDOTBS1
undo_management=AUTO
-- remote에서 password 인증 옵션 remote_login_passwordfile=exclusive

$ vi inittestdb.ora

 

- 11 line  리모트에서 패스워드 파일 인증을 사용하게끔 하면 아래 명령으로 패스워드 파일을 생성해야 한다.

$ cd $ORACLE_HOME/dbs
$ orapwd file=/home/oracle/product/10g/dbs/orapwtestdb password=oracle

2. 데이터파일 디렉토리 생성 

$ cd /home/oracle
$ mkdir testdb 
$ cd testdb
$ mkdir data1 data2 data3 data4 data5 --각데이터 파일이 들어갈 곳

3. 수동 Database 생성

$ export ORACLE_SID= testdb
$ sqlplus / as sysdba

SQL> startup nomount
SQL> CREATE DATABASE testdb
controlfile reuse
system datafile '/home/oracle/testdb/data5/system01.dbf' size 300m reuse 
autoextend on next 10m maxsize 1024m extent management local 
sysaux 
datafile '/home/oracle/ testdb /data5/sysaux01.dbf' size 120m reuse
autoextend on next 10m maxsize 1024m
default temporary tablespace temp 
tempfile '/home/oracle/ testdb /data5/temp01.dbf' size 50m reuse
undo tablespace undotbs1
datafile '/home/oracle/ testdb /data5/undotbs01.dbf' size 200m reuse
autoextend on next 10m maxsize 1024m
character set KO16MSWIN949
national character set AL16UTF16
logfile 
group 1 ('/home/oracle/ testdb /data3/redo01.log') size 10m reuse,
group 2 ('/home/oracle/ testdb /data3/redo02.log') size 10m reuse
user sys identified by oracle
user system identified by oracle; 

※ reuse는 안써줘도 무방하지만 생성할시 에러메시지로 reuse사용하길 권장한다.

생성 완료가 되면 DB가 오픈 상태로 전환된다.


4. 스크립트 수행 (카탈로그 DB 생성 및 프로시저 생성)

$ sqlplus / as sysdba

SQL>@$ORACLE_HOME/rdbms/admin/catalog.sql
SQL>@$ORACLE_HOME/rdbms/admin/catproc.sql

--기타 뷰생성 (생략가능)
SQL> @$ORACLE_HOME/rdbms/admin/catblock.sql
SQL> @$ORACLE_HOME/sqlplus/admin /pupbld.sql
SQL> @$ORACLE_HOME/sqlplus/admin /help/hlpbld.sql helpus.sql

line3, 4 의 스크립트는 수동으로 DB를 생성했다면 필수적으로 수행해야 하는 스크립트이다.

5. DB 정보 확인
 

SQL> select property_name, property_value from database_properties;



오류

create database testdb
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced

inittest.ora파일과 create database 구문의 undo tablespace가 틀려서 발생하는 오류이기에 구문안의 오타를 정확히 파악하는 것이 중요하다. 





출처 및 참고

http://cyworld.com/bc83/7009005 : 내 삶의 흔적



 


<