之前在自己本地的虚拟机上通过http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm安装了mysql,后来发现该版本安装的是5.6.42
于是打算将之前安装的卸载掉,然后重新安装一个5.7以上的版本,在操作过程中还是遇到了一些小问题,所以记录下来,方便自己以后参照也希望可以帮到别人。
# rpm -qa | grep -i mysql
# service mysqld stop
由于mysql的组件之间存在依赖关系,所以需要按找顺序卸载
# rpm -ev mysql-community-release-el7-5.noarch
# rpm -ev mysql-community-server-5.6.42-2.el7.x86_64
# rpm -ev mysql-community-client-5.6.42-2.el7.x86_64
由于common依赖libs,而lib卸载的时候会依赖其他的组件,故使用了--nodeps参数
# rpm -ev mysql-community-libs-5.6.42-2.el7.x86_64 --nodeps
# rpm -ev mysql-community-common-5.6.42-2.el7.x86_64
执行命令
# whereis mysql
# find / -name mysql
然后将相关的文件删除 rm -rf XXX
# more /etc/passwd | grep mysql
# more /etc/shadow | grep mysql
# more /etc/group | grep mysql
# userdel mysql
# groupdel mysql
#wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
安装rpm
# yum -y install mysql57-community-release-el7-11.noarch.rpm
安装mysql服务
# yum install mysql-community-server
启动mysql服务
# systemctl start mysqld.service
由于安装的时候设置了一个临时密码,所以登录的时候需要使用密码 通过以下命令查询到临时密码
# grep "password" /var/log/mysqld.log
登录mysql之后第一件事是修改root的密码,由于MySQL有修改密码的规范,设置过于简单的密码会报错
执行以下:set
global
validate_password_policy=0;
set
global
validate_password_length=1;
然后修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
最后设置远程连接密码即可
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";