Mysql
MySQL 5.5.27 在 centOS 5 上隨機崩潰
我正在使用 Godaddy 的專用伺服器來託管我的 Web 應用程序,它是 centOS 5(我不知道他們為什麼仍在使用它。),我在那台伺服器上安裝了 mysql,自從有一天我收到一份報告說Web應用程序無法連接到mysql,我檢查並發現mysql崩潰了,重新啟動mysql後一切正常。但奇怪的是它會隨機崩潰,有時一個月一次,有時幾個月一兩次。請幫我找出問題所在。以下是來自 mysql 的最新崩潰日誌。非常感謝您的寶貴時間。
121015 08:59:35 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 121015 8:59:36 [Note] Plugin 'FEDERATED' is disabled. 121015 8:59:36 InnoDB: The InnoDB memory heap is disabled 121015 8:59:36 InnoDB: Mutexes and rw_locks use InnoDB's own implementation 121015 8:59:36 InnoDB: Compressed tables use zlib 1.2.3 121015 8:59:36 InnoDB: Using Linux native AIO 121015 8:59:36 InnoDB: Initializing buffer pool, size = 128.0M 121015 8:59:36 InnoDB: Completed initialization of buffer pool 121015 8:59:36 InnoDB: highest supported file format is Barracuda. 121015 8:59:38 InnoDB: Waiting for the background threads to start 121015 8:59:39 InnoDB: 1.1.8 started; log sequence number 3584614 121015 8:59:39 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306 121015 8:59:39 [Note] - '0.0.0.0' resolves to '0.0.0.0'; 121015 8:59:39 [Note] Server socket created on IP: '0.0.0.0'. 121015 8:59:40 [Note] Event Scheduler: Loaded 2 events 121015 8:59:40 [Note] /usr/libexec/mysqld: ready for connections. Version: '5.5.27' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL) by Remi 121019 23:42:58 [Warning] IP address '118.186.38.55' could not be resolved: Name or service not known 121024 05:58:39 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 121024 5:58:41 [Note] Plugin 'FEDERATED' is disabled. 121024 5:58:41 InnoDB: The InnoDB memory heap is disabled 121024 5:58:41 InnoDB: Mutexes and rw_locks use InnoDB's own implementation 121024 5:58:41 InnoDB: Compressed tables use zlib 1.2.3 121024 5:58:41 InnoDB: Using Linux native AIO 121024 5:58:41 InnoDB: Initializing buffer pool, size = 128.0M 121024 5:58:41 InnoDB: Completed initialization of buffer pool 121024 5:58:41 InnoDB: highest supported file format is Barracuda. InnoDB: The log sequence number in ibdata files does not match nnoDB: the log sequence number in the ib_logfiles! 121024 5:58:41 InnoDB: Database was not shut down normally! InnoDB: Starting crash recovery. InnoDB: Reading tablespace information from the .ibd files... InnoDB: Restoring possible half-written data pages from the doublewrite InnoDB: buffer... 121024 5:58:43 InnoDB: Waiting for the background threads to start 121024 5:58:44 InnoDB: 1.1.8 started; log sequence number 3584963 121024 5:58:44 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306 121024 5:58:44 [Note] - '0.0.0.0' resolves to '0.0.0.0'; 121024 5:58:44 [Note] Server socket created on IP: '0.0.0.0'. 121024 5:58:45 [Note] Event Scheduler: Loaded 2 events 121024 5:58:45 [Note] /usr/libexec/mysqld: ready for connections. Version: '5.5.27' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL) by Remi 121024 6:06:32 [Note] /usr/libexec/mysqld: Normal shutdown 121024 6:06:32 [Note] Event Scheduler: Purging the queue. 2 events 121024 6:06:34 [Warning] /usr/libexec/mysqld: Forcing close of thread 3 user: 'root' 121024 6:06:34 [Warning] /usr/libexec/mysqld: Forcing close of thread 2 user: 'root' 121024 6:06:34 InnoDB: Starting shutdown... 121024 6:06:37 InnoDB: Shutdown completed; log sequence number 3584963 121024 6:06:37 [Note] /usr/libexec/mysqld: Shutdown complete 121024 06:06:37 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended 121024 06:08:23 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 121024 6:08:23 [Note] Plugin 'FEDERATED' is disabled. 121024 6:08:23 InnoDB: The InnoDB memory heap is disabled 121024 6:08:23 InnoDB: Mutexes and rw_locks use InnoDB's own implementation 121024 6:08:23 InnoDB: Compressed tables use zlib 1.2.3 121024 6:08:23 InnoDB: Using Linux native AIO 121024 6:08:23 InnoDB: Initializing buffer pool, size = 128.0M 121024 6:08:23 InnoDB: Completed initialization of buffer pool 121024 6:08:23 InnoDB: highest supported file format is Barracuda. 121024 6:08:23 InnoDB: Waiting for the background threads to start 121024 6:08:24 InnoDB: 1.1.8 started; log sequence number 3584963 121024 6:08:24 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306 121024 6:08:24 [Note] - '0.0.0.0' resolves to '0.0.0.0'; 121024 6:08:24 [Note] Server socket created on IP: '0.0.0.0'. 121024 6:08:24 [Note] Event Scheduler: Loaded 2 events 121024 6:08:24 [Note] /usr/libexec/mysqld: ready for connections. Version: '5.5.27' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL) by Remi 121026 10:49:09 [Warning] IP address '69.46.72.78' could not be resolved: Temporary failure in name resolution 121027 7:00:57 [Warning] IP address '119.1.96.27' could not be resolved: Name or service not known 121028 1:42:49 [Warning] IP address '211.152.54.123' could not be resolved: Name or service not known 121029 11:48:07 [Warning] IP address '58.16.63.214' could not be resolved: Name or service not known 121031 10:52:46 [Note] Event Scheduler: scheduler thread started with id 99 121105 14:04:01 [Warning] IP address '61.134.25.4' could not be resolved: Name or service not known 121107 09:18:43 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 121107 9:18:44 [Note] Plugin 'FEDERATED' is disabled. 121107 9:18:44 InnoDB: The InnoDB memory heap is disabled 121107 9:18:44 InnoDB: Mutexes and rw_locks use InnoDB's own implementation 121107 9:18:44 InnoDB: Compressed tables use zlib 1.2.3 121107 9:18:44 InnoDB: Using Linux native AIO 121107 9:18:44 InnoDB: Initializing buffer pool, size = 128.0M 121107 9:18:44 InnoDB: Completed initialization of buffer pool 121107 9:18:44 InnoDB: highest supported file format is Barracuda. InnoDB: The log sequence number in ibdata files does not match InnoDB: the log sequence number in the ib_logfiles! 121107 9:18:44 InnoDB: Database was not shut down normally! InnoDB: Starting crash recovery. InnoDB: Reading tablespace information from the .ibd files... InnoDB: Restoring possible half-written data pages from the doublewrite InnoDB: buffer... 121107 9:18:48 InnoDB: Waiting for the background threads to start 121107 9:18:49 InnoDB: 1.1.8 started; log sequence number 3609300 121107 9:18:49 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306 121107 9:18:49 [Note] - '0.0.0.0' resolves to '0.0.0.0'; 121107 9:18:49 [Note] Server socket created on IP: '0.0.0.0'. 121107 9:18:50 [Note] Event Scheduler: Loaded 2 events 121107 9:18:50 [Note] /usr/libexec/mysqld: ready for connections. Version: '5.5.27' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL) by Remi 121107 9:23:34 [Note] Event Scheduler: scheduler thread started with id 5
看起來 InnoDB 損壞存在問題。如果您可以啟動並執行它,您可以嘗試執行“mysqlcheck –all-databases –quick –fast –auto-repair –force”。如果這不起作用,您可以嘗試轉儲內容,然後再次導入所有內容,因為這將重新創建 ibdata 文件。如果您無法在伺服器重新啟動之前執行其中任何一個,您可能需要考慮使用Percona Data Recovery Tool for InnoDB。
檢查您的 dmesg 輸出並查找 OOM 消息。如果 MySQL 佔用了太多記憶體,Out Of Memory 殺手將把它關閉。