CentOS7卸载mysql8,通过yum源方式安装mysql8,并用Navicat连接

目录

1.清理虚拟机上原有的MySQL相关文件或者软件

1.1卸载已安装的其他版本MySQL

1.2卸载删除 mariadb

2.通过yum源方式安装mysql8

2.1 安装mysql

2.2 启动mysql,并进行配置

 ​2.3登录mysql更改密码

2.4设置防火墙,开放端口

3.现在可以试试使用Navicat远程连接使用了,在Navicat中新建连接,并填写Linux的IP地址。

 4.mysql数据库常用命令介绍


1.清理虚拟机上原有的MySQL相关文件或者软件

1.1卸载已安装的其他版本MySQL

      (1)使用以下命令查询虚拟机上是否有安装MySQL

rpm -qa | grep -i mysql

          如果安装的有mysql,且mysql服务正在运行,需要先关闭服务,再开始卸载操作。

##查看mysql服务运行状态
systemctl status mysqld

##关闭mysql服务
systemctl stop mysqld

        使用以下命令进行删除卸载

##下面命令能卸载大部分的安装
yum remove -y mysql*

##上面的命令不能卸载下面红框中的文件,如果有该文件,需要单独用命令卸载
yum remove -y perl-DBD-MySQL-4.023-6.el7.x86_64

 

    (2)同时,需要查找mysql的配置文件进行删除

        查找配置文件命令

find / -name mysql

        使用以下命令进行删除

rm -rf /xxx/xx

命令后面跟配置文件的相对路径或绝对路径

    (3)特别地,如果之前是用压缩安装包安装的,系统中会存留有/etc/my.cnf配置文件和/etc/my.cnf.d目录文件夹,也需要删除,否则后面mysql服务启动的时候总是出错。情况介绍可以参考下面的博客:

        错误内容及解决,请参考   CentOS7重新安装mysql时出现错误

        删除命令:

rm -rf /etc/my.cnf
rm -rf /etc/my.cnf.d

1.2卸载删除 mariadb

        通常,CentOS上有安装 mariadb,很多博客介绍说,安装mysql后会对其进行覆盖,也可以直接进行卸载。

        查找是否有mariadb命令

rpm -qa | grep mariadb

        找到后进行强制删除命令

rpm -e --nodeps mariadb-xxx-xx

以上操作完成后,可以再用查找命令看看有没有删除成功。此时,安装mysql的环境就准备好了。

2.通过yum源方式安装mysql8

2.1 安装mysql

     (1)下载yum源,下面链接版本是8.027,rpm文件很小,只有几k,可以用链接下载,非常方便。

wget https://dev.mysql.com/get/mysql80-community-release-el7-4.noarch.rpm
rpm -ivh mysql80-community-release-el7-4.noarch.rpm

    (2)更新yum仓库

yum clean all 
yum makecache

    (3)使用以下命令查看yum仓库中有哪些版本,确认版本正确。

yum repolist all | grep mysql

          如果其中mysql8的状态为启动或enabled,说明版本正确,可以进行安装了。

    (4) 使用命令安装mysql,这个过程需要下载500多兆的文件,如果网速不给力,可以晚上睡觉前下载安装。

yum -y install mysql-community-server

##建议加上 y 参数,加上后只需要等待安装完成就可以了

        经过以上几步就安装好了,真的比压缩安装包安装简单太多了。

2.2 启动mysql,并进行配置

##(1)启动mysql服务
systemctl start mysqld

##(2)查看mysql服务状态
systemctl status mysqld

##(3)设置开机自启
systemctl enable mysqld

 2.3登录mysql更改密码

     (1)查看初始密码,mysql在安装后会创建一个root@locahost账户,初始的密码放在/var/log/mysqld.log文件中;

grep "password" /var/log/mysqld.log

        出来的提示中最后的很复杂的就是初始密码了。

     (2)用初始密码登录,更改密码。

##登录命令
mysql -uroot -p

        MySQL默认必须修改密码之后才能操作数据库,输入初始密码登录后,此时不能做任何事情,需要先修改用户密码。

        根据MySQL的密码设置规范,密码设置需要足够复杂,这主要是与mysql的密码策略有关。为了能修改密码策略进行简单密码设置,可以先将密码修改成一个满

足要求的复杂的密码,然后再进行密码策略的修改,更改策略后就能设置简单密码了。

##查看当前密码策略
mysql> SHOW VARIABLES LIKE 'validate_password%';

##设置密码策略
mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=4;

##length要求至少是4,如果命令中写的小于4,会自动改为4.
##特别注意,8.0后策略命令有所变化,password与policy、length之间是“点”。

 

 之后就可以将密码修改为简单好记的密码了。

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

       (3)给root用户授权,允许远程访问,这样就可以在自己电脑上用Navicat连接了。

mysql> use mysql

mysql> update user set host='%' where user='root';

##更改之后要刷新权限
mysql> FLUSH PRIVILEGES;

    (4)一般还需要修改下mysql8登录用户的加密规则,因为mysql8之前的版本中加密规则是mysql_native_password,而在mysql8后,加密规则改为了caching_sha2_password。如果不更改,在用Navicat连接时会报错误:1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client。所以可以在这里直接先将加密规则修改了。

查看及修改命令

##查看规则命令
mysql> select host,user,plugin,authentication_string from mysql.user;

##修改命令
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

## '123456'为设置的数据库密码
## 特别注意,'root'@后面是%,而不是localhost,因为前面已经设置过root用户的远程连接了。
host列为 % 表示不限制ip,localhost表示本机使用。

2.4设置防火墙,开放端口

         防火墙需要开启之后才能进行开放端口的设置,而且基于安全的考虑,防火墙也应该日常开启。

##查看防火墙状态
systemctl status firewalld

##开启防火墙
systemctl start firewalld

##查看已开放端口
firewall-cmd --list-ports

##永久开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent  

##重新加载,使设置生效
firewall-cmd --reload

3.现在可以试试使用Navicat远程连接使用了,在Navicat中新建连接,并填写Linux的IP地址。

 4.mysql数据库常用命令介绍

##查看数据库版本
mysql> select version();

##退出数据库
mysql> quit;

##显示数据库
mysql> show databases;

##选择数据库
mysql> use 数据库名称;

##显示数据库中的表
mysql> show tables;

##显示具体的表结构
mysql> describe 表名;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值