본문 바로가기

ORACLE

SID 추가생성

요번에 오라클에서 기존에 자주 작업했던 간단한 계정추가가 아닌 데이터베이스를 생성해야할작업이 생겼다.
작업환경은 Oracle 9i 이며 운영체제는 AIX로 작업했다.

그럼 간단하게 SID명이 "cspark" 데이터베이스를 신규 생성해보자! -_-!

1. init.ora 파일 생성


가장 먼저 작업해야할건 기본 설정파일을 생성하는것이다. 보통 $ORACLE_HOME/dbs 폴더에 init.ora파일을 사용할텐데
별도의 설정을 해야할경우 init.ora설정내용을 복사해 파일을 생성해서 설정변경후 작업 해도 무관하다. ( 필자는 initCSPARK.ora 파일로 생성하였다.)

2. 관련 폴더 생성


음 처음에 멋모르고 무작정 startup 햇을때 오류가 나는게 이 관련폴더 생성을 하지 않아서 자꾸 에러가 발생하였다..;;
필자의 경우 아래와 같이 설정후 작업을 하였다.
/data1/cspark/ : 기본 system, undo파일이 생성될 폴더
/oracle/app/oracle/admin/CSPARK/bdump : 컨피그 폴더
/oracle/app/oracle/admin/CSPARK/cdump
/oracle/app/oracle/admin/CSPARK/udump

3. ORACLE_SID 변경
> ORACLE_SID=CSPARK
> export ORACLE_SID
> sqlplus '/ as sysdba'


오라클계정으로 접속후 이제 실제 생성할 SID로 변경하고 sys로 접속하자.

4. startup nomount pfile=/oracle/app/oracle/product/9.2.0/dbs/initCSPARK.ora


위의 1단계에서 생성하였던 initCSPARK.ora파일을 가지고 startup을 한다. 아직 당연하게도 mount는 되지 않는다.;;
설정폴더와 init 파일에 이상이 없다면 정상적으로 startup이 될것이다.;;

5. 데이터베이스 생성

CREATE DATABASE CSPARK
MAXINSTANCES 1
MAXLOGHISTORY 1
MAXLOGFILES 20
MAXLOGMEMBERS 5
MAXDATAFILES 100
DATAFILE '/data1/cspark/system01.dbf' SIZE 100M REUSE
AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
UNDO TABLESPACE "UNDOTBS" DATAFILE '/data1/cspark/undotbs01.dbf'
SIZE 100M AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
CHARACTER SET UTF8
NATIONAL CHARACTER SET UTF8
LOGFILE GROUP 1 ('/data1/cspark/redo01a.log', '/data1/cspark/redo01b.log') SIZE 10M,
GROUP 2 ('/data1/cspark/redo02a.log', '/data1/cspark/redo02b.log') SIZE 10M ;


실제 SID가 될 데이터베이스를 생성한다.
보면 DATAFILE은 /data1/cspark폴더에 생성이 되고 언어셋은 UTF8로 생성하였다
한글로 생성을 원한다면 'KO16KSC5601' 로 변경해주면된다.(주의할게 언어셋에 오타가 난다면 정상적으로 startup하지 못한다.)

6. 기본 설정 스크립트 SQL 실행
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
@?/rdbms/admin/caths.sql


위의 4번 작업부터는 SQL*Plus에서 작업이 진행되며 마지막으로 데이터베이스에서 view, synonym등을 사용하기위한 스크립트를 실행한다. 참고로 해당 sql문들의 기능은 아래와 같다.

CATALOG.SQL : 데이터 딕셔너리 뷰와 다이나믹 포퍼먼스 뷰를 생성

CATPROC.SQL : PL/SQL을 사용하는데 필요한 패키지 및 프로시져를 생성
"@"는 SQL*Plus에서 실행을 의미하며 "?"는 SQL*Plus에서 Oracle의 설치경로로 인식후 처리하게된다.

이후에는 필요한 계정등을 생성후 사용토록하자.-_-;

저작자 표시