首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 初始化參數與儲存結構調整實戰腳本集

     編輯:Oracle 資料庫相關知識

資料檔擴充與表空間建立

-- 擴充現有資料檔
ALTER DATABASE DATAFILE 'd:\ORANT\DATABASE\USER1ORCL.ORA' RESIZE 1000M;
ALTER DATABASE DATAFILE 'd:\ORANT\DATABASE\RBS1ORCL.ORA' RESIZE 300M;
ALTER DATABASE DATAFILE 'd:\ORANT\DATABASE\TMP1ORCL.ORA' RESIZE 300M;

-- 建立索引表空間
CREATE TABLESPACE INDEX_DATA 
    DATAFILE 'd:\ORANT\DATABASE\INDEX_DATA' SIZE 500M;

回滾段重建(手動管理模式)

-- 1. 離線並刪除舊回滾段 RB1-RB16
ALTER ROLLBACK SEGMENT "RB1" OFFLINE;
...
DROP ROLLBACK SEGMENT "RB1";
...

-- 2. 在 ROLLBACK_DATA 表空間建立新回滾段
CREATE ROLLBACK SEGMENT "RB1" TABLESPACE "ROLLBACK_DATA" 
    STORAGE (INITIAL 1M NEXT 1M);
... (RB1-RB6)

-- 3. 上線
ALTER ROLLBACK SEGMENT "RB1" ONLINE;
... (RB1-RB6)

注意:Oracle 9i+ 建議改用自動 UNDO 管理(UNDO_MANAGEMENT=AUTO、UNDO_TABLESPACE),手動回滾段已棄用。

重做日誌群組重建

-- 新增 4 組 10MB 日誌
ALTER DATABASE ADD LOGFILE 'c:\orant\database\log1.ora' SIZE 10M;
ALTER DATABASE ADD LOGFILE 'c:\orant\database\log2.ora' SIZE 10M;
ALTER DATABASE ADD LOGFILE 'c:\orant\database\log3.ora' SIZE 10M;
ALTER DATABASE ADD LOGFILE 'c:\orant\database\log4.ora' SIZE 10M;

-- 移除舊日誌
ALTER DATABASE DROP LOGFILE 'c:\orant\database\log1orcl.ora';
... (log1orcl-log4orcl)

INIT.ORA 關鍵參數配置範例(128MB SGA 環境)

# SGA 目標:1/3 ~ 1/2 實體記憶體
DB_BLOCK_BUFFERS = 16000        # 2K block → 32MB buffer cache
DB_BLOCK_SIZE = 2048
SHARED_POOL_SIZE = 30720000     # 30MB,專用伺服器建議 ×10
LOG_BUFFER = 655360             # 640KB
SORT_AREA_SIZE = 327680         # 320KB,專用伺服器建議 ×100
GLOBAL_NAMES = FALSE
ROLLBACK_SEGMENTS = (RB1,RB2)   # 大型庫建議 6-8 個

# 併發與鎖設定
DML_LOCKS = 1000
OPEN_CURSORS = 200

# 建議補充參數(9i+)
# PROCESSES = 300
# SESSIONS = 335
# UNDO_MANAGEMENT = AUTO
# UNDO_TABLESPACE = UNDOTBS1
# PGA_AGGREGATE_TARGET = 50M

參數調整原則

  • DB_BLOCK_BUFFERS × DB_BLOCK_SIZE = Buffer Cache 大小
  • SHARED_POOL_SIZE:專用伺服器環境需放大,共用伺服器可較小
  • SORT_AREA_SIZE:排序操作記憶體,過大易導致記憶體壓力
  • LOG_BUFFER:通常 64KB-1MB,避免過大造成檢查點延遲
  • 總 SGA 不超過實體記憶體 50-60%,預留 OS 與 PGA 空間
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved