MySQL5.7版本带来了许多性能改进、新特性和安全增强,使其成为许多开发者和系统管理员的首选
本文将详细介绍如何使用YUM包管理器在基于RPM的Linux发行版(如CentOS、RHEL和Fedora)上安装MySQL5.7
通过遵循本文的指南,您将能够轻松安装并配置MySQL5.7,从而为您的应用程序提供强大且可靠的数据存储解决方案
一、准备工作 在安装MySQL5.7之前,有几个重要的准备工作需要完成: 1.更新系统软件包:确保您的系统软件包是最新的,这有助于避免潜在的依赖性问题
bash sudo yum update -y 2.添加MySQL Yum存储库:MySQL官方提供了一个YUM存储库,其中包含了最新的MySQL版本
您需要下载并安装MySQL Yum存储库RPM包
首先,访问MySQL官方网站下载适用于您的操作系统的MySQL Yum存储库RPM包
下载链接通常类似于: https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 然后,使用`rpm`命令安装该包: bash sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm 注意:链接中的版本号(如`el7-11`)可能会根据MySQL的最新发布而变化,请访问MySQL官方网站获取最新链接
3.禁用默认MySQL模块(可选):在某些系统上,特别是使用较新版本的RHEL或CentOS时,可能默认启用了MariaDB模块
为了避免冲突,建议禁用默认的MariaDB模块
编辑`/etc/yum.repos.d/mysql-community.repo`文件,并找到`【mysql57-community】`部分,确保它是启用的(enabled=1),同时禁用其他MySQL版本和MariaDB的存储库(将enabled设置为0)
二、安装MySQL5.7 完成准备工作后,您可以开始安装MySQL5.7: 1.使用YUM安装MySQL服务器: bash sudo yum install -y mysql-community-server 2.启动MySQL服务:安装完成后,启动MySQL服务,并设置它在系统启动时自动启动
bash sudo systemctl start mysqld sudo systemctl enable mysqld 3.获取临时root密码:MySQL 5.7在安装过程中会自动生成一个临时root密码
您可以在`/var/log/mysqld.log`文件中找到该密码
使用`grep`命令查找临时密码: bash sudo grep temporary password /var/log/mysqld.log 输出类似于: 2023-10-01T12:34:56.789012Z1【Note】 A temporary password is generated for root@localhost: A1b2C3d4e5 请记住这个密码,因为您将在下一步中使用它
三、安全配置MySQL 安装完成后,MySQL提供了一个`mysql_secure_installation`脚本来帮助您进行安全配置
运行此脚本,并按照提示进行操作: 1.运行安全配置脚本: bash sudo mysql_secure_installation 2.更改root密码:当提示输入新密码时,输入一个强密码并确认
3.移除匿名用户:默认情况下,MySQL会创建一个匿名用户
出于安全考虑,建议移除它
当脚本提示是否移除匿名用户时,输入`y`
4.禁止root远程登录:为了防止未经授权的访问,建议禁止root用户从远程主机登录
当脚本提示是否禁止root远程登录时,输入`y`
5.删除测试数据库:MySQL安装过程中会创建一个名为`test`的测试数据库
出于安全考虑,建议删除它
当脚本提示是否删除测试数据库时,输入`y`
6.重新加载权限表:脚本将自动重新加载权限表,以确保所有更改生效
四、基本配置和管理 完成安全配置后,您可以开始使用MySQL了
以下是一些基本配置和管理任务: 1.登录MySQL: bash mysql -u root -p 输入您在`mysql_secure_installation`中设置的新root密码
2.创建新用户:为了管理数据库,您可能需要创建新用户并授予适当的权限
例如,创建一个名为`newuser`的用户,密码为`newpassword`,并授予该用户对`newdatabase`数据库的所有权限: sql CREATE USER newuser@localhost IDENTIFIED BY newpassword; GRANT ALL PRIVILEGES ON newdatabase. TO newuser@localhost; FLUSH PRIVILEGES; 3.查看数据库列表: sql SHOW DATABASES; 4.创建新数据库: sql CREATE DATABASE newdatabase; 5.退出MySQL: sql EXIT; 五、优化和监控 为了确保MySQL的性能和稳定性,您可能需要进行一些优化和监控任务: 1.调整配置文件:MySQL的配置文件通常位于`/etc/my.cnf`或`/etc/mysql/my.cnf`
根据您的需求调整配置文件中的参数,如`innodb_buffer_pool_size`、`query_cache_size`等
2.监控MySQL性能:使用工具如`MySQL Enterprise Monitor`、`Percona Monitoring and Management(PMM)`或开源工具如`Zabbix`、`Nagios`来监控MySQL的性能指标
3.定期备份:定期备份数据库是防止数据丢失的重要措施
您可以使用`mysqldump`工具进行逻辑备份,或使用`Percona XtraBackup`进行物理备份
4.更新和升级:定期检查MySQL的更新和补丁,以确保您的数据库系统是最新的,并受益于最新的性能改进和安全修复
六、最佳实践 在安装和配置MySQL5.7时,遵循以下最佳实践将有助于提高系统的安全性和性能: 1.使用强密码:为所有数据库用户设置强密码,并定期更改密码
2.限制访问:仅允许必要的IP地址访问MySQL服务器,并使用防火墙规则进行限制
3.定期审计:定期审查数据库用户和权限,移除不必要的用户和权限
4.使用SSL