CentOS8安装mysql

(转载自https://www.cnblogs.com/kasnti/p/11929030.html)
1.安装MySQL8.0 使用最新的包管理器安装MySQL

sudo dnf install @mysql

2.开启启动 安装完成后,运行以下命令来启动MySQL服务并使它在启动时自动启动:
sudo systemctl enable --now mysqld

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

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

步骤如下:
  1. 要求你配置VALIDATE PASSWORD component(验证密码组件): 输入y ,回车进入该配置
    • 选择密码验证策略等级, 我这里选择0 (low),回车
    • 输入新密码两次
    • 确认是否继续使用提供的密码?输入y ,回车
    • 移除匿名用户? 输入y ,回车
    • 不允许root远程登陆? 输入y ,回车
      CentOS8安装mysql
      文章图片
      image
  2. 移除test数据库? 输入y ,回车
  3. 重新载入权限表? 输入y ,回车

    CentOS8安装mysql
    文章图片
    image
4.配置远程登陆 【CentOS8安装mysql】如果需要设置root账户远程登陆,上一步骤中,不允许root远程登陆?这一步需要设为n。
接下来本机登录MySQL,将root用户的host字段设为'%',意为接受root所有IP地址的登录请求:
本机登录MySQL:
mysql -uroot -p<上面步骤中设置的密码>

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

CentOS8安装mysql
文章图片
image
创建用户:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';

CentOS8安装mysql
文章图片
image 为用户授权:
GRANT privileges ON databasename.tablename TO 'username'@'host'

CentOS8安装mysql
文章图片
image 设置完成后输入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字符集,所以字符集不再修改

    推荐阅读