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

Oracle 連接數調優:Sessions 與 Processes 參數聯動與信號量設定

     編輯:Oracle 資料庫基礎

核心公式

sessions = 1.1 × processes + 5

單純調大 processes 往往導致資料庫無法啟動,根因在於作業系統信號量不足。

UNIX 信號量參數 semmns 計算

SEMMNS > processes + instance_processes + system_processes
# 其中
processes           = init.ora 設定值
instance_processes  = 5 (SMON, PMON, DBWR, LGWR, ARCH)
system_processes    = ipcs -sb 查看 NSEMS 欄位

調整步驟

  1. 修改 /etc/system 增加 set semsys:seminfo_semmns=2000(視記憶體/SGA 而定,範圍 200-2000)
  2. 重啟 OS 生效
  3. 修改 init.ora 調大 processes
  4. 重啟資料庫驗證 SELECT * FROM v$parameter WHERE name IN ('processes','sessions')

授權相關參數

  • license_max_sessions、license_sessions_warning 預設 0(無限制),生產環境可保持或依合約設定上限

驗證腳本

-- 當前連接數
SELECT COUNT(*) FROM v$session;

-- 參數上限
SELECT name, value FROM v$parameter WHERE name IN ('processes','sessions');

-- 信號量使用
! ipcs -sb

結語

連接數擴容是「資料庫參數 + OS 核心參數」雙軌同調。忽略 semmns 是導致啟動失敗的首因,納入變更管理清單可避免反覆試錯。

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