在CentOS7系统上安装MySQL数据库,是许多Linux用户和开发者必备的技能。下面,我将为大家详细讲解如何在CentOS7上安装MySQL,确保每一步都清晰明了,让你轻松上手。
一、安装前的准备
在安装MySQL之前,我们需要做一些准备工作。首先,确保你在root用户下操作,因为在root用户下安装的MySQL,在其他普通用户下也可以正常使用。其次,检查系统上是否已经安装了MySQL或MariaDB。MariaDB是MySQL的一个分支,如果系统中存在MariaDB,需要先将其卸载,以避免与MySQL的安装包产生冲突。可以使用以下命令来检查并卸载MariaDB:
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-文件名
二、下载并安装MySQL
接下来,我们需要下载MySQL的安装包。可以选择从MySQL的官方网站下载,也可以使用wget命令在线下载。以下是使用wget命令在线下载并安装MySQL的步骤:
yum -y install wget
wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
cd /etc/yum.repos.d/
yum -y install mysql-server
注意:在安装过程中,可能会遇到GPG密钥过期的问题。此时,需要更新GPG密钥,然后再重新执行安装命令。
三、启动MySQL并设置密码
安装完成后,我们需要启动MySQL服务,并使用临时密码登录MySQL。临时密码可以在/var/log/mysqld.log
文件中找到。
systemctl start mysqld
grep 'temporary password' /var/log/mysqld.log
mysql -uroot -p
重点来了:登录MySQL后,务必修改root用户的密码,并设置合适的密码策略。为了提高安全性,建议将密码策略设置为强策略,并设置足够长的密码。但是,为了演示方便,这里我们先将其设置为低风险策略,并修改密码:
SET GLOBAL validate_password_policy=LOW;
SET GLOBAL validate_password_length=5;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
四、配置MySQL允许远程访问
如果需要远程访问MySQL数据库,还需要进行以下配置:
- 关闭CentOS的防火墙(或者开放3306端口):
sudo systemctl disable firewalld
或者:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
systemctl restart firewalld.service
- 修改MySQL的配置文件,允许任何人连接:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'new_password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
至此,你已经成功在CentOS7系统上安装了MySQL,并进行了基本的配置。现在,你可以开始使用MySQL数据库了!