MySQL 作为一款开源的关系型数据库管理系统(RDBMS),凭借其高性能、稳定性和广泛的应用支持,成为众多企业和开发者的首选
特别是在 Linux 系统上,MySQL 的安装和配置尤为便捷
本文将详细介绍如何在 CentOS7 上通过 Yum 包管理器安装 MySQL,旨在为您提供一个全面、详尽且具备说服力的操作指南
一、准备工作 在进行安装之前,确保您的 CentOS7 系统已经更新到最新版本,以避免因系统不兼容导致的问题
同时,由于 MySQL 社区版在 CentOS官方仓库中可能不是最新版本,我们通常会添加 MySQL官方的 Yum仓库来获取最新软件包
1.更新系统: bash sudo yum update -y 2.安装 wget 工具(如果尚未安装):wget 是一个用于从网络上自动下载文件的自由工具,我们将用它来下载 MySQL Yum仓库的配置文件
bash sudo yum install wget -y 二、添加 MySQL Yum仓库 MySQL官方提供了适用于各种 Linux 分发的 Yum仓库,这使得安装和更新 MySQL变得异常简单
以下是添加 MySQL Yum仓库的步骤: 1.下载 MySQL Yum 仓库配置文件: bash wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm 2.安装下载的 RPM 包: bash sudo yum localinstall mysql80-community-release-el7-5.noarch.rpm -y 3.验证仓库是否添加成功: 通过列出所有可用的 MySQL仓库来验证是否添加成功
bash yum repolist enabled | grep mysql.-community. 此命令应显示 MySQL 社区版仓库的状态,通常包括`mysql80-community` 等
三、安装 MySQL 服务器 一旦 MySQL Yum仓库配置完成,接下来就可以安装 MySQL 服务器了
1.安装 MySQL 服务器: bash sudo yum install mysql-community-server -y 2.启动 MySQL 服务: 安装完成后,启动 MySQL 服务并设置其开机自启动
bash sudo systemctl start mysqld sudo systemctl enable mysqld 3.检查 MySQL 服务状态: 确保 MySQL 服务已正确启动
bash sudo systemctl status mysqld 四、获取初始密码 MySQL5.7 及更高版本在安装后会自动生成一个临时密码,存储在`/var/log/mysqld.log`文件中
为了进行首次登录,您需要找到这个密码
1.查找临时密码: bash sudo grep temporary password /var/log/mysqld.log 记下显示的临时密码,用于首次登录
五、首次登录与密码修改 使用找到的临时密码,登录到 MySQL
1.首次登录: bash mysql -u root -p 提示输入密码时,输入刚才找到的临时密码
2.修改 root 密码: 出于安全考虑,首次登录后应立即修改 root 密码
MySQL8.0及以上版本推荐使用`ALTER USER` 命令修改密码,并强制执行密码策略(如长度、复杂度等)
sql ALTER USER root@localhost IDENTIFIED BY NewStrongPassword!; 注意:将`NewStrongPassword!`替换为您选择的新密码,确保它符合 MySQL 的密码策略要求
3.刷新权限: sql FLUSH PRIVILEGES; 六、配置 MySQL(可选) 根据您的需求,可能需要对 MySQL 进行一些基本配置,如字符集设置、远程访问权限等
1.字符集配置: 编辑 MySQL配置文件`/etc/my.cnf` 或`/etc/mysql/my.cnf`(具体路径可能因安装而异),添加或修改以下内容以设置默认字符集为 UTF-8
ini 【mysqld】 character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci 【client】 default-character-set=utf8mb4 【mysql】 default-character-set=utf8mb4 2.允许远程访问: 默认情况下,MySQL仅允许本地访问
如果需要远程访问,需修改`root` 用户或创建新用户并授予远程访问权限
- 登录 MySQL: bash mysql -u root -p -授予远程访问权限(以`%` 表示任何主机): sql GRANT ALL PRIVILEGES ON- . TO root@% IDENTIFIED BY YourPassword WITH GRANT OPTION; FLUSH PRIVILEGES; -注意:出于安全考虑,不建议在生产环境中将 `root` 用户设置为允许从任何主机连接
最好创建具有特定权限的新用户
-防火墙配置:确保 CentOS 的防火墙允许 MySQL 的默认端口(3306)的入站连接
bash sudo firewall-cmd --permanent --add-port=3306/tcp sudo firewall-cmd --reload 七、安全与性能优化 1.删除匿名用户: sql DROP USER @localhost; FLUSH PRIVILEGES; 2.删除测试数据库: sql DROP DATABASE test; FLUSH PRIVILEGES; 3.定期备份: 使用`mysqldump` 工具定期备份数据库,以防数据丢失
bash mysqldump -u root -p --all-databases > all_databases_backup.sql 4.监控与优化: 利用 MySQL 自带的性能监控工具(如`SHOW STATUS`,`SHOW VARIABLES`)和第三方工具(如 Percona Monitoring and Management, Zabbix)监控数据库性能,并根据监控结果进行必要的配置调整
八、总结 通过本文,您已经学会了如何在 CentOS7 上使用 Yum 包管理器安装 MySQL,包括添加官方仓库、安装软件、启动服务、获取初始密码、首次登录与密码修改、基本配置以及安全与性能优化
MySQL 的强大功能和灵活性使其成为构建各种应用程序的理想选择
希望这份指南能帮助您顺利安装并配置 MySQL,为您的数据存储和管理提供坚实的基础