MySQL,作为一款开源的关系型数据库管理系统,因其高性能、可靠性和易用性,成为了众多企业和开发者的首选
特别是在CentOS这样的流行Linux发行版上,MySQL的安装与配置显得尤为重要
本文将详细介绍如何在CentOS系统中使用YUM包管理器安装和配置MySQL,确保您能轻松上手并高效管理您的数据库
一、准备工作 在开始安装之前,请确保您的CentOS系统已经更新到最新版本,并且具备必要的网络连接权限
此外,虽然YUM安装MySQL相对简单,但了解一些基本的Linux命令和MySQL知识将有助于您更好地完成整个过程
二、安装MySQL 2.1 添加MySQL YUM仓库 MySQL官方提供了YUM仓库,方便用户下载和安装MySQL相关软件包
首先,您需要下载并安装MySQL的YUM仓库配置文件
根据您的CentOS版本和所需的MySQL版本,选择合适的仓库文件进行下载
对于CentOS7系统,如果您想安装MySQL8.0版本,可以使用以下命令: bash sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm 如果您想安装MySQL5.7版本,则使用: bash wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm 对于CentOS8系统(请注意,CentOS8已经停止官方支持,但以下命令仍适用于其生命周期内),使用: bash dnf install https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm 安装完成后,您可以检查仓库是否添加成功: bash yum repolist enabled | grep mysql.-community. 如果看到MySQL社区仓库列在输出中,说明添加成功
2.2 安装MySQL服务器 接下来,使用YUM命令安装MySQL服务器软件包
对于大多数用户来说,安装`mysql-community-server`是最合适的选择
bash sudo yum install mysql-community-server -y 或者,如果您使用的是较旧的教程或文档,可能会看到安装`mysql-server`的命令,这也是可行的,但通常建议安装社区版以获得最新的功能和安全更新
bash sudo yum install mysql-server -y 安装过程中,YUM会自动处理所有依赖关系,确保MySQL能够顺利运行
2.3 启动MySQL服务并设置开机自启 安装完成后,您需要启动MySQL服务,并设置它在系统启动时自动启动
bash sudo systemctl start mysqld sudo systemctl enable mysqld 您可以使用以下命令检查MySQL服务的状态,确保它正在运行: bash sudo systemctl status mysqld 三、配置MySQL 3.1 获取临时root密码 MySQL安装完成后,会自动生成一个临时root密码
这个密码存储在MySQL服务器的日志文件中,通常位于`/var/log/mysqld.log`
您可以使用以下命令查看并获取临时密码: bash sudo grep temporary password /var/log/mysqld.log 输出示例可能如下: 2023-10-01T12:34:56.123456Z1【Note】 A temporary password is generated for root@localhost: abcDEF123! 请记住这个密码,因为您将在下一步中使用它
3.2 运行安全配置脚本 为了提高MySQL的安全性,MySQL提供了一个安全配置脚本`mysql_secure_installation`
这个脚本会引导您完成一系列重要的安全设置步骤,包括设置root密码、删除匿名用户、禁止root远程登录(可选)等
bash sudo mysql_secure_installation 按照提示操作,首先会要求您输入当前的root密码
由于这是第一次运行,且您刚刚获取了临时密码,所以请输入该临时密码
然后,脚本会提示您设置新的root密码
请选择一个强密码,并妥善保管
接下来,脚本会询问您是否要执行以下操作: - 删除匿名用户:建议删除,以提高安全性
-禁止root远程登录:根据您的需求选择
如果您需要在远程管理MySQL,可以选择不禁止
但在生产环境中,通常建议禁止root远程登录,并通过创建具有适当权限的其他用户来管理数据库
- 删除测试数据库:建议删除,因为测试数据库仅用于测试目的,不应保留在生产环境中
- 重新加载权限表:确保所有更改立即生效
建议选择是
完成这些步骤后,您的MySQL安装应该更加安全
3.3 配置远程访问(可选) 如果您需要在远程访问MySQL数据库,您需要进行一些额外的配置
首先,登录到MySQL服务器: bash mysql -u root -p 然后,创建一个允许远程访问的用户,并授予其必要的权限: sql CREATE USER username@% IDENTIFIED BY password; GRANT ALL PRIVILEGES ON- . TO username@% WITH GRANT OPTION; FLUSH PRIVILEGES; 替换`username`和`password`为您选择的用户名和密码
`%`表示允许从任何主机连接
如果您只想允许从特定主机连接,请将`%`替换为该主机的IP地址或主机名
接下来,您需要开放防火墙端口(默认是3306)以允许远程连接: bash sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cmd --reload 现在,您应该能够从远程主机连接到MySQL数据库了
四、常见问题及解决方案 在安装和配置MySQL过程中,您可能会遇到一些常见问题
以下是一些常见问题的解决