file-max設定過小導致oracle資料庫hang住
伺服器上ping報錯ping: socket: Too many open files in system
[root@rac1 ~]# ping 192.168.238.254
ping: socket: Too many open files in system
正常情況下“Too many open files in system”報錯都是open files引數設定過小導致。
root使用者和oracle使用者檢查,配置正常,如下:
[oracle@rac1 ~]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 64054
max locked memory (kbytes, -l) 14788901
max memory size (kbytes, -m) unlimited
open files (-n) 65536 <===============配置正常
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) unlimited
cpu time (seconds, -t) unlimited
max user processes (-u) 16384
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
message日誌報錯:
Feb 1 20:53:50 rac1 systemd: Looping too fast. Throttling execution a little.
Feb 1 20:53:50 rac1 kernel: VFS: file-max limit 790770 reached
Feb 1 20:53:51 rac1 kernel: VFS: file-max limit 790770 reached
Feb 1 20:53:51 rac1 systemd: Looping too fast. Throttling execution a little.
Feb 1 20:53:52 rac1 kernel: VFS: file-max limit 790770 reached
Feb 1 20:53:52 rac1 kernel: VFS: file-max limit 790770 reached
Feb 1 20:53:53 rac1 systemd: Looping too fast. Throttling execution a little.
Feb 1 20:53:53 rac1 kernel: VFS: file-max limit 790770 reached
Feb 1 20:53:53 rac1 kernel: VFS: file-max limit 790770 reached
Feb 1 20:53:54 rac1 kernel: VFS: file-max limit 790770 reached
檢查:
[root@rac1 ~]# sysctl -a | grep file-max
fs.file-max = 790770
[root@rac1 ~]# cat /proc/sys/fs/file-nr
2833920 0 790770
[root@rac1 ~]# cat /proc/sys/fs/file-nr
2838688 0 790770
[root@rac1 ~]# watch -n 1 cat /proc/sys/fs/file-nr
2993984 0 790770
當前開啟的檔案總數持續變大,超過了上限的預設值790770
修改fs.file-max值的大小:
sysctl -w fs.file-max = 6815744
或
vi /etc/sysctl.conf 增加
fs.file-max = 6815744
sysctl -p生效
修改後恢復正常,message異常告警消失。
另外:nr_open用於限制單個程式可以分配的最大檔案開啟數
cat /proc/sys/fs/nr_open
1048576
一個程式可以開啟的檔案數 < hard limit < nr_open,soft limit是告警值,可以超過這個值。
file-max作業系統對於檔案開啟數有一個全域性的限制,可以透過/proc/sys/fs/file-max檢視。
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/22967847/viewspace-3006103/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 19.3資料庫impdp匯入view時hang住Oracle資料庫View
- RAC節點hang住, oracle bug導致了cpu過高,無法啟動叢集隔離Oracle
- 19c資料庫impdp匯入view時hang住資料庫View
- 【YashanDB知識庫】yac修改引數後關閉資料庫hang住資料庫
- ORACLE RAC 11.2.0.4 ASM加盤導致叢集重啟之ASM sga設定過小OracleASM
- sqlplus -prelim和oradebug捕獲資料庫hang住的詳細資訊SQL資料庫
- runc hang 導致 Kubernetes 節點 NotReady
- Oracle 28.6資料庫impdp匯入view時hang@11Oracle資料庫View
- Oracle sysman.mgmt_jobs導致資料庫自動重啟Oracle資料庫
- 【資料庫資料恢復】斷電導致Oracle資料庫資料丟失的資料恢復案例資料庫資料恢復Oracle
- 資料庫伺服器記憶體不夠,DBW0 hang死導致sqlplus連不上資料庫伺服器記憶體SQL
- ORACLE DSG資料同步軟體程式導致資料庫無法正常關閉Oracle資料庫
- 【北亞資料恢復】異常斷電導致Oracle資料庫報錯的oracle資料恢復資料恢復Oracle資料庫
- SQL Server 因設定最大記憶體過小導致無法啟動SQLServer記憶體
- Oracle資料庫分割槽表SPLIT操作導致歸檔瘋漲Oracle資料庫
- 【oracle資料庫資料恢復】誤操作導致的資料庫誤刪除的資料恢復案例Oracle資料庫資料恢復
- Oracle EBS 資料庫密碼複雜度設定Oracle資料庫密碼複雜度
- ORACLE一體機pcie 快取卡損壞導致資料庫dang機Oracle快取資料庫
- ORACLE for windows 審計檔案xml檔案過多導致資料庫啟動報錯ORA-09925OracleWindowsXML資料庫
- 案例:DG主庫未設定force logging導致備庫壞塊
- 批次錯誤使用者名稱與密碼導致業務使用者HANG住(library cache lock)密碼
- SAP WM 因Layout設定不對導致LX02報表查不到庫存資料
- Oracle資料庫定時器JobOracle資料庫定時器
- 總結導致oracle資料庫主機CPU sys%高的一些原因Oracle資料庫
- 透過v$wait_chains檢視診斷資料庫hang和ContentionAI資料庫
- raid5癱瘓導致資料庫損壞的恢復過程AI資料庫
- 【北亞資料恢復】伺服器斷電導致Oracle資料庫報錯的資料恢復案例資料恢復伺服器Oracle資料庫
- 【YashanDB知識庫】archivelog磁碟滿導致資料庫abnormalHive資料庫ORM
- django—資料庫設定Django資料庫
- 【資料庫資料恢復】LINUX EXT3檔案系統下ORACLE資料庫誤操作導致資料丟失的資料恢復案例資料庫資料恢復LinuxOracle
- 【YashanDB知識庫】資料庫審計shutdown immediate操作導致資料庫異常退出資料庫
- MySQL 5.6因為OOM導致資料庫重啟MySqlOOM資料庫
- ASM空間爆滿導致資料庫掛起ASM資料庫
- 大事務導致資料庫恢復時間長資料庫
- 從Oracle的資料庫世界路過APOracle資料庫
- MySQL:kill和show命令hang住一列MySql
- 【DB筆試面試352】在Oracle資料庫中,哪些操作會導致索引失效?--UNUSABLE INDEXES筆試面試Oracle資料庫索引Index
- 【PDB】Oracle資料庫如何檢查和設定pdb最大儲存大小Oracle資料庫