首先使用rpm下载mysql依赖。在这里我装的是mysql57版本。
sudo rpm -ivh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
很有可能出现下面的错误:
Error: mysql80-community-release conflicts with mysql57-community-release-el7-11.noarch
这个表示出现了两个版本冲突的问题。因此需要删除mysql80相关依赖。
rpm -e --nodeps mysql80-community-release-el7-2.noarch
用下面指令查看当前mysql依赖包的版本是否一致:
[root@localhost downloads]# sudo yum repolist all | grep mysql | grep enabled
!mysql-connectors-community/x86_64 MySQL Connectors Community enabled: 131
!mysql-tools-community/x86_64 MySQL Tools Community enabled: 100
!mysql57-community/x86_64 MySQL 5.7 Community Server enabled: 384
然后执行一下指令:
sudo yum -y install mysql-community-server
sudo systemctl start mysqld
sudo systemctl status mysqld
如果执行上面最后一个指令显示的状态是running则表示成功。下一步更改mysql的编码格式为utf8。在/etc/my.cnf文件中添加:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
接下来使用下面指令修改密码:
sudo systemctl stop mysqld
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
sudo systemctl start mysqld
mysql -u root
#进入mysql界面之后执行下面三个指令修改密码:
1.UPDATE mysql.user SET authentication_string = PASSWORD('123456') WHERE User = 'root' AND Host = 'localhost';
2.FLUSH PRIVILEGES;
3.quit
systemctl stop mysqld
systemctl unset-environment MYSQLD_OPTS
systemctl start mysqld
mysql -u root -p
输入刚才修改的密码之后就可以登录成功了。