MySQL作为开源的关系型数据库管理系统,与CentOS的结合能够提供高效、可靠的数据存储和检索服务
本文将详细介绍如何在CentOS系统上安装MySQL,包括准备工作、安装步骤、安全配置以及远程访问的设置,确保读者能够顺利完成安装并配置出一个安全、高效的MySQL环境
一、安装前的准备工作 在正式安装MySQL之前,我们需要做一些准备工作,以确保安装过程的顺利进行
1.安装wget命令: wget是一个在Linux系统中用于从网络上自动下载文件的自由工具
在安装MySQL的过程中,我们会用到wget来下载MySQL的安装包
因此,首先需要在CentOS系统上安装wget命令
打开终端,输入以下命令: bash sudo yum -y install wget 2.系统升级: 在安装MySQL之前,建议对系统进行升级,以确保系统有最新的安全补丁和软件包
这有助于减少安装过程中可能遇到的问题
输入以下命令进行系统升级: bash sudo yum update -y 3.安装GCC编译器: MySQL的安装过程中需要用到GCC编译器
如果系统中尚未安装GCC,可以通过以下命令进行安装: bash sudo yum install -y gcc 二、通过Yum进行MySQL安装 在CentOS系统中,使用Yum包管理器安装软件是一种简便且高效的方法
以下是使用Yum安装MySQL的详细步骤: 1.导入MySQL官方软件源: 首先,我们需要导入MySQL的官方软件源
这将使我们能够访问MySQL的官方软件包,并从中选择适合我们需求的版本进行安装
使用wget命令下载MySQL的rpm安装包,并安装它: bash wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm 注意:这里的URL可能因MySQL版本的不同而有所变化
请确保下载与您的CentOS版本相匹配的MySQL安装包
2.安装MySQL服务器: 使用Yum包管理器安装MySQL服务器
这个过程可能会比较耗时,因为Yum需要从远程仓库下载MySQL服务器及其依赖项
输入以下命令进行安装: bash sudo yum -y install mysql-server 如果遇到密钥问题导致的安装失败,可以尝试导入MySQL的官方GPG密钥,并再次执行安装命令: bash sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 sudo yum -y install mysql-server 3.启动MySQL服务: 安装完成后,我们需要启动MySQL服务
使用systemctl命令来启动并检查MySQL服务的状态: bash sudo systemctl start mysqld sudo systemctl status mysqld 三、查看并修改MySQL临时密码 MySQL安装成功后,会自动生成一个临时密码
我们需要找到这个临时密码,并使用它登录MySQL,然后修改密码以确保账户安全
1.查看临时密码: MySQL的临时密码通常记录在MySQL的日志文件中
使用grep命令搜索日志文件,找到临时密码: bash grep temporary password /var/log/mysqld.log 2.登录MySQL并修改密码: 使用找到的临时密码登录MySQL
登录成功后,执行ALTER USER命令修改密码
为了提高密码的安全性,建议设置一个复杂且不易被猜测的密码
同时,MySQL对密码的强度有一定的要求,如果设置的密码不符合要求,可以通过调整密码策略来降低要求(但不建议这样做): bash mysql -uroot -p 输入临时密码登录后 ALTER USER root@localhost IDENTIFIED BY 新密码; 如果遇到密码策略导致的问题,可以通过以下命令调整密码策略: bash SET GLOBAL validate_password_policy=LOW; SET GLOBAL validate_password_length=5; 然后再次尝试修改密码
四、配置MySQL允许远程访问 默认情况下,MySQL只允许本地访问
如果需要从远程计算机连接到MySQL服务器,需要进行一些配置
1.修改MySQL配置文件: 编辑MySQL的配置文件(通常是/etc/my.cnf或/etc/mysql/my.cnf),找到bind-address这一行,并将其值改为0.0.0.0,以允许所有IP地址连接
但出于安全考虑,更推荐的做法是指定允许连接的特定IP地址
然而,在CentOS7及更高版本中,MySQL的配置可能通过systemd进行管理,而不是直接编辑配置文件
在这种情况下,可以通过修改/etc/systemd/system/mysqld.service.d/override.conf文件来添加或修改MySQL的启动参数
2.更新user表中的Host字段: 登录MySQL后,切换到mysql数据库,并更新user表中的Host字段,将root用户的Host值改为%,以允许任何主机连接
然后刷新权限使更改生效: bash mysql -uroot -p 输入密码登录后 USE mysql; UPDATE user SET Host=% WHERE User=root; FLUSH PRIVILEGES; 3.开放防火墙端口: 如果CentOS系统的防火墙处于开启状态,需要开放MySQL使用的端口(默认是3306)以允许远程访问
使用firewall-cmd命令来开放端口并重载防火墙配置: bash sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cmd --reload 五、测试MySQL连接 最后,我们需要测试MySQL的连接是否正常
可以使用MySQL客户端工具(如mysql命令行客户端、MySQL Workbench等)从本地或远程计算机连接到MySQL服务器,并执行一些基本的SQ