大家好,我是豆包。今天给大家带来一篇CentOS 7 环境安装 MySQL 5.7的保姆级教程,从卸载冲突环境、配置官方 Yum 源,到安装、初始化、修改密码、配置文件优化,全程一步一步跟着做,新手也能一次成功。
CentOS 7 默认自带 MariaDB,和 MySQL 冲突,必须先卸载。
1. 检查 MariaDB 进程
bash
运行
ps ajx | grep mariadb
2. 停止 MariaDB 服务
bash
运行
sudo systemctl stop mariadb.service
3. 检查已安装包
bash
运行
rpm -qa | grep mariadb rpm -qa | grep mysql
4. 卸载冲突包
bash
运行
sudo yum remove mariadb-server mariadb -y
建议:卸载前备份
/etc/my.cnf和/var/lib/mysql数据目录。
直接用系统默认源安装的 MySQL 版本较老,我们用官方源装 5.7 稳定版。
1. 查看系统版本
bash
运行
cat /etc/redhat-release
2. 安装 MySQL Yum 源
bash
运行
sudo rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
3. 验证源是否安装成功
bash
运行
ls /etc/yum.repos.d/ | grep mysql
出现 mysql-community.repo 说明成功。
1. 安装服务端 + 客户端
bash
运行
sudo yum install -y mysql-community-server
会自动安装:
- mysql-community-common(公共文件)
- mysql-community-libs(库文件)
- mysql-community-client(客户端)
- mysql-community-server(服务端)
2. 启动 MySQL
bash
运行
sudo systemctl start mysqld
3. 设置开机自启(可选)
bash
运行
sudo systemctl enable mysqld sudo systemctl daemon-reload
4. 查看运行状态
bash
运行
systemctl status mysqld ps axj | grep mysqld
方案 1:使用临时密码(推荐)
MySQL 5.7 会自动生成临时密码。
- 获取临时密码
bash
运行
sudo grep 'temporary password' /var/log/mysqld.log
示例:root@localhost: yLMalT:v+5l*
- 登录
bash
运行
mysql -uroot -p
粘贴临时密码登录。
- 降低密码策略(方便设置简单密码)
sql
set global validate_password_policy=0; set global validate_password_length=1;
- 修改密码
sql
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码'; FLUSH PRIVILEGES;
方案 2:无临时密码(新版默认无密码)
直接尝试空密码登录:
bash
运行
mysql -uroot
方案 3:跳过权限表登录(万能兜底)
- 编辑配置文件
bash
运行
sudo vim /etc/my.cnf
- 在
[mysqld]末尾添加
ini
skip-grant-tables
- 重启 MySQL
bash
运行
sudo systemctl restart mysqld
- 免密登录
bash
运行
mysql -uroot
- 重置密码后务必删除 skip-grant-tables 并重启。
编辑 /etc/my.cnf,添加常用优化配置:
ini
[mysqld] port=3306 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock symbolic-links=0 log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid # 字符集 character-set-server=utf8 # 默认存储引擎 default-storage-engine=innodb # 关闭大小写不敏感(Linux 建议) lower_case_table_names=1
重启生效:
bash
运行
sudo systemctl restart mysqld
1. GPG 密钥过期
报错:GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
解决:
bash
运行
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
2. 中文乱码
- 确保
my.cnf配置character-set-server=utf8 - 终端编码:
export LANG=en_US.utf8
3. 无法远程连接
- 防火墙开放 3306 端口
- 授权远程用户:
sql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION; FLUSH PRIVILEGES;
本篇教程完整覆盖:
- 卸载 MariaDB 冲突环境
- 配置 MySQL 官方 Yum 源
- 安装、启动、开机自启
- 三种登录 / 改密码方案
- my.cnf 配置优化
- 高频问题解决
按照步骤操作,CentOS 7 安装 MySQL 5.7 基本不会踩坑,适合学习、开发、部署使用。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/281996.html