如何在CentOS 8 / RHEL 8上安装MySql 8.0

MySQL是最流行的开源关系数据库管理系统。 MySQL最初由MYSQL AB开发,现在由Oracle Corporation拥有。在MySQL分支MariaDB出现之前,它是Linux上的主要数据库应用程序。可以使用默认在CentOS 8和RHEL 8系统上启用的MySQL模块,从默认的AppStream存储库安装最新的MySQL 8.0版本。本文将引导您逐步在CentOS 8 / RHEL 8上安装MySQL 8.0。

MySQL 8.0增强

RHEL 8随MySQL 8.0一起发布,具有以下新功能:

  • 扩展的JSON功能。
  • MySQL 8.0支持角色。角色是特权的集合。
  • 包括存储有关数据库对象信息的事务数据字典。
  • 支持通用表表达式-递归和非递归
  • 支持使用相关行在查询的每一行上执行计算的窗口函数。
  • InnoDB附带了对NOWAIT和SKIP LOCKED选项的支持,以锁定读取的语句。

在CentOS8和RHEL 8上安装MySQL 8.0

使用CentOS软件包管理器作为root用户或具有sudo特权的用户来安装MySQL 8.0服务器。

# sudo dnf install @mysql

@mysql模块将安装MySQL及其所有依赖项。安装完成后,启动MySQL服务,以便可以通过运行以下命令在启动时自动启动它:

# systemctl start mysqld
# systemctl enable --now mysqld

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

# systemctl status mysqld
Example output
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2019-22-12 06:07:35 UTC; 1min 59s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 4633 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 4708 (mysqld)
   Status: "Server is operational"
    Tasks: 38 (limit: 9584)
   Memory: 496.4M
   CGroup: /system.slice/mysqld.service
           └─4708 /usr/sbin/mysqld

Dec 22 06:07:23 centos8 systemd[1]: Starting MySQL Server...
Dec 22 06:07:35 centos8 systemd[1]: Started MySQL Server.

安全的MySQL 8服务器

通过运行执行一些基于安全性的操作的安全脚本来保护您的MySQL安装,例如,设置根密码,删除匿名用户,禁止远程root登录,删除测试数据库以及重新加载特权。你呢

# mysql_secure_installation

您将被要求设置 VALIDATE PASSWORD PLUGIN用于测试MySQL用户密码的强度并提高安全性。密码验证策略分为三个级别:低,中和强。如果您不想设置密码验证插件,请按Enter。

在下一个提示符下,将要求您设置MySQL root用户的密码。这样做时,脚本将删除匿名用户,限制root用户对本地计算机的访问,并请求删除测试数据库。应该回答 Y (是)所有问题。

要从命令行与MySQL服务器进行交互,请使用作为依赖项安装的MySQL客户端实用程序。通过键入以下内容测试根访问:

# mysql -u root -p

出现提示时,输入您的root密码,您将看到My​​SQL shell,如下所示:

Enter password:    
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 12
Server version: 8.0.13 Source distribution

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql>

仅此而已!本文介绍了如何在CentOS 8和RHEL 8上安装MySQL 8.0。如果您有任何疑问或反馈,请在下面的评论部分中分享。

Sidebar