首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 教學

Oracle 11g 手動建庫實戰筆記:目錄規劃與權限配置

     編輯:Oracle 教學

Oracle 11g 手動建庫實戰筆記:目錄規劃與權限配置

手動建庫 (Manual Database Creation) 能讓 DBA 完全掌控文件佈局、參數配置、存儲屬性,是理解 Oracle 架構的最佳練習。本文記錄 11g 環境下的前置準備步驟。

第一步:目錄規劃 (遵循 OFA 標準)


# 進入數據文件根目錄
cd $ORACLE_BASE/oradata
ls
# 假設已有 PROD 庫

# 創建新庫 SID 目錄
mkdir HYL
cd HYL

# 規劃多磁盤分佈目錄 (根據實際掛載點調整)
mkdir dump disk1 disk2 disk3 disk4 disk5

# dump 目錄下細分三類追蹤文件
cd dump
mkdir bdump cdump udump
# bdump: 背景進程跟蹤 (alert.log 等)
# cdump: 核心轉儲
# udump: 用戶進程跟蹤 (SQL Trace 文件)

第二步:權限設置


# 遞歸授權給 oracle 用戶及 oinstall 組
chown -R oracle:oinstall /u01/app/oracle/oradata/HYL

# 目錄權限 755 (owner rwx, group rx, other rx)
chmod -R 755 /u01/app/oracle/oradata/HYL

關鍵點:所有數據文件、控制文件、Redo Log、參數文件、追蹤目錄必須在 oracle 用戶可寫路徑下,否則啟動失敗。

第三步:初始化參數文件 (PFILE)


cd $ORACLE_HOME/dbs
vi initHYL.ora

核心參數模板:


*.sga_target=400M
# 物理內存 80% 給 SGA+PGA,SGA:PGA ≈ 4:1
*.db_name=HYL
*.control_files='/u01/app/oracle/oradata/HYL/disk1/control01.ctl',
               '/u01/app/oracle/oradata/HYL/disk2/control01.ctl',
               '/u01/app/oracle/oradata/HYL/disk3/control01.ctl'
*.undo_management=AUTO
*.undo_tablespace=UNDOTBS
*.user_dump_dest=/u01/app/oracle/oradata/HYL/dump/udump
*.background_dump_dest=/u01/app/oracle/oradata/HYL/dump/bdump
*.core_dump_dest=/u01/app/oracle/oradata/HYL/dump/cdump

第四步:啟動至 NOMOUNT 狀態


export ORACLE_SID=HYL
sqlplus / as sysdba
SQL> STARTUP NOMOUNT;
-- 實例啟動,僅分配 SGA、啟動背景進程,未掛載控制文件

第五步:編寫 CREATE DATABASE 腳本 (參考官方文檔)

下一步需根據官方文檔範例編寫包含以下子句的 CREATE DATABASE 語句:

  • USER SYS IDENTIFIED BY ... USER SYSTEM IDENTIFIED BY ...
  • LOGFILE GROUP ... (多路徑多路復用)
  • DATAFILE ... SIZE ... AUTOEXTEND ... (系統、Sysaux、Undo、Temp、Users 等)
  • CHARACTER SET AL32UTF8 NATIONAL CHARACTER SET AL16UTF16
  • EXTENT MANAGEMENT LOCAL
  • DEFAULT TABLESPACE users DATAFILE ...
  • DEFAULT TEMPORARY TABLESPACE temp TEMPFILE ...
  • UNDO TABLESPACE undotbs DATAFILE ...

後續標準流程

  1. 執行 CREATE DATABASE → 數據庫創建完成,處於 MOUNT/OPEN 狀態。
  2. 運行 @?/rdbms/admin/catalog.sql、@?/rdbms/admin/catproc.sql 建立數據字典與內置包。
  3. 運行 @?/rdbms/admin/utlrp.sql 編譯無效對象。
  4. 創建業務表空間、用戶、授權。
  5. 配置監聽、EM、備份策略。

手動建庫 vs DBCA

維度手動建庫DBCA
可控性完全可控,每個文件路徑、大小、參數可定製向導式,選項有限
學習價值極高,強制理解架構低
生產效率低,易拼寫錯誤高,模板化、驗證完善
適用場景教學、特殊架構、無圖形界面服務器生產標準化部署

建議:生產環境優先使用 DBCA 響應文件靜默安裝;手動建庫作為技能儲備與應急方案。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved