對於初次接觸 Oracle 資料庫開發的人員,建立資料庫(建庫)是入門的第一課。Oracle 提供了兩種主要建庫方式:圖形化工具 DBCA 與手工建庫。前者適合快速部署,後者則能深入掌握資料庫架構原理,是 DBA 進階的必修課。
DBCA (Database Configuration Assistant) 是 Oracle 官方提供的圖形化建庫工具,介面友善、提示完善,操作直觀。
DBCA 會引導你完成範本選擇、儲存配置、字元集設定、記憶體參數調整等步驟,適合初學者或標準化部署場景。
手工建庫雖繁瑣,但能讓你理解每個組件的角色。以下是在 Windows 7 + Oracle 11g 環境下,建立名為 book 的資料庫完整步驟(安裝路徑 `D:\product\11.1.0\db_1`)。
D:\product\11.1.0\db_1\admin\book ├── arch (歸檔日誌) ├── bdump (後台進程追蹤,含 alert_book.log) ├── cdump (核心傾印) ├── create (建庫腳本輸出) └── udump (用戶會話追蹤) D:\product\11.1.0\db_1\oradata\book (資料檔、控制檔、重做日誌)
關鍵說明:`bdump` 下的 `alert_book.log` 是診斷資料庫問題的首要參考;`udump` 記錄會話級錯誤。
複製現有資料庫(如預設 `orcl`)的 `init.ora` 並修改關鍵參數:
set ORACLE_SID=book set ORACLE_HOME=D:\product\11.1.0\db_1
oradim -new -sid book -intpwd oracle -startmode manual
orapwd file=%ORACLE_HOME%\database\pwdbook.ora password=oracle entries=10
sqlplus / as sysdba SQL> STARTUP NOMOUNT PFILE='D:\product\11.1.0\db_1\admin\book\create\initbook.ora'
編寫包含 `MAXLOGFILES`、`MAXDATAFILES`、`CHARACTER SET AL32UTF8`、`DATAFILE`、`SYSAUX DATAFILE`、`UNDO TABLESPACE`、`DEFAULT TEMPORARY TABLESPACE` 等子句的腳本並執行。
@?/rdbms/admin/catalog.sql -- 建立資料字典 @?/rdbms/admin/catproc.sql -- 建立 PL/SQL 套件 @?/rdbms/admin/utlrp.sql -- 重新編譯無效物件
SQL> CREATE SPFILE FROM PFILE='...initbook.ora';
@?/rdbms/admin/utlsampl.sql -- 建立 SCOTT/EMP/DEPT 等範例表
| 維度 | DBCA | 手工建庫 |
|---|---|---|
| 速度 | 快 (分鐘級) | 慢 (小時級) |
| 學習價值 | 低 | 極高 |
| 客製化 | 受限於精靈選項 | 完全掌控 |
| 適用場景 | 生產快速部署、標準化環境 | 教學、特殊架構需求、DBA 考核 |
建議:初學者先用 DBCA 體驗完整流程,再嘗試手工建庫深化理解。