MySQL 5.6因為OOM導致資料庫重啟
線上的一套MySQL 5.6的從庫,因為OOM而導致資料庫重啟。
# tail -50 /var/log/messages Nov 13 16:00:40 app-push-db2 kernel: Out of memory: Kill process 26121 (mysqld) score 957 or sacrifice child Nov 13 16:00:40 app-push-db2 kernel: Killed process 26121 (mysqld) total-vm:18804176kB, anon-rss:15541596kB, file-rss:0kB, shmem-rss:0kB
報錯原因:
這臺例項所在的伺服器上面部署了單例項MySQL,實體記憶體為16G,分配給資料庫的快取innodb_fuffer_pool_size為12G。
# free -g total used free shared buff/cache available Mem: 15 10 0 0 5 4 Swap: 0 0 0
為了提高效能,這臺例項關閉了磁碟的swap交換。
# cat /etc/rc.local #!/bin/bash # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES # # It is highly advisable to create own systemd services or udev rules # to run scripts during boot instead of using this file. # # In contrast to previous versions due to parallel execution during boot # this script will NOT be run after all other services. # # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure # that this script will be executed during boot. touch /var/lock/subsys/local swapoff -a
當客戶端連線多的時候,導致記憶體資源耗盡。
解決方法:
將innodb_buffer_pool_size調整為10G,預留出一些記憶體給作業系統和客戶端連線。
重啟資料庫,使引數生效。
# grep innodb_buffer_pool /etc/my.cnf innodb_buffer_pool_size=10G
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-2219859/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle sysman.mgmt_jobs導致資料庫自動重啟Oracle資料庫
- 因為init_command 導致的 mysql 5.6 主從連線失敗的案例一則。MySql
- MySQL:MySQL客戶端快取結果導致OOMMySql客戶端快取OOM
- Mysql中使用流式查詢避免資料量過大導致OOMMySqlOOM
- mstar因裝置讀不到導致,待機重啟問題
- MySQL 因資料型別轉換導致執行計劃使用低效索引MySql資料型別索引
- MySQL無法啟動重啟竟是因為改了Linux主機名MySqlLinux
- 神奇的DEBUG:因為異常導致MongoDB容器無法啟動MongoDB
- 【ASK_ORACLE】因process用盡導致的rac重啟的解決方法Oracle
- 故障分析 | MySQL 5.7 使用臨時表導致資料庫 CrashMySql資料庫
- 【北亞資料庫資料恢復】誤操作導致資料丟失的華為雲mysql資料恢復案例資料庫資料恢復MySql
- Oracle RAC啟動因CTSS導致的異常Oracle
- 伺服器意外斷電導致無法重啟資料恢復伺服器資料恢復
- 【資料庫】mysql5.6升級至5.7(物理方式)資料庫MySql
- asm磁碟組依賴導致資料庫自啟動報錯ASM資料庫
- MongoDB資料庫因安全漏洞,導致Family Locator洩露二十多萬名使用者資料MongoDB資料庫
- 啟動MySql資料庫MySql資料庫
- 因為修改windows管理員密碼導致sql server 2005不能啟動處理Windows密碼SQLServer
- 2萬字|30張圖帶你領略glibc記憶體管理精髓(因為OOM導致了上千萬損失)記憶體OOM
- 伺服器資料恢復-誤操作導致mysql資料庫資料丟失的資料恢復案例伺服器資料恢復MySql資料庫
- MySQL資料庫如何啟動?MySql資料庫
- SAP WM 因Layout設定不對導致LX02報表查不到庫存資料
- 【YashanDB知識庫】archivelog磁碟滿導致資料庫abnormalHive資料庫ORM
- Win10系統下因DistributedCOM錯誤1001導致電腦自動重啟怎麼辦Win10
- Oracle DB 因宿主機(Linux 虛擬機器)意外關停,重啟資料庫步驟OracleLinux虛擬機資料庫
- 【YashanDB知識庫】資料庫審計shutdown immediate操作導致資料庫異常退出資料庫
- ASM空間爆滿導致資料庫掛起ASM資料庫
- 大事務導致資料庫恢復時間長資料庫
- MySQL的index merge(索引合併)導致資料庫死鎖分析與解決方案MySqlIndex索引資料庫
- 【北亞資料恢復】輸入錯誤命令導致MySQL資料庫資料被刪除的資料恢復案例資料恢復MySql資料庫
- 因壞道問題導致的硬碟故障如何進行資料恢復?硬碟資料恢復
- 【資料庫資料恢復】斷電導致Oracle資料庫資料丟失的資料恢復案例資料庫資料恢復Oracle
- 記php-fpm重啟導致的一個bugPHP
- innodb_undo_tablespaces導致Mysql啟動報錯MySql
- 記一次ORA-01102導致資料庫例項無法啟動案例資料庫
- 開啟mysql 資料庫審計功能。MySql資料庫
- openGauss 由於RemoveIPC未關閉導致資料庫crashREM資料庫
- 因為跨域問題導致的無法讀取 response header跨域Header