详记:linux服务器使用Docker部署springboot+vue项目(三:安装并远程连接MySQL8.0)

 

目录

1、前言

2、版本变更介绍

3、安装详述

①为防止冲突,首先查询并清理Linux里的mysql

②安装mysql

③开启MySQL服务

④配置远程登录

 ⑤使用Navicat远程连接服务器的MySQL数据库


1、前言

由于申请的服务器的linux版本是centOS8.0(仔细的同学会发现系列文章的第二篇中有一个截图是7.6的linux版本,由于是之前截的,所以与现在的版本有差距),目前国内的生态也开始向8.X靠拢,因此本期做一个centOS8.0安装MySQL8的教程。

2、版本变更介绍

centOS8是基于red hat enterprise linux 8.0的版本, 这个版本的软件包管理工具仍旧使用的YUM工具,但是,与之前不同的是,该YUM工具是基于DNF技术的。所以尽管这个版本还是可以使用yum命令,但是yum实际上是dnf的别名。实际上使用的是dnf命令。

3、安装详述

①为防止冲突,首先查询并清理Linux里的mysql

rpm -qa|grep -i mysql

 使用上述命令查询mysql相关的内容

rpm -ev mysql-errmsg-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64

使用【rpm -ev (内容名称)】命令删除mysql相关内容,查询出来的全删。示例如下。

  删除时请注意,这4个文件存在依赖关系,可以按照图中顺序,先删除mysql-server,再删除mysql,接着删除mysql-errmsg,最后删除mysql-common。

删完这些,注意还需要删除mysql相关的文件夹,否则会对新安装的mysql产生一定影响,比如安全等级和策略,用户名密码等。

find / -name mysql

 使用上述代码查找mysql相关文件夹。

查询结果可能会存在差异,查出来多少删多少就行。

rm -rf /var/log/mysql

使用上述代码逐条删除。

不放心的话可以再使用 find / -name mysql 再次查询一下。 

②安装mysql

dnf install @mysql

使用上述命令安装mysql

 通过上图可以看到即将安装的内容,包括mysql,mysql-server,mysql-common和mysql-errmsg及其相应的版本号和大小。

输入y表示同意并进行下载。

 下载完成后会自动安装,等待出现如上图所示内容即表示安装成功。接下来开启mysql相关服务。

③开启MySQL服务

systemctl enable --now mysqld

使用上述命令开启MySQL服务,并将MySQL服务设置为服务器开机时自动启动。

可以使用如下命令查询MySQL服务的状态。

systemctl status mysqld

  查询结果如上图所示。

mysql_secure_installation

接下来使用上述命令,运行MySQL安全安装。

 提示的是:是否启用MySQL的验证密码组件。为了保证安全,我选YES。输入y进入下一步。

 这里提示的是:密码验证策略有3个级别。

LOW(低)的要求是,密码长度大于等于8位。

MEDIUM(中等)的要求是,密码长度大于等于8位,且由数字,大小写字母和特殊字符混合。

STRONG(强)的要求是,密码长度大于等于8位,且由数字,大小写字母,特殊字符混合,并且是非字典中的组合。【解释一下什么叫非字典中的组合,比如hello这个单词就是字典中的组合,所以不能够通过。因此往往强密码都是形如:1C2T!mLg3@B  这种的】

由于并非是商业用途,所以我这里选择了LOW。

 输入0或LOW之后,提示:请为root用户设置密码。密码的要求是刚刚选择对应难度的要求。

输入两次密码后,会提示系统对密码强度的评估分。然后再次询问你是否使用刚才提供的密码作为root用户的密码。选择y,进行下一步。

 

 这边提示比较多,大意是:默认情况下,数据库保留了一个匿名用户。该用户可以在没有账户的情况下登录数据库,以便于测试使用。是否删除匿名用户?

考虑到安全性问题,选择y,禁用匿名用户,并进行下一步。

这里提示:正常情况下,root用户只应该在localhost下被允许连接。这可以确保没有人可以从网络上猜测到root用户的密码。是否允许root用户远程登录?

我这里需要从外部访问数据库,因此我选择No。输入n,进行下一步。 

提示:通常情况下,MYSQL数据库有一个所有人可以访问的test数据库。这也是仅用于测试使用的数据库,在发布到正式环境时应该被删除。是否删除test数据库和权限?

我不需要测试数据库,所以我选择删除,选择y,进行下一步。

 

提示:重载权限表,以保证刚刚做的所有更改可以立即生效。是否现在重载权限表?

没说的,立即重载,选y,下一步。

提示All done!

恭喜,全部完成! 

④配置远程登录

首先打开mysql

mysql -u root -p

输入设置的密码后登录到mysql

 由于mysql的安全策略,mysql是默认不允许远程使用root用户登录的。因此需要手动开启。

use mysql;

使用上述命令切换到mysql数据库中,以便于后续修改权限。(注意,末尾的分号不能缺少)

 不放心的话,可以使用如下命令查询一下user表的相关信息,看看root用户是否拥有远程登录的权限。

select * from user where user = 'root';

查询结果如下:(忘加分号的后果就是,还要再加个分号。[/捂脸])

 看起来有点费劲,但是可以明确的看到,root用户拥有的host的权限是localhost,也就是只允许本地登录。所以要将localhost改为%,以起到远程连接的效果。

接下来就是更改user表中root用户的权限

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

 

 修改完成后,记得刷新一下权限。

flush privileges;

⑤使用Navicat远程连接服务器的MySQL数据库

使用Navicat创建好mysql的连接,并编辑好连接属性。 

配置好后,点击测试连接。

 至此,安装mysql8,并配置远程登录全部完成!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值