centos7安装mysql57- 2026整理 mysql5.7.44

MySQL 5.7 完整安装与配置文档 (CentOS 7)

一、安装方式概览

MySQL 5.7 在 CentOS 7 上有三种主流安装方式:

安装方式 优点 缺点 适用场景
YUM 安装 自动处理依赖,命令简单 需要网络 联网环境,快速部署
RPM 包安装 离线安装,版本可控 需手动处理依赖顺序 内网环境,批量部署
二进制包安装 完全离线,路径自定义 需手动配置服务 高度定制,多版本共存

二、方式一:YUM 安装(推荐联网环境)

2.1 卸载系统自带 MariaDB

bash 复制代码
# 检查是否存在 MariaDB
rpm -qa | grep mariadb

# 卸载(替换为实际包名)
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

2.2 添加 MySQL YUM 仓库

bash 复制代码
# 下载并安装官方仓库
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
rpm -ivh mysql57-community-release-el7-11.noarch.rpm

2.3 安装 MySQL 5.7

bash 复制代码
yum install -y mysql-community-server

# 如遇 GPG 密钥问题,可临时跳过验证
yum install -y mysql-community-server --nogpgcheck

2.4 启动与初始配置

bash 复制代码
# 启动并设置开机自启
systemctl start mysqld
systemctl enable mysqld

# 获取临时密码
grep 'temporary password' /var/log/mysqld.log

三、方式二:RPM 包离线安装

3.1 下载 RPM Bundle 包

3.2 解压并按顺序安装

bash 复制代码
# 解压
tar -xvf mysql-5.7.44-1.el7.x86_64.rpm-bundle.tar

# 必须按以下顺序安装
rpm -ivh mysql-community-common-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.44-1.el7.x86_64.rpm

3.3 启动与初始配置

同 YUM 方式的 [2.4 节](#2.4 节)。


四、方式三:通用二进制包安装

4.1 下载与解压

bash 复制代码
# 下载二进制包
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz

# 解压到 /usr/local
tar -zxvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
cd /usr/local/
mv mysql-5.7.44-linux-glibc2.12-x86_64 mysql

4.2 创建用户与目录

bash 复制代码
# 创建 mysql 用户
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

# 创建数据目录并授权
mkdir -p /data/mysql
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /data/mysql

4.3 初始化数据库

bash 复制代码
cd /usr/local/mysql
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

# 记住输出的临时密码

4.4 配置服务与启动

bash 复制代码
# 复制启动脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

# 启动服务
service mysqld start

五、通用后续配置(所有方式均适用)

5.1 首次登录并修改密码

bash 复制代码
# 使用临时密码登录
mysql -uroot -p

# 在 MySQL 命令行中执行
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;

5.2 密码复杂度策略配置

MySQL 5.7 通过 validate_password 插件控制密码策略。

5.2.1 查看当前策略
sql 复制代码
-- 检查插件是否已启用
SHOW VARIABLES LIKE 'validate_password%';
5.2.2 临时降低策略(设置弱口令)
sql 复制代码
-- 设置策略为 LOW(仅校验长度)
SET GLOBAL validate_password_policy=0;
SET GLOBAL validate_password_length=1;

-- 策略说明:
-- 0 / LOW    : 仅校验长度 ≥8 位
-- 1 / MEDIUM : 需包含数字、大小写字母、特殊字符(默认)
-- 2 / STRONG : 额外校验字典文件
5.2.3 修改为简单密码
sql 复制代码
-- 降低策略后,可设置简单密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
5.2.4 永久生效配置

编辑 /etc/my.cnf,在 [mysqld] 下添加:

ini 复制代码
[mysqld]
validate_password_policy=0
validate_password_length=1

重启服务生效:

bash 复制代码
systemctl restart mysqld

5.3 开启远程访问

sql 复制代码
-- 授权 root 用户远程连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;

5.4 防火墙放行端口

bash 复制代码
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

# 或直接关闭防火墙(测试环境)
systemctl stop firewalld
systemctl disable firewalld

5.5 设置 UTF-8 字符集

编辑 /etc/my.cnf,在 [mysqld] 下添加:

ini 复制代码
[mysqld]
character-set-server=utf8

重启服务:

bash 复制代码
systemctl restart mysqld

5.6 创建项目专用数据库

sql 复制代码
-- 登录后执行
CREATE DATABASE springboot_vue_test DEFAULT CHARACTER SET utf8;

六、常用管理命令速查

操作 命令
启动服务 systemctl start mysqld
停止服务 systemctl stop mysqld
重启服务 systemctl restart mysqld
查看状态 systemctl status mysqld
设置开机自启 systemctl enable mysqld
登录数据库 mysql -uroot -p
查看版本 SELECT VERSION();
查看临时密码 grep 'temporary password' /var/log/mysqld.log

七、常见问题排查

问题 解决方法
端口 3306 被占用 lsof -i:3306 查看占用进程并终止
启动失败,日志报权限错误 chown -R mysql:mysql /var/lib/mysql
密码策略太严格 按 [5.2 节](#问题 解决方法 端口 3306 被占用 lsof -i:3306 查看占用进程并终止 启动失败,日志报权限错误 chown -R mysql:mysql /var/lib/mysql 密码策略太严格 按 5.2 节 降低策略 远程连接被拒 检查防火墙和 5.3 节 授权 依赖 libaio 缺失 yum install -y libaio) 降低策略
远程连接被拒 检查防火墙和 [5.3 节](#问题 解决方法 端口 3306 被占用 lsof -i:3306 查看占用进程并终止 启动失败,日志报权限错误 chown -R mysql:mysql /var/lib/mysql 密码策略太严格 按 5.2 节 降低策略 远程连接被拒 检查防火墙和 5.3 节 授权 依赖 libaio 缺失 yum install -y libaio) 授权
依赖 libaio 缺失 yum install -y libaio

八、版本选择建议

版本 说明
5.7.44 最终版,安全补丁最全,推荐生产使用
5.7.33 中间版本,存在已知漏洞,不推荐

建议直接安装 5.7.44 以获得最佳安全性和稳定性。

相关推荐
Bohemian—Rhapsody2 小时前
银河麒麟(ky10.aarch64)操作系统安装部署mysql5.7.26
mysql·arm
tian_jiangnan2 小时前
flink mysql集群增删改查
大数据·mysql·flink
dualven_in_csdn2 小时前
EMQX 开启 **MySQL + password_based** 认证
android·数据库·mysql
xuhaoyu_cpp_java3 小时前
MySql学习(一)
经验分享·学习·mysql
熬夜的咕噜猫3 小时前
LVS+Keepalived高可用群集
大数据·网络·数据库·mysql·mysql高可用
天赐学c语言3 小时前
MySQL - 数据库基础
linux·数据库·mysql
文慧的科技江湖3 小时前
光储充一体化系统落地 PRD 全功能清单 - 慧知开源充电桩平台
java·mysql·开源·springboot·慧知开源充电桩平台·充电重复订单解决方案源码
一只大袋鼠4 小时前
MySQL 入门到单表操作超全总结(数据库 + SQL + 表操作 + 数据 CRUD)
数据库·mysql
黑牛儿4 小时前
2026 MySQL 面试 100 题: 索引 / 事务 / 锁(答案 + 原理)
android·mysql·面试