일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- fdisk
- Oracle RAC
- sqlplus
- oracle
- prompt
- Linux
- MySQL
- solaris network
- cygwin
- perl string
- perl one-liner
- SQL
- command & perl
- Network
- solaris
- oracle install
- perl + 정규표현식
- PERL
- rac
- Unix
- dba
- RHEL4
- memory
- grid
- 연산자
- mariaDB
- php5
- 오라클
- bash
- patch
Archives
- Today
- Total
DATA 전문가로 가는 길
[ Oracle ] 수동 데이터베이스 생성 방법 본문
작성자 : 박상수
작성일자 : 2010.12.14
작업환경 : VMware7 [ RHEL4 + Oracle 10g R2 ]
작성일자 : 2010.12.14
작업환경 : VMware7 [ RHEL4 + Oracle 10g R2 ]
1. $ORACLE_HOME/dbs/init[SID].ora 파일
[설명] 아래 내용처럼 pfile를 임의로 생성해주세요. 가장 중요한 것은 언두 테이블스페이스를 잘 기억 해두시기 바랍니다.
[2010-12-15 20:46:17]-[oracle@server102:~/product/10g/dbs]
$ cat inittestdb.ora
control_files = (/home/oracle/oradata/testdb/control.001.dbf,
/home/oracle/oradata/testdb/control.002.dbf,
/home/oracle/oradata/testdb/control.003.dbf)
db_name = testdb
db_block_size = 8192
pga_aggregate_target = 256M
processes = 100
open_cursors = 1024
undo_management = AUTO
undo_tablespace = undotbs01
compatible = 10.2.0
sga_target = 128M
nls_language = AMERICAN
nls_territory = AMERICA
background_dump_dest = /home/oracle/admin/testdb/bdump
core_dump_dest = /home/oracle/admin/testdb/cdump
user_dump_dest = /home/oracle/admin/testdb/udump
audit_file_dest = /home/oracle/admin/testdb/adump
[2010-12-15 20:46:17]-[oracle@server102:~/product/10g/dbs]
$ cat inittestdb.ora
control_files = (/home/oracle/oradata/testdb/control.001.dbf,
/home/oracle/oradata/testdb/control.002.dbf,
/home/oracle/oradata/testdb/control.003.dbf)
db_name = testdb
db_block_size = 8192
pga_aggregate_target = 256M
processes = 100
open_cursors = 1024
undo_management = AUTO
undo_tablespace = undotbs01
compatible = 10.2.0
sga_target = 128M
nls_language = AMERICAN
nls_territory = AMERICA
background_dump_dest = /home/oracle/admin/testdb/bdump
core_dump_dest = /home/oracle/admin/testdb/cdump
user_dump_dest = /home/oracle/admin/testdb/udump
audit_file_dest = /home/oracle/admin/testdb/adump
2. createdb.sql 스크립트
[설명] 데이터베이스를 생성하기위해서 아래와 같은 스크립트를 수행 해주시기 바랍니다. 여기에서 반드시 undo 테이블스페이스의 이름은 pfile과 동일해야 합니다.
[2010-12-15 21:22:52]-[oracle@server102:~]
$ cat createdb.sql
--#1 단계 : db 생성
create database testdb
logfile
group 1 ('/home/oracle/oradata/testdb/redo01_a.log','/home/oracle/oradata/testdb/redo01_b.log') size 5M,
group 2 ('/home/oracle/oradata/testdb/redo02_a.log','/home/oracle/oradata/testdb/redo02_b.log') size 5M,
group 3 ('/home/oracle/oradata/testdb/redo03_a.log','/home/oracle/oradata/testdb/redo03_b.log') size 5M
maxlogfiles 5
maxlogmembers 5
maxloghistory 1
maxdatafiles 100
maxinstances 1
datafile '/home/oracle/oradata/testdb/system01.dbf' size 300M
undo tablespace undotbs01
datafile '/home/oracle/oradata/testdb/undo_testdb.dbf' size 100M
sysaux
datafile '/home/oracle/oradata/testdb/sysaux01.dbf' size 100M
default temporary tablespace temp_testdb
tempfile '/home/oracle/oradata/testdb/temp_testdb.dbf' size 100M
character set KO16KSC5601
national character set AL16UTF16;
--#2 단계 : 필요한 스크립트 생성. 이 부분이 시간이 30분 넘게 걸림
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
conn system/manager
@?/sqlplus/admin/pupbld.sql
[2010-12-15 21:22:52]-[oracle@server102:~]
$ cat createdb.sql
--#1 단계 : db 생성
create database testdb
logfile
group 1 ('/home/oracle/oradata/testdb/redo01_a.log','/home/oracle/oradata/testdb/redo01_b.log') size 5M,
group 2 ('/home/oracle/oradata/testdb/redo02_a.log','/home/oracle/oradata/testdb/redo02_b.log') size 5M,
group 3 ('/home/oracle/oradata/testdb/redo03_a.log','/home/oracle/oradata/testdb/redo03_b.log') size 5M
maxlogfiles 5
maxlogmembers 5
maxloghistory 1
maxdatafiles 100
maxinstances 1
datafile '/home/oracle/oradata/testdb/system01.dbf' size 300M
undo tablespace undotbs01
datafile '/home/oracle/oradata/testdb/undo_testdb.dbf' size 100M
sysaux
datafile '/home/oracle/oradata/testdb/sysaux01.dbf' size 100M
default temporary tablespace temp_testdb
tempfile '/home/oracle/oradata/testdb/temp_testdb.dbf' size 100M
character set KO16KSC5601
national character set AL16UTF16;
--#2 단계 : 필요한 스크립트 생성. 이 부분이 시간이 30분 넘게 걸림
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
conn system/manager
@?/sqlplus/admin/pupbld.sql
3. 디렉토리 생성
[설명] 이부분은 pfile과 스크립트에서 사용되는 디렉토리를 기반으로 생성해주시면 됩니다.
[2010-12-15 20:46:17]-[oracle@server102:~/product/10g/dbs]
$
mkdir -p /home/oracle/admin/testdb/bdump
mkdir -p /home/oracle/admin/testdb/cdump
mkdir -p /home/oracle/admin/testdb/udump
mkdir -p /home/oracle/admin/testdb/adump
mkdir -p /home/oracle/oradata/testdb/
[2010-12-15 20:46:17]-[oracle@server102:~/product/10g/dbs]
$
mkdir -p /home/oracle/admin/testdb/bdump
mkdir -p /home/oracle/admin/testdb/cdump
mkdir -p /home/oracle/admin/testdb/udump
mkdir -p /home/oracle/admin/testdb/adump
mkdir -p /home/oracle/oradata/testdb/
4. 데이터베이스 생성(스크립트 수행)
[설명] 이부분은 pfile과 스크립트에서 사용되는 디렉토리를 기반으로 생성해주시면 됩니다.
[2010-12-15 21:23:01]-[oracle@server102:~]
$ sqlplus / as sysdba
SQL> host ls
admin createdb.sql oraInventory oradata patchset product
SQL> @createdb.sql
....
...
[설명] 덤프파일을 확인 하도록하세요. ( 터미널이나 ttl을 하나 더 띄우세요.)
[2010-12-15 21:32:18]-[oracle@server102:~/admin/testdb/bdump]
$ tail -f /home/oracle/admin/testdb/bdump/alert_testdb.log
..
...
[설명] 정상적으로 수행 되었을 경우에는 바로 OPEN 단계로 시작 합니다.
테스트를 위해 파일과 현재 오픈상태인지 확인 하도록 하겠습니다.
SQL> set line 150
SQL> set pagesize 2000
SQL> col tablespace-name for a10
SQL> col file_name for a50
SQL> select tablespace_name , bytes/1024/1024 MB, file_name
2 from dba_data_files;
TABLESPACE_NAME MB FILE_NAME
------------------------------ ---------- --------------------------------------------------
SYSTEM 100 /home/oracle/oradata/testdb/system01.dbf
UNDOTBS01 100 /home/oracle/oradata/testdb/undo_testdb02.dbf
SYSAUX 100 /home/oracle/oradata/testdb/sysaux01.dbf
SQL> select tablespace_name, bytes/1024/1024 MB, file_name
2 from dba_temp_files;
TABLESPACE_NAME MB FILE_NAME
------------------------------ ---------- --------------------------------------------------
TEMP_TESTDB02 10 /home/oracle/oradata/testdb/temp_testdb02.dbf
SQL> select status from v$instance;
STATUS
------------
OPEN
[2010-12-15 21:23:01]-[oracle@server102:~]
$ sqlplus / as sysdba
SQL> host ls
admin createdb.sql oraInventory oradata patchset product
SQL> @createdb.sql
....
...
[설명] 덤프파일을 확인 하도록하세요. ( 터미널이나 ttl을 하나 더 띄우세요.)
[2010-12-15 21:32:18]-[oracle@server102:~/admin/testdb/bdump]
$ tail -f /home/oracle/admin/testdb/bdump/alert_testdb.log
..
...
[설명] 정상적으로 수행 되었을 경우에는 바로 OPEN 단계로 시작 합니다.
테스트를 위해 파일과 현재 오픈상태인지 확인 하도록 하겠습니다.
SQL> set line 150
SQL> set pagesize 2000
SQL> col tablespace-name for a10
SQL> col file_name for a50
SQL> select tablespace_name , bytes/1024/1024 MB, file_name
2 from dba_data_files;
TABLESPACE_NAME MB FILE_NAME
------------------------------ ---------- --------------------------------------------------
SYSTEM 100 /home/oracle/oradata/testdb/system01.dbf
UNDOTBS01 100 /home/oracle/oradata/testdb/undo_testdb02.dbf
SYSAUX 100 /home/oracle/oradata/testdb/sysaux01.dbf
SQL> select tablespace_name, bytes/1024/1024 MB, file_name
2 from dba_temp_files;
TABLESPACE_NAME MB FILE_NAME
------------------------------ ---------- --------------------------------------------------
TEMP_TESTDB02 10 /home/oracle/oradata/testdb/temp_testdb02.dbf
SQL> select status from v$instance;
STATUS
------------
OPEN
'Data Architecture > DB Install' 카테고리의 다른 글
Comments