以下是本人安装过程中踩的坑,很难受,所以记录下来,希望对你有帮助
首先centos7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb,安装mysql的步骤。
#列出所有被安装的rpm package
rpm -qa | grep mariadb
这时候我们能够看到
强制卸载 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/
我下载的5.7版本
我上传至/home/soft/mysql 目录
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
解压 ,里面有很多mysql 的包
这们主要安装下面划红线的四个包就可以了,安装 的顺序也标出了
安装这四个即可,至此安装完成!
顺序方面上当时我安装的时候,因为顺序问题报错了,但是提示很容易能看懂,谁>=谁
网上很多到这步都说启动mysql
service mysql start
但是执行后会报错,说找不到,叫使用Systemctl
,这一块我也很迷惑
应该执行以下命令,启动和查询masql状态
systemctl start mysqld.service
systemctl status mysqld.service
运行结果如图,成功启动
网上有人说“在日志中找到我们的 root 用户的密码。在新的版本中,默认生成了 root 用户密码。
”
grep "passsword" /var/log/mysqld.log
网上有人说"通过上边的命令我们可以查看到我们的 root 用户的密码。
"
而当我操作起来并不是这样的,结果找不到
正确语句是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.cnf
中skip-grant-tables
删除,启动mysqlmysql -u root -p
输入密码进入数据库