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

Oracle Database 10g Express Edition (XE) 最大連接數調整完整指南

     編輯:Oracle 資料庫基礎

預設限制

Oracle XE 免費版預設 processes = 40,對應最大並行連接數約 40。超過時拋出 ORA-00020: maximum number of processes exceeded。

調整參數與建議值

參數預設建議調整值說明
processes40200~300核心參數,決定最大作業程序數,需重啟生效 (SPFILE)
sessions衍生自 processes200~300通常 = processes * 1.1 + 5,同步調整
session_cached_cursors20200減少游標開關開銷
session_max_open_files10200單 Session 最大開啟檔案
license_max_sessions無限制200授權上限,XE 免費版可設定
license_sessions_warning無限制180預警閾值

操作步驟


-- 1. 以 SYSDBA 登入
sqlplus / as sysdba
-- 或
sqlplus system/password@XE

-- 2. 修改參數 (寫入 SPFILE,重啟生效)
ALTER SYSTEM SET processes=300 SCOPE=SPFILE;
ALTER SYSTEM SET sessions=335 SCOPE=SPFILE;
ALTER SYSTEM SET session_cached_cursors=200 SCOPE=SPFILE;
ALTER SYSTEM SET session_max_open_files=200 SCOPE=SPFILE;
ALTER SYSTEM SET license_max_sessions=300 SCOPE=SPFILE;
ALTER SYSTEM SET license_sessions_warning=250 SCOPE=SPFILE;

-- 3. 重啟 XE 服務
-- Windows: 服務管理器重啟 OracleServiceXE、OracleXETNSListener
-- Linux: service oracle-xe restart

驗證生效


SHOW PARAMETER processes;
SHOW PARAMETER sessions;
SELECT resource_name, current_utilization, max_utilization, limit_value
FROM v$resource_limit
WHERE resource_name IN ('processes','sessions');

注意事項

  • XE 版記憶體目標 (MEMORY_TARGET) 預設 1 GB,調大 processes 會增加 PGA 總量,確保主機實體記憶體充足 (≥ 4 GB 建議)。
  • 若使用 SHARED SERVERS (MTS),可用較少 processes 支援更多連接,但 XE 版功能受限。
  • 連接池設定:應用端連接池最大值 ≤ processes - 10 (預留背景程序)。
  • 11g XE / 18c XE 同樣適用,參數名稱一致。

常見誤區

僅調大 processes 而不調 sessions,會導致 ORA-00018: maximum number of sessions exceeded 先於 processes 觸發。

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