1.下载并安装mysql5.8:
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
sudo yum install mysql-server
2.安装后重置密码:
第一步:修改配置文件免密码登录mysql
vim /etc/my.cnf
在 [mysqld]最后加上如下语句 并保持退出文件;
skip-grant-tables
重启mysql服务:
service mysqld restart
第二步免密码登录到mysql上;直接在命令行上输入:
mysql
//或者
mysql -u root -p
//password直接回车
第三步: 给root用户重置密码;
首先查看当前root用户相关信息,在mysql数据库的user表中;
select host, user, authentication_string, plugin from user;
host: 允许用户登录的ip‘位置’%表示可以远程;
user:当前数据库的用户名;
authentication_string: 用户密码;在mysql 5.7.9以后废弃了password字段和password()函数;
plugin: 密码加密方式;
如果当前root用户authentication_string字段下有内容,先将其设置为空;
use mysql;
update user set authentication_string='' where user='root';
flush privileges;
退出mysql, 删除/etc/my.cnf文件最后的 skip-grant-tables 重庆mysql服务;
使用root用户进行登录,因为上面设置了authentication_string为空,所以可以免密码登录;
mysql -u root -p
passwrod:直接回车;
使用ALTER修改root用户密码;
ALTER user 'root'@'localhost' IDENTIFIED BY '你的密码';
flush privileges;
至此修改成功; 从新使用用户名密码登录即可;
3.解决mysql5.8无法远程连接的问题:
use mysql;
select host,user from user where user='root'; # 查看host,正常情况,host=localhost
update user set host='%' where user='root'; #更改host为所有ip
select host,user from user where user='root'; # 查看更改,此时 host=%
参考:https://www.cnblogs.com/jjg0519/p/9034713.html
https://baijiahao.baidu.com/s?id=1597184796823517712&wfr=spider&for=pc