centos8 安装mysql8.0

2019/11/25, CentOS 8, MySQL 8.0

摘要: CentOS 8 安装MySQL 8.0 并配置远程登录

安装MySQL8.0#

使用最新的包管理器安装MySQL

sudo dnf install @mysql

开启启动#

安装完成后,运行以下命令来启动MySQL服务并使它在启动时自动启动:

sudo systemctl enable --now mysqld

要检查MySQL服务器是否正在运行,请输入:

sudo systemctl status mysqld

添加密码及安全设置#

运行mysql_secure_installation脚本,该脚本执行一些与安全性相关的操作并设置MySQL根密码:

sudo mysql_secure_installation

步骤如下:

  1. 要求你配置VALIDATE PASSWORD component(验证密码组件): 输入y ,回车进入该配置

    • 选择密码验证策略等级, 我这里选择0 (low),回车
    • 输入新密码两次
    • 确认是否继续使用提供的密码?输入y ,回车
    • 移除匿名用户? 输入y ,回车
    • 不允许root远程登陆? 我这里需要远程登陆,所以输入n ,回车
  2. 移除test数据库? 输入y ,回车

  3. 重新载入权限表? 输入y ,回车

配置远程登陆#

如果需要设置root账户远程登陆,上一步骤中,不允许root远程登陆?这一步需要设为n。
接下来本机登录MySQL,将root用户的host字段设为'%',意为接受root所有IP地址的登录请求:
本机登录MySQL:

mysql -uroot -p<上面步骤中设置的密码>

回车后即可登录,接下来终端变成了mysql>开头:

接着继续执行mysql语句,将将root用户的host字段设为'%':

use mysql;
update user set host='%' where user='root';
flush privileges;

设置完成后输入exit退出mysql,回到终端shell界面,接着开启系统防火墙的3306端口:

sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

关闭MySQL主机查询dns#

MySQL会反向解析远程连接地址的dns记录,如果MySQL主机无法连接外网,则dns可能无法解析成功,导致第一次连接MySQL速度很慢,所以在配置中可以关闭该功能。
参考文档
打开/etc/my.cnf文件,添加以下配置:

[mysqld]
skip-name-resolve

重启服务#

sudo systemctl restart mysqld

本机测试安装后,MySQL8.0默认已经是utf8mb4字符集,所以字符集不再修改

大小写问题

mysql 区分大小写设置

[mysqld]
 
lower_case_table_names = 1

查看 大小写设置

show variables like '%lower%';

在这里插入图片描述

身份验证的操作

由于CentOS 8中的某些客户端工具和库与caching_sha2_password方法不兼容,因此CentOS 8存储库中包含的MySQL 8.0服务器设置为使用旧的mysql_native_password身份验证插件,该方法在上游MySQL 8.0发行版中设置为默认。

对于大多数设置,mysql_native_password方法应该没问题,但是,如果你想将默认身份验证插件更改为caching_sha2_password,这样可以更快并提供更好的安全性,请打开以下配置文件:

 sudo vim /etc/my.cnf.d/mysql-default-authentication-plugin.cnf

将default_authentication_plugin的值更改为caching_sha2_password:

[mysqld]

default_authentication_plugin=caching_sha2_password

关闭并保存文件,然后重新启动MySQL服务器以使更改生效:

 sudo systemctl restart mysqld
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值