手動建立資料庫是DBA們經常遇到的情形,因為有些情況下無法提供GUI環境。實際上手動建庫,只要設定好了相關的參數或值,也是非常方便的。本文基於Oracle 11g首先描述了手動建庫的大致步驟並給出樣本示範。最後提供了一個shell指令碼直接執行來實現手動建庫。在執行前該指令碼可根據你的路徑進行適當的修改。
一、手動建庫大致步驟
- 設定環境變數.bash_profile
- 建立參數檔案(位置:$ORACLE_HOME/dbs)
- 建立目錄結構
- 執行建庫指令碼
二、手動建立資料庫
1、設定環境變數.bash_profile
--確保至少包含下列環境變數,對於已經安裝好Oracle Database software的情形下,實際上可以跳過此步驟
$ vi .bash_profile
export ORACLE_SID=catadb
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/db_1
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
2、建立參數檔案(位置:$ORACLE_HOME/dbs)
[oracle@linux1 dbs]$ export ORACLE_SID=catadb
[oracle@linux1 ~]$ cd $ORACLE_HOME/dbs
[oracle@linux1 dbs]$ grep -v \# init.ora >init$ORACLE_SID.ora
[oracle@linux1 dbs]$ more initcatadb.ora
db_name='catadb'
memory_target=512M
processes = 150
audit_file_dest='/u03/uat/catadb/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/u03/uat/catadb/fr_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u03/uat/catadb'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
control_files = ('/u03/uat/catadb/oradata/catadb01.ctl','/u03/uat/catadb/oradata/catadb02.ctl')
compatible ='11.2.0'
3、建立目錄結構
[oracle@linux1 ~]$ mkdir -p /u03/uat/catadb
[oracle@linux1 dbs]$ cd /u03/uat/catadb
[oracle@linux1 catadb]$ mkdir adump diag fr_area oradata
4、執行建庫指令碼
[oracle@linux1 catadb]$ more create_catadb.sql
create database catadb
maxlogfiles 5
maxlogmembers 5
maxdatafiles 100
maxinstances 1
logfile
group 1 ('/u03/uat/catadb/oradata/redo1.log') size 10m,
group 2 ('/u03/uat/catadb/oradata/redo2.log') size 10m,
group 3 ('/u03/uat/catadb/oradata/redo3.log') size 10m
datafile
'/u03/uat/catadb/oradata/system.dbf' size 200m reuse
sysaux datafile '/u03/uat/catadb/oradata/sysaux.dbf' size 100m
default tablespace user
datafile '/u03/uat/catadb/oradata/userdata.dbf' size 100m
undo tablespace undotbs1
datafile '/u03/uat/catadb/oradata/undo1.dbf' size 100m
default temporary tablespace temp1
tempfile '/u03/uat/catadb/oradata/temp01.dbf'
size 100m reuse
character set al32utf8
;
idle> @/u03/uat/catadb/create_catadb.sql
Database created.
--添加資料字典
idle> edit /u03/uat/catadb/post_create_catadb.sql
@$ORACLE_HOME/rdbms/admin/catalog.sql
@$ORACLE_HOME/rdbms/admin/catproc.sql
conn system/manager
@$ORACLE_HOME/sqlplus/admin/pupbld.sql
idle> @/u03/uat/catadb/post_create_catadb.sql
system@CATADB> select name,open_mode from v$database;
NAME OPEN_MODE
--------- --------------------
CATADB READ WRITE
三、手動建庫指令碼
--下面將上述動作進行了一個整理,全部封裝到shell指令碼來執行,輸入密碼,坐著喝咖啡吧!
下載指令碼:Oracle 11g R2 手動建庫指令碼
免費在 http://linux.bkjia.com/
使用者名稱與密碼都是www.bkjia.com
具體下載目錄在 /2013年資料/11月/16日/Oracle 11g R2 手動建庫(create database manually)
下載方法見
靜默安裝Oracle 11gR2軟體並且手動建庫
Linux下Oracle 10g手工建庫全過程
Oracle DataGuard建庫
Oracle手工建庫筆記
Oracle手工建庫後rman無法啟用(RMAN-04015)
Oracle 11.2g 手工建立資料庫詳解 手工建庫