MySQL,作为一款开源的关系型数据库管理系统,因其高性能、可靠性和易用性,受到了广泛的欢迎
本文将详细介绍如何在CentOS7操作系统上安装MySQL5.7.27版本,帮助你在Linux环境下搭建一个高效、安全的数据库环境
一、准备工作 在安装MySQL之前,你需要确保你的CentOS7系统已经更新到最新版本,并且具备必要的权限(通常是root用户权限)
此外,由于CentOS7可能会默认安装MariaDB,这是MySQL的一个分支,因此在安装MySQL之前,你需要检查并卸载MariaDB,以避免潜在的冲突
1.检查并卸载MariaDB: bash rpm -qa | grep mariadb 如果系统安装了MariaDB,你可以使用以下命令卸载它: bash yum -y remove mariadb-libs 同时,删除MariaDB的数据文件: bash rm -rf /var/lib/mysql/ 2.更新系统: 在安装任何新软件之前,更新你的系统是一个好习惯
这可以确保你拥有最新的软件包和依赖项
bash yum -y update 二、下载并安装MySQL5.7.27 1.下载MySQL Yum存储库: MySQL提供了一个Yum存储库,可以方便地安装和管理MySQL软件包
首先,你需要下载MySQL5.7的Yum存储库RPM包
bash wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm 请注意,URL可能会随着MySQL版本的更新而变化,因此请确保你下载的是与你要安装的MySQL版本相匹配的RPM包
2.安装MySQL Yum存储库: 使用rpm命令安装下载的RPM包
bash rpm -Uvh mysql57-community-release-el7-10.noarch.rpm 3.安装MySQL服务端: 现在,你可以使用yum命令来安装MySQL服务端了
bash yum install -y mysql-community-server 如果在安装过程中遇到任何问题,比如密钥导入失败,你可以手动导入MySQL的GPG密钥: bash rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 然后再次尝试安装MySQL服务端
三、启动并配置MySQL 1.启动MySQL服务: 安装完成后,你可以使用systemctl命令启动MySQL服务
bash systemctl start mysqld.service 2.检查MySQL服务状态: 为了确保MySQL服务已经成功启动,你可以使用以下命令检查其状态
bash systemctl status mysqld.service 你应该看到类似“active(running)”的状态信息,这表明MySQL服务正在运行
3.获取临时密码: MySQL5.7为root用户生成了一个随机临时密码
你可以在MySQL的日志文件中找到这个密码
bash grep temporary password /var/log/mysqld.log 记录下这个密码,因为你将在下一步中使用它
4.登录MySQL并修改密码: 使用临时密码登录MySQL
bash mysql -uroot -p 然后,系统会提示你输入密码
输入你从上一步中获取的临时密码
登录成功后,你需要立即修改root用户的密码
由于MySQL的默认密码策略要求密码非常复杂,你可以先全局修改密码策略,然后再设置新的密码
sql SET GLOBAL validate_password_policy=0; SET GLOBAL validate_password_length=1; ALTER USER root@localhost IDENTIFIED BY yourpassword; 请将`yourpassword`替换为你想要设置的新密码
注意,虽然这里我们将密码策略设置为最低要求,但在实际生产环境中,你应该设置一个强密码来确保数据库的安全性
四、配置MySQL以支持远程访问和中文 1.授权远程访问: 如果你想从其他机器远程访问MySQL数据库,你需要为root用户授予远程访问权限
sql GRANT ALL PRIVILEGES ON- . TO root@% IDENTIFIED BY yourpassword WITH GRANT OPTION; FLUSH PRIVILEGES; 同样,请将`yourpassword`替换为你的MySQL密码
2.设置MySQL字符集为UTF-8: 为了让MySQL支持中文,你需要将字符集设置为UTF-8
编辑MySQL的配置文件`/etc/my.cnf`,在`【mysqld】`和`【mysql】`部分添加或修改以下行: ini 【mysqld】 character_set_server=utf8 【mysql】 default-character-set=utf8 保存并退出编辑器后,重启MySQL服务以使配置生效
bash systemctl restart mysqld.service 五、其他配置和优化 1.开启开机自启动: 为了确保MySQL在系统启动时自动启动,你可以使用以下命令启用开机自启动
bash systemctl enable mysqld 2.防火墙配置: 如果你的CentOS7系统启用了防火墙,你需要开放MySQL的默认端口(3306)以允许远程访问
bash firewall-cmd --permanent --add-port=3306/tcp firewall-cmd --reload 3.卸载MySQL Yum存储库(可选): 虽然MySQL Yum存储库在安装和管理MySQL软件包时非常有用,但如果你不再需要它,或者想要避免在每次yum操作时都更新它,你可以卸载它
bash
rpm -qa | grep mysql-community-release
yum -y remove