yum安装MySQL后无法启动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了yum安装MySQL后无法启动相关的知识,希望对你有一定的参考价值。

参考技术A 在CentOS系统中,yum    install    mysql    后,使用     systemctl start mysqld    命令启动MySQL服务时报错如下:

Failed to start mysqld.service: Unit mysqld.service not found.

原因是MySQL的启动管理程序    mysql-server    没有安装导致的。

解决办法:手动安装    mysql-server 

yum    install    mysql-server 

之后,再使用命令启动MySQL服务就可以了。

yum默认安装的MySQL的账号名是root,刚开是没有密码,直接登陆即可。

修改root账户的密码为root,注意MySQL8.0以上的版本,存储密码的字段变成:authentication_string 了。

use mysql;

select * from user\G;

注意:存储密码的引擎 plugin 应该是:mysql_native_password,才可以被客户端Navicat登陆。

//为账号名为root设置密码为root

update user set authentication_string='' where user='root';

//把host改为%,既允许任意IP访问。

update user set host='%' where user='root';

centos7 yum安装mysql后启动不起来问题

[[email protected] ~]# systemctl start mysqld       启动失败

Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

 

查看系统日志报错为:

May 29 19:04:53 localhost mysqld: 2018-05-29T11:04:53.723812Z 0 [ERROR] InnoDB: The innodb_system data file ‘ibdata1‘ must be writable
May 29 19:04:53 localhost mysqld: 2018-05-29T11:04:53.723862Z 0 [ERROR] InnoDB: The innodb_system data file ‘ibdata1‘ must be writable
May 29 19:04:53 localhost mysqld: 2018-05-29T11:04:53.723871Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
May 29 19:04:54 localhost mysqld: 2018-05-29T11:04:54.325440Z 0 [ERROR] Plugin ‘InnoDB‘ init function returned error.
May 29 19:04:54 localhost mysqld: 2018-05-29T11:04:54.325475Z 0 [ERROR] Plugin ‘InnoDB‘ registration as a STORAGE ENGINE failed.
May 29 19:04:54 localhost mysqld: 2018-05-29T11:04:54.325483Z 0 [ERROR] Failed to initialize builtin plugins.
May 29 19:04:54 localhost mysqld: 2018-05-29T11:04:54.325485Z 0 [ERROR] Aborting

 

      报错原因大致为:你的数据文件不可写

      导致原因:yum安装的mysql的拥有者是root,而mysql要求执行身份为mysql,权限问题导致数据文件不可写

  解决方法如下:

[[email protected] ~]# chown -R mysql /var/lib/mysql

[[email protected] ~]# systemctl start mysqld

[[email protected] ~]# tailf /var/log/messages &   

日志打印:

May 29 19:09:15 localhost mysqld: Version: ‘5.7.22‘  socket: ‘/var/lib/mysql/mysql.sock‘  port: 3306  MySQL Community Server (GPL)

启动成功

 

登录 MySQL,此时不需要密码,直接回车:

# mysql -u root -p

更改 root 密码 为 123456

mysql> use mysql;
mysql>  update user set authentication_string=password("123456") where user=‘root‘;
mysql> flush privileges;  # 刷新权限,不刷新的话可能导致mysql回车直接就会登录

注意密码字段名 5.7 版本的是 authentication_string,之前的为 password

修改完后,记得注释掉 my.cnf 中的 skip-grant-tables 参数,重启 MySQL 服务,就可以用你设置的密码登录了。

 







以上是关于yum安装MySQL后无法启动的主要内容,如果未能解决你的问题,请参考以下文章

centos通过yum安装mariadb(mysql)无法启动服务或者找不到mysql.sock

利用MySQL官方源安装5.6版程序,以及降级安装后无法启动的问题

CentOS通过yum安装MariaDB(MySQL)无法启动服务或者找不到mysql.sock

yum 安装docker后 无法启动

CentOS7安装mysql后无法启动服务,提示Failed to start mysqld.service: Unit not found

mysql 官方源从8.0.3直接yum升级到8.0.4后无法启动