centos7安装mysql遇到的很多问题

以下是本人安装过程中踩的坑,很难受,所以记录下来,希望对你有帮助

首先centos7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb,安装mysql的步骤。

#列出所有被安装的rpm package
rpm -qa | grep mariadb
这时候我们能够看到
centos7安装mysql遇到的很多问题
强制卸载 mariadb 软件包
rpm -e mariadb-libs-5.5.52-1.el7.i686 --nodeps
再查询
rpm -qa | grep mariadb
这时候什么都没了,完成之后就可以安装了

首先到mysql 的网站上载 mysql rpm包的合集
https://dev.mysql.com/downloads/mysql/
centos7安装mysql遇到的很多问题
我下载的5.7版本
centos7安装mysql遇到的很多问题
我上传至/home/soft/mysql 目录

tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar

解压 ,里面有很多mysql 的包
centos7安装mysql遇到的很多问题
这们主要安装下面划红线的四个包就可以了,安装 的顺序也标出了
centos7安装mysql遇到的很多问题
安装这四个即可,至此安装完成!
顺序方面上当时我安装的时候,因为顺序问题报错了,但是提示很容易能看懂,谁>=谁

网上很多到这步都说启动mysql

service mysql start

但是执行后会报错,说找不到,叫使用Systemctl,这一块我也很迷惑
centos7安装mysql遇到的很多问题
应该执行以下命令,启动和查询masql状态

systemctl start mysqld.service
systemctl status mysqld.service

运行结果如图,成功启动
centos7安装mysql遇到的很多问题
网上有人说“在日志中找到我们的 root 用户的密码。在新的版本中,默认生成了 root 用户密码。

grep "passsword" /var/log/mysqld.log​

网上有人说"通过上边的命令我们可以查看到我们的 root 用户的密码。"
而当我操作起来并不是这样的,结果找不到
centos7安装mysql遇到的很多问题
正确语句是grep 'temporary password' /var/log/mysqld.log

于是又有另外一种说法
1.关闭mysql
2.首先,vim /etc/my.cnf(mysql的配置文件) 文件,在文件的最后一行,添加一句话 skip-grant-tables 这样就可以让mysql 跳过检验密码的步骤
3.开启mysql 服务端
4.登录mysql的客户端 mysql -u root -p 回车 不用输入密码,就进入了客户端
5.然后修改root密码
修改的语句是

use mysql;
update user set password = PASSWORD('123456') password_expired = 'N' where user ='root' ;

但是会报错ERROR 1054 (42S22): Unknown column 'password' in 'field list'
mysql数据库下已经没有password这个字段了,password字段改成了authentication_string
所以更改语句替换为update user set authentication_string = PASSWORD('123456') password_expired = 'N' where user ='root' ;即可
然后my.cnfskip-grant-tables删除,启动mysql
mysql -u root -p输入密码进入数据库