centOS6下安装mysql8.0.17数据库

文章目录

  • 1.检查并卸载系统中的mysql组件
    • 1.1 检查是否安装了MySQL组件
    • 1.2 依次卸载删除MySQL各类组件
    • 1.3 删除mysql相关的服务
    • 1.4 收集并删除MySQL对应的文件夹信息
    • 1.5 删除mysql用户及用户组
    • 1.6 确认MySQL是否卸载删除
    • 1.7 检查并卸载mariadb数据库
  • 2.centOS6下RPM包方式安装MySQL8.0.17
    • 2.1 上传安装包
    • 2.2. 解压安装包
    • 2.3. 按照依赖顺序依次安装:
    • 2.4. 修改“/etc/my.cnf”文件
    • 2.5. 重启mysql服务:service mysqld restart
    • 2.6. 使用临时密码登录mysql:
    • 2.7. 使用设置的新密码登录mysql,修改root用户配置:
    • 2.8. 修改root用户密码加密规则,否则无法使用客户端进行远程连接:
    • 2.9. 重启mysql服务:service mysqld restart
    • 2.10. 使用mysql客户端测试连接mysql数据库;

1.检查并卸载系统中的mysql组件

1.1 检查是否安装了MySQL组件

[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

1.2 依次卸载删除MySQL各类组件

[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命令,进行强制删除。

1.3 删除mysql相关的服务

chkconfig --list | grep -i mysql
chkconfig --del mysql

1.4 收集并删除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]#

1.5 删除mysql用户及用户组

如果有必要,删除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 ~]#

1.6 确认MySQL是否卸载删除

[root@DB-Server init.d]# rpm -qa | grep -i mysql

1.7 检查并卸载mariadb数据库

查看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

2.centOS6下RPM包方式安装MySQL8.0.17

这里所写的安装步骤是基于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”的安装包。

2.1 上传安装包

将“mysql-8.0.17-1.el6.x86_64.rpm-bundle.tar”上传至服务器中,例如上传至“/home”目录;

2.2. 解压安装包

解压安装包:tar -xvf mysql-8.0.17-1.el6.x86_64.rpm-bundle.tar
centOS6下安装mysql8.0.17数据库_第1张图片

2.3. 按照依赖顺序依次安装:

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
centOS6下安装mysql8.0.17数据库_第2张图片

2.4. 修改“/etc/my.cnf”文件

在“/etc/my.cnf”文件中添加如下内容:
centOS6下安装mysql8.0.17数据库_第3张图片

 [client] 
#password = your_password 
port = 3306 
default-character-set=utf8 

max_allowed_packet = 100M 
init_connect='SET NAMES utf8' 
character-set-server=utf8

2.5. 重启mysql服务:service mysqld restart

2.6. 使用临时密码登录mysql:

①mysql8.0.17 在安装之后,直接使用“mysql -uroot”无法登录,报错如下:
在这里插入图片描述

②使用临时密码进行登录,查询临时密码:grep “password” /var/log/mysqld.log
centOS6下安装mysql8.0.17数据库_第4张图片

可以看到,我这里的临时密码是:x6i&t(+S>ngk

③使用临时密码登录:mysql -uroot -p

备注:不能使用“mysql -uroot -px6i&t(+S>ngk”的方式进行登录,会报错“-bash: syntax
error near unexpected token `+S’”。
centOS6下安装mysql8.0.17数据库_第5张图片

④修改root用户密码:

依次执行一下语句

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'BeiJing@123';
mysql> flush privileges;
mysql> exit; 

2.7. 使用设置的新密码登录mysql,修改root用户配置:

登录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; 

执行过程截图:
centOS6下安装mysql8.0.17数据库_第6张图片

2.8. 修改root用户密码加密规则,否则无法使用客户端进行远程连接:

依次执行一下语句:

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; 

2.9. 重启mysql服务:service mysqld restart

2.10. 使用mysql客户端测试连接mysql数据库;

如果连接不上,则使用命令telnet 192.168.0.196 3306判断是否成功,如果不成功则需要在服务端防火墙上开启3306端口;

你可能感兴趣的:(mysql)