Linux

無法登錄 PHPmyAdmin 或啟動 mysql55-mysqld

  • January 12, 2017

正如標題所示,我對 mysql 有明顯的問題。(我在這個伺服器管理方面相當新)從另一台伺服器導入數據庫文件後開始出現問題。登錄到 phpmyadmin 時,某些表聲稱不存在。所以我刪除了表,然後使用導出文件導入它們,並在嘗試創建表時收到錯誤“表不存在”。認為這很奇怪,做了一些研究並意識到某些權限可能設置錯誤。因此,我將數據庫和文件歸為 mysql 擁有,現在沒有任何效果。

從那以後,我嘗試將權限更改回以前的狀態(因為對這個新問題的研究表明它可能是權限錯誤),甚至重新添加了我已備份的已刪除數據庫(另一個消息來源聲稱ibdata 文件可能沒有正確的資訊)。沒有什麼能幫助我解決我的問題。直接在日誌文件中搜尋有關錯誤的資訊並沒有產生很多結果或新資訊。

當我嘗試在我的 CLI 中啟動 mysql55-mysqld 服務時,我得到的唯一錯誤是

MySQL Daemon failed to start.

mysql55-mysqld.log 報告如下

170111 11:11:26 mysqld_safe Starting mysqld daemon with databases from              /opt/rh/mysql55/root/var/lib/mysql
170111 11:11:26 [Note] /opt/rh/mysql55/root/usr/libexec/mysqld (mysqld     5.5.52) starting as process 13140 ...
170111 11:11:26 [Note] Plugin 'FEDERATED' is disabled.
170111 11:11:26 InnoDB: The InnoDB memory heap is disabled
170111 11:11:26 InnoDB: Mutexes and rw_locks use GCC atomic builtins
170111 11:11:26 InnoDB: Compressed tables use zlib 1.2.3
170111 11:11:26 InnoDB: Using Linux native AIO
170111 11:11:26 InnoDB: Initializing buffer pool, size = 128.0M
170111 11:11:26 InnoDB: Completed initialization of buffer pool
170111 11:11:26 InnoDB: highest supported file format is Barracuda.
170111 11:11:26  InnoDB: Waiting for the background threads to start
170111 11:11:27 InnoDB: 5.5.52 started; log sequence number 1617709
170111 11:11:27 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
170111 11:11:27 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
170111 11:11:27 [Note] Server socket created on IP: '0.0.0.0'.
170111 11:11:28 [ERROR] Event Scheduler: Failed to open table mysql.event
170111 11:11:28 [ERROR] Event Scheduler: Error while loading from disk.
170111 11:11:28 [Note] Event Scheduler: Purging the queue. 0 events
170111 11:11:28 [ERROR] Aborting
170111 11:11:28  InnoDB: Starting shutdown...
170111 11:11:28  InnoDB: Shutdown completed; log sequence number 1617709
170111 11:11:28 [Note] /opt/rh/mysql55/root/usr/libexec/mysqld: Shutdown    complete
170111 11:11:28 mysqld_safe mysqld from pid file        /opt/rh/mysql55/root/var/run/mysqld/mysqld.pid ended

如何修復此服務以使其再次正常工作和可用?

通過 yum 刪除 mysql55 並刪除 yum 未刪除的數據庫解決。重新安裝後,我能夠再次啟動服務,重新配置後,它能夠登錄並編輯數據庫並導入我備份的數據。

雖然這確實解決了整體問題,但它可以被視為一種解決方法,因為它確實涉及數據庫的失去,並且對於現有系統可能不可行。如果發布了更好的答案,我將更改接受的答案以匹配。

如何修復此服務以使其再次正常工作和可用?

複製並粘貼這個

[ERROR] Event Scheduler: Failed to open table mysql.event

進入您最喜歡的搜尋引擎。做一些閱讀(似乎有很多文章可供選擇)並嘗試在那裡找到的建議。

如果這些都沒有幫助,請回來並用您學到的知識、嘗試的內容以及嘗試時發生的情況更新您的問題。

補充閱讀:你有一個清單可以幫助我提出一個更好的問題嗎?

引用自:https://serverfault.com/questions/825630