[root@DB-Server init.d]# rpm -qa | grep -i mysql
MySQL-server-5.5.50-1.linux2.6
MySQL-client-5.5.50-1.linux2.6
[root@DB-Server init.d]#
[root@DB-Server init.d]# rpm -ev MySQL-client-5.5.50-1.linux2.6
[root@DB-Server init.d]# rpm -ev MySQL-server-5.5.50-1.linux2.6
[root@DB-Server init.d]#
如果删卸载过程中提示有依赖而导致无法卸载,则使用 rpm -ev --nodeps MySQL-XXX命令,进行强制删除。
chkconfig --list | grep -i mysql
chkconfig --del mysql
检查各个MySQL文件夹是否清理删除干净。
[root@DB-Server init.d]# whereis mysql
mysql:
[root@DB-Server init.d]# find / -name mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql
[root@DB-Server init.d]# rm -rf /var/lib/mysql
[root@DB-Server init.d]# rm -rf /var/lib/mysql/mysql
[root@DB-Server init.d]# rm -rf /usr/lib64/mysql
[root@DB-Server init.d]#
如果有必要,删除mysql用户以及mysql用户组。
[root@DB-Server ~]# more /etc/passwd | grep mysql
mysql❌101:501::/home/mysql:/bin/bash
[root@DB-Server ~]# more /etc/shadow | grep mysql
mysql:!!:16496::::::
[root@DB-Server ~]# more /etc/group | grep mysql
mysql❌501:
[root@DB-Server ~]# userdel mysql
[root@DB-Server ~]# groupdel mysql
groupdel: group mysql does not exist
[root@DB-Server ~]#
[root@DB-Server init.d]# rpm -qa | grep -i mysql
查看Linux操作系统版本,如果操作系统版本是centOS7,或红帽7,则需要先卸载掉系统自带的mariadb数据库。
mariadb数据库的卸载方式参考:centos 7安装mysql5.5的方法_慕课手记
:https://www.imooc.com/article/47009
首先centos7 已经不支持mysql,因为内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb的步骤:
#列出mariadb所有被安装的rpm package rpm -qa | grep mariadb #依次进行卸载 rpm -e mariadb-libs-5.5.37-1.el7_0.x86_64 错误:依赖检测失败: libmysqlclient.so.18()(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要 libmysqlclient.so.18(libmysqlclient_18)(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要 #使用 --nodep 进行强制卸载 rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64 |
这里所写的安装步骤是基于centOS6操作系统,所以MySQL8.0.17的版本是“mysql-8.0.17-1.el6.x86_64.rpm-bundle.tar”。
如果是centOS7操作系统,则需要下载“mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar”的安装包。
将“mysql-8.0.17-1.el6.x86_64.rpm-bundle.tar”上传至服务器中,例如上传至“/home”目录;
解压安装包:tar -xvf mysql-8.0.17-1.el6.x86_64.rpm-bundle.tar
rpm -ivh mysql-community-common-8.0.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-8.0.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-8.0.17-1.el6.x86_64.rpm
[client]
#password = your_password
port = 3306
default-character-set=utf8
max_allowed_packet = 100M
init_connect='SET NAMES utf8'
character-set-server=utf8
①mysql8.0.17 在安装之后,直接使用“mysql -uroot”无法登录,报错如下:
②使用临时密码进行登录,查询临时密码:grep “password” /var/log/mysqld.log
可以看到,我这里的临时密码是:x6i&t(+S>ngk
③使用临时密码登录:mysql -uroot -p
备注:不能使用“mysql -uroot -px6i&t(+S>ngk”的方式进行登录,会报错“-bash: syntax
error near unexpected token `+S’”。
④修改root用户密码:
依次执行一下语句
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'BeiJing@123';
mysql> flush privileges;
mysql> exit;
登录mysql数据库:mysql -uroot -p
依次执行一下语句:
mysql> use mysql;
mysql> update user set host='%' where user='root';
mysql> flush privileges;
mysql> grant all privileges on *.* to root@'%';
mysql> flush privileges;
mysql> exit;
依次执行一下语句:
mysql> use mysql;
mysql> ALTER USER 'root'@'%' IDENTIFIED BY 'BeiJing@123' PASSWORD EXPIRE NEVER;
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'BeiJing@123';
mysql> flush privileges;
mysql> exit;
如果连接不上,则使用命令telnet 192.168.0.196 3306判断是否成功,如果不成功则需要在服务端防火墙上开启3306端口;