CentOS 7下MySQL服務啟動失敗的解決思路
今天,啟動MySQL伺服器失敗,如下所示:
[[email protected] ~]# /etc/init.d/mysqld start Starting mysqld (via systemctl): Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details. [FAILED]
根據提示,分別使用systemctl status mysqld.service和journalctl -xe檢視服務啟動失敗的原因
[[email protected] ~]# systemctl status mysqld.service
?.mysqld.service - SYSV: MySQL database server. Loaded: loaded (/etc/rc.d/init.d/mysqld) Active: failed (Result: exit-code) since Wed 2016-01-20 18:26:57 CST; 40s ago Docs: man:systemd-sysv-generator(8) Process: 2979 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=1/FAILURE) Jan 20 18:26:56 spark01 systemd[1]: Starting SYSV: MySQL database server.... Jan 20 18:26:57 spark01 mysqld[2979]: MySQL Daemon failed to start. Jan 20 18:26:57 spark01 mysqld[2979]: Starting mysqld: [FAILED] Jan 20 18:26:57 spark01 systemd[1]: mysqld.service: control process exited, code=exited status=1 Jan 20 18:26:57 spark01 systemd[1]: Failed to start SYSV: MySQL database server.. Jan 20 18:26:57 spark01 systemd[1]: Unit mysqld.service entered failed state. Jan 20 18:26:57 spark01 systemd[1]: mysqld.service failed.
[[email protected] ~]# journalctl -xe
-- -- Unit session-2.scope has begun starting up. Jan 20 18:26:48 spark01 sshd[2916]: pam_unix(sshd:session): session opened for user spark by (uid=0) Jan 20 18:26:52 spark01 su[2944]: (to root) spark on pts/1 Jan 20 18:26:52 spark01 su[2944]: pam_unix(su-l:session): session opened for user root by spark(uid=1000) Jan 20 18:26:56 spark01 polkitd[909]: Registered Authentication Agent for unix-process:2974:117137 (system bus name :1.25 Jan 20 18:26:56 spark01 systemd[1]: Starting SYSV: MySQL database server.... -- Subject: Unit mysqld.service has begun start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit mysqld.service has begun starting up. Jan 20 18:26:57 spark01 mysqld[2979]: MySQL Daemon failed to start. Jan 20 18:26:57 spark01 mysqld[2979]: Starting mysqld: [FAILED] Jan 20 18:26:57 spark01 systemd[1]: mysqld.service: control process exited, code=exited status=1 Jan 20 18:26:57 spark01 systemd[1]: Failed to start SYSV: MySQL database server.. -- Subject: Unit mysqld.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit mysqld.service has failed. -- -- The result is failed. Jan 20 18:26:57 spark01 systemd[1]: Unit mysqld.service entered failed state. Jan 20 18:26:57 spark01 systemd[1]: mysqld.service failed. Jan 20 18:26:57 spark01 polkitd[909]: Unregistered Authentication Agent for unix-process:2974:117137 (system bus name :1.
但,可惜的時,這些資訊並不能提供服務啟動失敗的真正原因。
這時候,不妨開啟MySQL的告警日誌,畢竟,只要MySQL服務啟動,告警日誌都會有輸出資訊的,果然
2016-01-20T10:00:19.935771Z 0 [ERROR] /usr/sbin/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2 - No such file or directory) 2016-01-20T10:00:19.935795Z 0 [ERROR] Can't start server: can't create PID file: No such file or directory 160120 18:00:20 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
MySQL服務在啟動的時候,不能建立pid檔案。
在終端看一下該目錄是否存在,果然,不存在。
於是,建立了/var/run/mysqld/目錄,重啟MySQL服務
[[email protected] ~]# mkdir -p /var/run/mysqld/
[[email protected] ~]# /etc/init.d/mysqld start
Starting mysqld (via systemctl): Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details. [FAILED]
依舊報錯,重新檢視告警日誌,有以下輸出
2016-01-20T10:28:37.183387Z 0 [ERROR] /usr/sbin/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 13 - Permission denied) 2016-01-20T10:28:37.183431Z 0 [ERROR] Can't start server: can't create PID file: Permission denied 160120 18:28:37 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended 160120 18:32:06 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
原來,/var/run/mysqld/的屬主和屬組還是root,mysql並不能在其中建立檔案,後修改該目錄的屬主和屬組,啟動OK。
[[email protected] ~]# ls -ld /var/run/mysqld/ drwxr-xr-x 2 root root 40 Jan 20 18:28 /var/run/mysqld/ [[email protected] ~]# chown mysql.mysql /var/run/mysqld/ [[email protected] ~]# /etc/init.d/mysqld start Starting mysqld (via systemctl): [ OK ]
總結:
以前在玩Kubernetes的時候,常遇到啟動失敗的情況,根據systemctl的提示,通過systemctl status mysqld.service和journalctl -xe命令檢視服務啟動失敗的原因往往並不如人意,反而給了一種錯誤的暗示,以為這個跟系統有關。其實,通過檢視服務的日誌,往往更能清晰的知道服務啟動失敗的原因。
相關推薦
CentOS 7下MySQL服務啟動失敗的解決思路
今天,啟動MySQL伺服器失敗,如下所示: [[email protected] ~]# /etc/init.d/mysqld start Starting mysqld (via systemctl): Job for mysqld.service fail
阿裏雲CentOS 7.2 MySQL服務啟動失敗的解決思路
阿裏雲 centos 7.2 mysql服務啟動失敗的解決思路阿裏雲 CentOS 7.2 MySQL服務啟動失敗的解決思路前言 :昨天剛剛搭建好的MySQL讓老大看了一下,經過測試已經完成任務。但是今天早晨來的時候發現服務器被關了,此時我的心情崩潰的,但是我非常冷靜的解決了MySQL問題。如下:啟動MySQ
CentOS 7下mysqld服務啟動失敗終極解決方案
啟動mysqld服務失敗,報錯如下: [[email protected] ~]# service mysqld start Starting mysqld (via systemctl): Job for mysqld.service failed because the con
centos 7 新增 nfs 開機啟動失敗解決方法
centos 7 下將 nfs 服務設定為開機自動啟動,systemctl enable nfs-idmapd.service,將提示如下錯誤: Failed to execute operation: No such file or directory 解決方法: /us
CentOS下,mysql服務啟動失敗
失敗 問題 情況 rest mys 情況下 文件清空 bsp centos mysql服務啟動失敗,可以使用排除法查找原因: 如果修改了my.cnf後重啟mysql服務失敗,大多數情況下都是配置文件有錯誤, 可以通過備份原來的配置文件,然後將配置文件清空,只剩下[mysql
Mysql 5.7.11 安裝在 win10,服務啟動失敗解決方法
新裝的win10系統,安裝Mysql-5.7.11-win64版本,正常安裝後: 問題 : 在 命令列中啟動,服務不能啟動,沒有錯誤資訊 在 服務 中啟動,提示 :本地計算機上的MySQL服務啟動後停止。某些服務在未由其他服務或程式使用時將自動停止
spring-boot不同包結構下,同名類衝突導致服務啟動失敗解決方案
專案背景: 兩個專案的包結構和類名都很多相同,於是開始考慮使用加一級包進行隔離,類似於這種結構 但是在啟動的過程中,丟擲來這樣的異常: 1 2 3 4 5 6 7 8 9 Caused by: org.springframework.
關於linux-Centos 7下mysql 5.7.9的rpm包的安裝方式
mysql 5.7.9的rpm包的安裝方環境介紹>>>>>>>>>>>>>>>>>>操作系統:Centos 7.1mysql數據庫版本:mysql5.7.9mysql官方網站:http://www.my
服務器異常斷電導致windows下mysql服務啟動報1067錯誤
nbsp 服務 數據庫 window 導致 錯誤 ble can blog 服務器異常斷電導致windows下mysql服務啟動報1067錯誤 1.進入在D:\candaoserver\mysql\下面的my.ini中添加一行 innodb_force_recovery
Nginx 服務語法正確,服務啟動失敗解決方法
ces nag -o text 描述 alt water 找到 roc 問題描述: 搭建好nginx服務後,啟動失敗,檢查語法正確,但是後面卻顯示配置文件沒有通過測試,自己找半天都沒找到原因,以下是我的錯誤詳情及解決方法: 總結:nginx服務默認以nobody身份運行,
mysql5.7 安裝,服務啟動失敗無data目錄處理
廢話:今天準備做Mysql相關的開發,決定本地裝個,以後也好除錯優化。 Mysql版本:5.7 來源:官網下載,下載後解壓,應該是這個綠色包。 跟著網上的教程安裝。 好,開始說問題。 第一個坑:my.ini my.ini裡面的路徑用的都是‘\’單斜槓的(反
RHEL\CentOS 7 下 MySQL 連線數被限制
問題 專案中,由於連線數過多,提示“Too many connections”,需要增加連線數。我在 /etc/my.cnf中修改了 max_connections = 2000 但是, 實際連線數一直被限制在 214 mysql>
CentOS 7下Samba服務安裝與配置詳解
chown grep -E add -s login mkdir entos passwd 密碼 centos7.5系統下進行 yum -y install samba samba-client systemctl start smb nmbps -ef | grep -E
Mysql容器啟動失敗-解決方案
conf mage 重要 als 查看 director 一次 ops star 在看問題之前首先熟悉幾個命令 相關命令 1.docker attach 連接到正在運行中的容器; 命令:docker attach --sig-proxy=false mynginx
CentOS 7 下 mysql-5.7.24 安裝示例
環境:CentOS 7 mysql版本:mysql-5.7.24 本例mysql下載地址: https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 一.準備工作
Centos 7 下 mysql 命令
**使用客戶端連線工具連線mysql時,常碰到mysql 報1405 異常: 這個應該時由於資料庫許可權問題: grant all privileges on . to ‘root’@’%’ identified by ‘root’ with grant o
Linux下mysql無法啟動問題解決
無論發現怎樣的問題,首先檢視err日誌。一、pid檔案找不到1.查詢err日誌顯示許可權問題。分析:mysql原本是所屬mysql使用者,如果在root使用者下啟動就有可能出現問題。解決:(1)檢視mysql的許可權(2)發現有root許可權,混亂了。所以先修改為mysql許
npkcrypt 服務啟動失敗解決方法;事件來源: Service Control Manager;事件 ID: 7000
1、在“我的電腦”上點右鍵,選“管理”->“裝置管理器”。2、選擇“檢視”/“顯示隱藏的裝置”,在“非即插即用驅動程式”中選擇“npkcrypt”,解除安裝之。3、執行“regedit”,可能存在鍵項:“HKEY_LOCAL_MACHINE/SYSTEM/Control
MySQL資料庫啟動失敗解決
重啟伺服器後-->重啟應用服務(Confluence)-->報錯,資料庫連線失敗(MySQL設定了開機自啟動)-->檢視MySQL資料庫狀態: [[email protected] www.linuxidc.com ~]# ps -ef | grep mys
CentOS 7 下 ifconfig command not found 解決辦法
用VMWare安裝了CentOS7,選擇了最小安裝包模式,安裝完畢之後想檢視一下本機的ip地址,發現報錯 # ifcon -bash: ifconfig: command not found 谷歌了一下,整理了一下解決