本文記錄在 RHEL 5.4 x86 平台上,以命令列模式手動建立 Oracle 11.2 資料庫的最精簡流程。適用於無圖形介面、需快速部署或自動化腳本的場景。
編輯 /home/oracle/.bash_profile,加入以下內容:
# Oracle 11g R2 環境變數
export ORACLE_HOME=/app/oracle/product/11.2.0/dbhome_1
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG=AMERICAN_AMERICA.UTF8
export ORACLE_SID=orcl
umask 022
執行 source ~/.bash_profile 生效。
若安裝時啟用 SELinux,必須以 root 執行:
setenforce 0
否則 sqlplus 會報 error while loading shared libraries 錯誤。永久關閉需修改 /etc/selinux/config 設 SELINUX=disabled 並重開機。
以 oracle 用戶建立 /home/oracle/init.ora,僅需一行:
db_name=orcl
其餘參數採用預設值,Oracle 11.2 允許此極簡模式啟動。
sqlplus / as sysdba
SQL> CREATE SPFILE='spfileorcl.ora' FROM PFILE='/home/oracle/init.ora';
SQL> STARTUP NOMOUNT;
SQL> CREATE DATABASE orcl;
-- 等待建立完成
SQL> SELECT SYSDATE FROM DUAL; -- 驗證資料庫可用
-- 建立資料字典視圖與 PL/SQL 套件
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
-- 以 SYSTEM 用戶執行 SQL*Plus 產品使用者設定
CONN system/manager
@?/sqlplus/admin/pupbld.sql
此時可查詢 V$DATAFILE、V$CONTROLFILE 確認檔案位置(預設在 $ORACLE_HOME/dbs)。
ERROR ACCESSING PRODUCT_USER_PROFILE。手動建庫雖繁瑣,卻能深入理解 Oracle 架構。生產環境建議使用 DBCA 範本或回應檔實現標準化、可重複部署。