1. 系统基础配置从主机名到网络设置刚拿到一台全新的CentOS 7.9服务器时就像搬进毛坯房需要先通水电。我遇到过不少新手直接跳进MySQL安装结果后面连不上数据库才发现基础配置没做好。咱们先花10分钟把系统地基打牢。查看当前网络配置是第一步这相当于查水电表。执行ip addr会显示所有网卡信息重点找包含inet的那行比如看到192.168.1.100/24就表示IP是192.168.1.100。如果显示127.0.0.1说明还没配好网络得先联系机房或云服务商处理。设置主机名不是面子工程很多服务注册和日志记录都依赖这个标识。推荐用这个组合拳hostnamectl set-hostname db-server # 永久修改 exec bash # 立即生效新主机名有次我给客户调试发现他用的默认主机名localhost.localdomain结果监控系统里几十台服务器全显示同名排查问题简直噩梦。绑定静态DNS解析相当于给手机通讯录存号码。编辑/etc/hosts时有个细节容易踩坑IPv6的::1也要加上对应记录否则有些服务会报错。完整配置示例192.168.1.100 db-server ::1 db-server localhost localhost.localdomain提示生产环境建议把应用服务器IP和主机名也加进来比如192.168.1.101 app-server这样后面MySQL配置白名单时会方便很多2. YUM源优化速度与稳定的平衡术原版CentOS源在国内慢得像老牛拉车有次我安装MySQL时进度条卡住三小时最后发现是下载速度只有10KB/s。换成阿里云镜像源后速度直接起飞。备份原有源这个步骤千万别省我有次手滑把整个repo目录删了最后只能重装系统。安全操作应该是mkdir /etc/yum.repos.d/backup mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/配置阿里云源时要注意CentOS版本号必须完全匹配。7.9对应的repo文件应该是CentOS-7.repo如果误用成8.x的源会导致后续依赖地狱。一键配置命令wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo清理缓存时有个隐藏技巧先yum clean all再yum makecache能解决99%的依赖报错。曾经有台服务器一直报404错误清理重建缓存后立即正常。3. MySQL 5.7精准安装避坑指南直接yum install mysql会装成MariaDB这个坑我踩过三次。MySQL官方源的配置文件中要特别注意gpgcheck0这个参数如果设为1就需要额外导入GPG密钥。关键配置段应该长这样[mysql57-community] nameMySQL 5.7 Community Server baseurlhttp://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/ enabled1 gpgcheck0安装时推荐用这个组合命令自动处理依赖关系yum install mysql-community-server mysql-community-client mysql-community-libs第一次启动MySQL服务后别急着登录。先检查日志获取临时密码grep temporary password /var/log/mysqld.log这个密码复杂得像乱码建议直接复制粘贴。有次我手动输入错了三次结果账户被锁定不得不重装MySQL。4. 安全加固防火墙与SELinux的博弈防火墙配置是新手最容易翻车的地方。我建议测试环境可以先暂时关闭但生产环境一定要精细控制firewall-cmd --permanent --add-port3306/tcp firewall-cmd --reloadSELinux就像严格的门卫有时候太过尽责。临时关闭可以这样操作setenforce 0但注意这只会当前生效重启后恢复。永久关闭需要修改/etc/selinux/config文件把SELINUXenforcing改为disabled。密码策略调整是刚需MySQL 5.7默认要求12位含大小写数字特殊字符。如果只是内网测试可以适当降低要求SET GLOBAL validate_password_policyLOW; ALTER USER rootlocalhost IDENTIFIED BY new_password;最后别忘了给root账户设置远程访问权限谨慎使用GRANT ALL PRIVILEGES ON *.* TO root% IDENTIFIED BY complex-password; FLUSH PRIVILEGES;实测这套流程在2C4G的云服务器上从零开始到MySQL可用大概需要20分钟。关键是要按顺序操作遇到报错时先检查上一步是否执行到位。有次客户反馈MySQL启动失败排查发现是YUM源没配好导致依赖包没装全。