2012. 7. 11. 17:35

OS을 재설치하기전에 오라클을 죽이고 복사하셨다면

먼저 해당화일을 복사하셔서 안전한곳에 보관하신 후

오라클을 기존에 경로와 SID명등을 동일하게 새로 만듭니다.

그런 후 같은곳으로 보관하신 화일을을 덮어씌우고

오라클을 구동

또는

SVRMGR> startup mount

SVRMGR> RECOVER DATABASE ;

또는

SVRMGR> recover database until cancel ;

SVRMGR> alter database open resetlogs ;

하시면 될 듯..( 자세한 옵션은 책을 볼것)



..........................................................................




1> 테스트를 목적으로 한 작업

: 현재 Digital Unix에 있는 DB를 Linux에 백업하여

두고, DB삭제 -> DB생성테스트 -> 데이타 복구

와 같은 형식이고 Linux에 백업하면서 서비스를

할 필요가 없으시다면



Cold Backup을 받으신 두 작업하셔도 좋을듯하네요



Setp 1> DB를 Shutdown 한다.

2> DB와 관련된 모든 파일을 Copy한다.

. initSID.ora

. RedoLog File

. Control File

. 모든 데이타 파일

디렉토리는 꼭 기억하셔야 합니다.







(9I) 새로운 DATABASE 생성



(MANUAL : 수동)

=========================================



PURPOSE

-------



이 자료는 9i에서 수동으로 데이타베이스를 생성하는 방법에 대한 내용이다.





Explanation & Example

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

Oracle은 Database Configuration Assistant (DBCA) 를 이용하여 데이타베이스를 만드는

것을 권장한다. 아래의 내용은 DBA가 수동으로 9i 데이타베이스를 만들고자 할때 유용하다.





== 수동으로 Single-Instance 만들기 ==





1. initSID.ora 파일은 데이타베이스 설정을 초기화한다.

initSID.ora 파일에 나열된 parameter들은 순서대로 정렬할 필요는 없지만 특정 parameter가

두번 이상 나열되면 마지막 설정이 사용된다. 그래서 Oracle 9i Reference에서는 이러한

중복을 방지할수 있도록 parameter를 문자순으로 배열할 것을 권장한다.

initSID.ora 파일을 $ORACLE_HOME/dbs 디렉토리에 만든다. Windows에서는 이 초기화 파라미터

파일이 $ORACLE_HOME\database 디렉토리에 있다. 간단히 하기 위하여 사용하고 있던 initSID.ora

파일이나 init.ora을 복사한후 수정하여 사용한다.



test을 위하여 initTEST.ora 라는 초기화 파라미터 파일을 만든다.

(물론 아래의 내용은 필요에 따라 수정한다)



< initTEST.ora sample >



*.background_dump_dest='/home/ora920/admin/ORA920/bdump'

*.compatible='9.2.0.0.0'

*.control_files='/home/ora920/oradata/contest/control_01.ctl','/home/ora920/orada

ta/contest/control_02.ctl','/home/ora920/oradata/contest/control_03.ctl'

*.core_dump_dest='/home/ora920/admin/ORA920/cdump'

*.db_block_size=8192

*.db_cache_size=33554432

*.db_file_multiblock_read_count=16

*.db_name='TEST'

*.instance_name='TEST'

*.large_pool_size=16777216

*.processes=200

*.shared_pool_size=43886080

*.sort_area_size=524288

*.undo_management='AUTO'

*.undo_tablespace='UNDOTBS'

*.user_dump_dest='/home/ora920/admin/ORA920/udump'





2. 새로운 인스턴스 ID 설정

실행하기에 앞서 다른 instance가 떠 있고 같은 OS user을 사용한다면 아래와 같이

ORACLE_SID을 바꾼다. ORACLE_HOME, LD_LIBRARY_PATH, PATH등은 S/W 인스톨시에

이미 설정되었을 것이다.



< Bourne 또는 Korn Shell>



ora920:/home/ora920/product/9.2.0/dbs> export ORACLE_SID=TEST

ora920:/home/ora920/product/9.2.0/dbs> env |grep SID

ORACLE_SID=TEST



< C Shell >

$setenv ORACLE_SID TEST





3. NOMOUNT 모드로 데이타베이스을 시작한다.



sqlplus '/ as sysdba'



SQL> startup nomount



4. Create Database 명령 실행

(물론 파일 이름, 겅로명, 싸이즈등은 필요에 따라 수정한다)





CREATE DATABASE TEST

MAXLOGFILES 255

MAXINSTANCES 1

MAXDATAFILES 256

MAXLOGHISTORY 256

DATAFILE '/home/ora920/admin/TEST/system01.dbf' SIZE 400M

UNDO TABLESPACE "UNDOTBS" DATAFILE '/home/ora920/admin/TEST/undotbs01.dbf'

SIZE 200M AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED

CHARACTER SET UTF8

LOGFILE GROUP 1 ('/home/ora920/admin/TEST/redo_TEST01.dbf') SIZE 100M,

GROUP 2 ('/home/ora920/admin/TEST/redo_TEST02.dbf') SIZE 100M;



5. Users Tablespace를 생성한다.

(물론 파일 이름, 겅로명, 싸이즈등은 필요에 따라 수정한다)



CREATE TABLESPACE "USERS" DATAFILE '/home/ora920/admin/TEST/users01.dbf'

SIZE 300M AUTOEXTEND ON NEXT 5M MAXSIZE 1500M;



6. Temporary Tablespace를 생성한다.

(물론 파일 이름, 겅로명, 싸이즈등은 필요에 따라 수정한다)



CREATE TEMPORARY TABLESPACE "TEMP" TEMPFILE '/home/ora920/admin/TEST/temp01.dbf'

SIZE 40M AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED

EXTENT MANAGEMENT LOCAL;

ALTER DATABASE DEFAULT TEMPORARY TABLESPACE "TEMP";



7. 필요한 view, synonym등을 생성하기 위해 아래의 두 스크립트를 반드시 실행한다.

사용량이 많지 않은 서버에서 두 스크립트가 완료되는데 소요되는 시간은 총 35분에서 60분 사이이다.

두 스크립트는 반드시 SYS 사용자로 실행해야 한다.



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

2) CATPROC.SQL : PL/SQL을 사용하는데 필요한 패키지 및 프로시져를 생성



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

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



8. pupbld.sql 실행.

$ORACLE_HOME/sqlplus/admin 디렉토리에 있는 pupbld.sql 스크립트는 Product User Profile

테이블 및 관련 프로시져를 생성한다. 이 스크립트를 실행하는 주요 용도는 사용자가 SQL*Plus에

접속할때마다 경고 메세지가 표시되는 것을 방지하는 것이다. 이 스크립트는 SYSTEM 사용자로 실행한다.



$sqlplus system/manager



SQL>@$ORACLE_HOME/sqlplus/admin/pupbld.sql







Reference Documents

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

Oracle9i Database Administrator's Guide Release 1 (9.0.1)

Part Number A90117-01

1> 신규 데이타 베이스 생성

Posted by 몰라욧