
MySQL,作为一个开源的关系型数据库管理系统,凭借其高性能、稳定性和易用性,成为了许多开发者和企业的首选
特别是在构建LEMP(Linux、Nginx、MySQL/MariaDB、PHP/Python/Perl)堆栈时,MySQL更是不可或缺的一部分
本文将详细介绍如何在CentOS8服务器上安装MySQL,确保您能轻松完成这一任务
一、准备工作 在正式安装MySQL之前,我们需要做一些准备工作
首先,您需要一台运行CentOS8的服务器
其次,服务器上应有一个具有管理权限的非root用户,并配置好firewalld防火墙
如果您还没有设置这些,建议先参考CentOS8的初始服务器设置指南完成相关配置
二、安装MySQL CentOS8的默认存储库中已经包含了MySQL8.0版本,这使得安装过程变得相对简单
您只需执行以下命令来安装mysql-server包及其依赖项: bash sudo dnf install mysql-server 在安装过程中,系统可能会提示您确认是否要继续
此时,只需按“y”并回车即可
安装完成后,MySQL软件包会将MySQL配置为名为mysqld.service的systemd服务
三、启动MySQL服务 虽然MySQL已经安装在您的服务器上,但此时它尚未运行
要启动MySQL服务,您需要使用以下systemctl命令: bash sudo systemctl start mysqld.service 要检查MySQL服务是否正常运行,可以使用以下命令: bash sudo systemctl status mysqld 如果MySQL启动成功,输出将显示MySQL服务处于活动状态
此外,您还可以将MySQL设置为在服务器启动时自动启动,以便在服务器重启后无需手动启动MySQL服务: bash sudo systemctl enable mysqld 如果您想改变这一行为,禁止MySQL在启动时启动,可以运行以下命令: bash sudo systemctl disable mysqld 四、安全配置 安装并启动MySQL后,下一步是进行安全配置
MySQL包含一个安全脚本,允许您更改一些默认配置选项以提高MySQL的安全性
要使用安全脚本,请运行以下命令: bash sudo mysql_secure_installation 该脚本将引导您完成一系列提示,询问您是否要对MySQL安装的安全选项进行某些更改
以下是一些关键步骤: 1.设置验证密码插件:您可以使用此插件来测试MySQL密码的强度
如果选择设置验证密码插件,脚本将要求您选择密码验证级别
最强级别将要求您的密码长度至少为8个字符,并且包括大写、小写、数字和特殊字符的混合
2.设置root用户密码:无论您是否选择设置验证密码插件,下一个提示都是为MySQL root用户设置密码
请输入并确认您选择的安全密码
如果您使用了验证密码插件,您将收到有关新密码强度的反馈
3.接受默认值:在后续的问题中,您可以按“Y”并按回车以接受默认值
这将删除一些匿名用户和测试数据库,禁用远程root登录,并加载这些新规则,以便MySQL立即尊重您所做的更改
通过运行安全脚本,您可以大大增强MySQL数据库的安全性
五、登录MySQL并验证安装 安全配置完成后,您可以使用新设置的root密码登录MySQL,验证安装是否成功: bash mysql -uroot -p 在此处输入您在安全配置过程中设置的密码
如果登录成功,您将看到MySQL的提示符,表明MySQL已在您的CentOS8服务器上成功安装并配置
六、安装其他版本的MySQL(可选) 虽然CentOS8的默认存储库中包含了MySQL8.0版本,但如果您需要安装其他版本的MySQL(如5.7或5.6),则需要下载并安装相应的rpm包
以下是以安装MySQL5.7为例的详细步骤: 1.下载并安装MySQL 5.7的rpm包: bash wget http://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm rpm -ivh mysql57-community-release-el7-11.noarch.rpm 请注意,由于CentOS8和CentOS7的某些差异,这里使用的是为CentOS7准备的rpm包
但在大多数情况下,它应该在CentOS8上也能正常工作
2.禁用默认的MySQL 8.0存储库并启用MySQL 5.7存储库: 如果您的系统上已经启用了MySQL8.0存储库,您需要禁用它并启用MySQL5.7存储库: bash sudo yum-config-manager --disable mysql80-community sudo yum-config-manager --enable mysql57-community 或者,您可以手动修改`/etc/yum.repos.d/mysql-community.repo`配置文件来禁用8.0系列子存储库并启用5.7系列子存储库
3.安装MySQL 5.7服务器: bash sudo yum install mysql-community-server 4.启动MySQL服务并进行安全配置: 安装完成后,启动MySQL服务: bash sudo systemctl start mysqld 并设置MySQL服务在启动时自动启动: bash sudo systemctl enable mysqld 然后,您可以按照前面的步骤运行`mysql_secure_installation`脚本来进行安全配置
5.查看初始化密码并登录MySQL: MySQL5.7的安装过程中也会生成一个临时密码,您可以在`/var/log/mysqld.log`文件中找到它
使用此密码登录MySQL后,您可以更改root用户的密码并进行其他必要的配置
七、注意事项与故障排除 在安装和配置MySQL的过程中,您可能会遇到一些问题
以下是一些常见的注意事项和故障排除方法: 1.防火墙设置:确保您的防火墙允许MySQL的默认端口(3306)的流量
如果您计划在远程访问MySQL数据库,还需要在防火墙上打开此端口
2.SELinux设置:如果您的系统上启用了SELinux,可能需要调整其策略以允许MySQL正常运行
这通常涉及到为MySQL创建适当的上下文和布尔值设置
3.依赖冲突:在安装不同版本的MySQL时,可能会遇到依赖冲突的问题
此时,您可以使用`rpm -e --nodeps`命令来卸载冲突的包(但请谨慎操作,以避免损坏系统)
4.日志文件:如果MySQL服务无法启动或运行异常,请查看MySQL的日志文件以获取更多信息
这些日志文件通常位于`/var/log/mysqld.log`或`/var/log/mysql/`目录下
八、总结 通过以上步骤,您应该能够在CentOS8服务器上成功安装并配置MySQL数据库
无论是选择默认的8.0
一台机器双MySQL部署指南
CentOS8a系统下MySQL数据库的安装指南
XAMPP中MySQL建表指南
JSON数据解析导入MySQL指南
解析MySQL死锁日志,优化数据库性能
Java MySQL分页查询性能优化指南
MySQL容灾功能:确保数据安全无忧
一台机器双MySQL部署指南
XAMPP中MySQL建表指南
JSON数据解析导入MySQL指南
解析MySQL死锁日志,优化数据库性能
Java MySQL分页查询性能优化指南
MySQL容灾功能:确保数据安全无忧
掌握Go语言:高效使用MySQL驱动包实战指南
MySQL使用标准指南:高效数据库管理
CentOS6.9 MySQL升级指南
MySQL表类型全解析
MySQL集群类型大盘点
MySQL常用编码类型大盘点