MongoDB筆記: 常見問題

系統配置

設置ulimit網絡

MongoDB的文件機制spa

  • 每一個Collection會單首創建一個數據文件(collection-xxxxxx.wt)
  • 每一個索引會單首創建一個文件(index-xxxxxx.wt)
  • 每一個Collection至少須要一個數據文件和一個默認索引(_id索引)

這樣每建立1個Collection會佔用2個文件句柄, 還須要包含MongoDB自身須要使用的句柄(內部文件如wiredTiger.wt之類, 加上網絡鏈接), 因此Collection的數量是受系統限制的. MongoDB推薦的方式是分片, 不是分庫分表. 會形成的問題好比重啓時間會很長, 這不是MongoDB推薦的使用方式.code

在句柄消耗達到系統上限後, 會報directory-sync: open: Too many open files錯誤, 並致使mongod崩潰退出. 增長限制須要修改/etc/security/limits.conf (或者 /etc/security/limits.d/20-nproc.conf), 增長或修改成如下內容blog

*          soft    nofile    10240
*          hard    nofile    10240
*          soft    nproc     10240
*          hard    nproc     10240
root       soft    nproc     unlimited

須要重啓, 用 ulimit -n 檢查索引

相關文章
相關標籤/搜索