centos7无法启动mysql服务_CentOS7下MySQL服务启动失败原因及解决方法

在重启阿里的CentOS7服务器后,重启MySQL 出现错误

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]

按照提示查看错误信息

[root@djaljdw ~]# systemctl status mysqld.service

● mysqld.service - SYSV: MySQL database server. Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled) Active: failed (Result: exit-code) since Thu 2019-08-22 14:42:39 CST; 1min 25s ago Docs: man:systemd-sysv-generator(8) Process: 2427 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=1/FAILURE) Aug 22 14:42:37 izw91diu854rguz systemd[1]: Starting SYSV: MySQL database server.... Aug 22 14:42:39 izw91diu854rguz mysqld[2427]: MySQL Daemon failed to start. Aug 22 14:42:39 izw91diu854rguz mysqld[2427]: Starting mysqld: [FAILED] Aug 22 14:42:39 izw91diu854rguz systemd[1]: mysqld.service: control process exited, code=exited status=1 Aug 22 14:42:39 izw91diu854rguz systemd[1]: Failed to start SYSV: MySQL database server.. Aug 22 14:42:39 izw91diu854rguz systemd[1]: Unit mysqld.service entered failed state. Aug 22 14:42:39 izw91diu854rguz systemd[1]: mysqld.service failed. Hint: Some lines were ellipsized, use -l to show in full.

-- -- 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日志信息(/var/log/mysqld.log)

190822 14:44:42 [Note] Plugin 'FEDERATED' is disabled. 190822 14:44:42 InnoDB: The InnoDB memory heap is disabled 190822 14:44:42 InnoDB: Mutexes and rw_locks use GCC atomic builtins 190822 14:44:42 InnoDB: Compressed tables use zlib 1.2.3 190822 14:44:42 InnoDB: Using Linux native AIO 190822 14:44:42 InnoDB: Initializing buffer pool, size = 128.0M 190822 14:44:42 InnoDB: Completed initialization of buffer pool 190822 14:44:42 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! 190822 14:44:42 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... 190822 14:44:42 InnoDB: Waiting for the background threads to start 190822 14:44:43 InnoDB: 5.5.59 started; log sequence number 1940403 190822 14:44:43 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306 190822 14:44:43 [Note] - '0.0.0.0' resolves to '0.0.0.0'; 190822 14:44:43 [Note] Server socket created on IP: '0.0.0.0'. 190822 14:44:43 [ERROR] /usr/libexec/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2) 190822 14:44:43 [ERROR] Can't start server: can't create PID file: No such file or directory

问题找到了:不能创建PID文件:没有这样的文件或目录

于是去查看,果然没有文件夹

重启服务还是报错

于是又查看日志

190822 14:56:51 [Note] Plugin 'FEDERATED' is disabled. 190822 14:56:51 InnoDB: The InnoDB memory heap is disabled 190822 14:56:51 InnoDB: Mutexes and rw_locks use GCC atomic builtins 190822 14:56:51 InnoDB: Compressed tables use zlib 1.2.3 190822 14:56:51 InnoDB: Using Linux native AIO 190822 14:56:51 InnoDB: Initializing buffer pool, size = 128.0M 190822 14:56:51 InnoDB: Completed initialization of buffer pool 190822 14:56:51 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! 190822 14:56:51 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... 190822 14:56:51 InnoDB: Waiting for the background threads to start 190822 14:56:52 InnoDB: 5.5.59 started; log sequence number 1940403 190822 14:56:52 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306 190822 14:56:52 [Note] - '0.0.0.0' resolves to '0.0.0.0'; 190822 14:56:52 [Note] Server socket created on IP: '0.0.0.0'. 190822 14:56:52 [ERROR] /usr/libexec/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 13) 190822 14:56:52 [ERROR] Can't start server: can't create PID file: Permission denied

发现:无法创建PID文件:权限被拒绝

解决办法:

重启服务完美解决

tip:看日志是解决问题的一个很好的办法!

你可能感兴趣的:(centos7无法启动mysql服务_CentOS7下MySQL服务启动失败原因及解决方法)