news 2026/4/16 22:08:38

CentOS 7.9 系统初始化与 MySQL 5.7 一站式部署指南:从主机名配置到防火墙策略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CentOS 7.9 系统初始化与 MySQL 5.7 一站式部署指南:从主机名配置到防火墙策略

1. CentOS 7.9系统初始化实战

刚拿到一台全新的CentOS 7.9服务器时,就像搬进毛坯房需要先通水电一样,系统初始化就是给服务器"通水电"的过程。我见过不少新手直接跳过了这个步骤,结果后面安装软件时各种报错,连不上网都找不到原因。下面这几个关键操作,建议每个运维新手都老老实实走一遍。

1.1 网络配置:让服务器能上网

首先得确认服务器能正常联网。执行ip address show会显示所有网卡信息,重点看有IP地址的那块网卡(通常是eth0或ens33)。如果发现没有IP,需要编辑网卡配置文件:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

把ONBOOT=no改为ONBOOT=yes,就像给网卡插上网线。保存后重启网络服务:

systemctl restart network

测试下能否ping通百度:ping www.baidu.com。如果发现能ping通IP但ping不通域名,八成是DNS没配好,在/etc/resolv.conf里加上nameserver 8.8.8.8

1.2 主机名设置:给服务器起个好记的名字

默认的主机名都是localhost.localdomain,在多台服务器环境下很容易搞混。用这个命令永久修改主机名:

hostnamectl set-hostname mysql-server

我习惯用-server后缀表示这是服务器,比如web-server、db-server等。修改后需要重新登录才能生效,可以用hostname命令验证。

1.3 主机名解析:让服务器之间能互相认识

光改主机名还不够,还得在/etc/hosts文件里加上解析记录:

192.168.1.100 mysql-server 192.168.1.101 web-server

这就好比给手机通讯录存号码,有了这个记录,服务器之间就能通过主机名互相访问了。特别是在搭建集群时,这一步绝对不能省。

2. 软件源配置:安装软件的"应用商店"

CentOS默认的软件源在国外,下载速度慢得像蜗牛。换成国内镜像源后,安装速度能提升10倍不止。阿里云的源是我用过最稳定的,配置方法也简单:

2.1 备份原有源配置

先给原来的源配置文件做个备份,万一出问题还能回滚:

mkdir /etc/yum.repos.d/backup mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/

2.2 配置阿里云镜像源

直接下载阿里云提供的repo文件:

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

EPEL源相当于软件的"扩展商店",很多常用工具都在这里面。完成后更新缓存:

yum clean all yum makecache

可以用yum repolist查看源是否配置成功。如果看到阿里云的URL,说明配置正确。

3. MySQL 5.7安装:企业级数据库部署

MySQL 5.7是目前企业中使用最广泛的稳定版本,比5.6性能更好,又比8.0兼容性更强。通过yum安装可以自动解决依赖问题,特别适合新手。

3.1 添加MySQL官方源

先下载MySQL的官方yum源配置:

wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm rpm -ivh mysql57-community-release-el7-11.noarch.rpm

这个rpm包会自动在/etc/yum.repos.d/下生成mysql-community.repo文件。打开这个文件,确保5.7版本的enabled=1,其他版本都设为0:

[mysql57-community] name=MySQL 5.7 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/ enabled=1 gpgcheck=0

3.2 安装MySQL服务

执行安装命令前,建议先卸载系统自带的mariadb:

yum remove mariadb-libs -y

然后安装MySQL服务器和客户端:

yum install mysql-community-server -y

安装完成后启动服务并设置开机自启:

systemctl start mysqld systemctl enable mysqld

检查服务状态应该是active (running):

systemctl status mysqld

3.3 安全配置与初始化

MySQL第一次启动时会生成临时root密码,查看方法:

grep 'temporary password' /var/log/mysqld.log

用这个密码登录后,必须立即修改密码:

mysql_secure_installation

这个脚本会引导你完成一系列安全设置:

  1. 修改root密码(要求包含大小写字母、数字和特殊字符)
  2. 移除匿名用户
  3. 禁止root远程登录
  4. 删除测试数据库
  5. 重载权限表

建议全部选择Y,这是生产环境的基本安全要求。

4. 防火墙策略:安全与便利的平衡

防火墙是把双刃剑,配置太严会影响正常使用,太松又会带来安全隐患。根据实际需求选择合适策略很重要。

4.1 临时关闭防火墙(测试环境)

如果是本地测试环境,可以完全关闭防火墙:

systemctl stop firewalld systemctl disable firewalld

但生产环境绝对不要这样做!我见过有人关了防火墙后服务器被挖矿的案例。

4.2 配置防火墙规则(生产环境)

生产环境应该只开放必要的端口。对于MySQL来说,默认需要开放3306端口:

firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload

如果想限制只允许特定IP访问,可以用更安全的方案:

firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="3306" accept'

4.3 SELinux策略调整

SELinux是更深层次的安全机制,如果发现MySQL无法正常启动或访问,可以临时设置为宽松模式:

setenforce 0

要永久关闭需要修改/etc/selinux/config文件,把SELINUX=enforcing改为SELINUX=disabled。不过建议先尝试用semanage命令调整策略,而不是直接关闭SELinux。

5. MySQL基础配置与优化

安装完成后,还需要进行一些基础配置才能发挥最佳性能。配置文件通常位于/etc/my.cnf。

5.1 字符集设置

为避免中文乱码问题,建议统一使用utf8mb4字符集:

[mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci

5.2 内存参数调优

根据服务器内存大小调整关键参数,以下配置适合2GB内存的服务器:

innodb_buffer_pool_size=1G key_buffer_size=256M query_cache_size=128M

5.3 连接数配置

默认的连接数可能不够用,可以适当增加:

max_connections=200 wait_timeout=300

修改配置后记得重启MySQL服务:

systemctl restart mysqld

6. 远程访问与用户管理

默认情况下MySQL只允许本地连接,要允许远程访问需要额外配置。

6.1 创建专用数据库用户

不建议直接用root用户远程连接,应该创建专用用户:

CREATE USER 'webuser'@'192.168.1.%' IDENTIFIED BY 'StrongPassword123!'; GRANT ALL PRIVILEGES ON webdb.* TO 'webuser'@'192.168.1.%'; FLUSH PRIVILEGES;

这里限制只允许192.168.1网段的IP访问webdb数据库,安全性更高。

6.2 测试远程连接

在其他机器上用mysql客户端测试连接:

mysql -h192.168.1.100 -uwebuser -p

如果连接失败,检查以下几点:

  1. 防火墙是否开放了3306端口
  2. MySQL用户是否有远程访问权限
  3. 是否绑定了正确的主机名/IP

7. 常见问题排查指南

即使按照步骤操作,也可能会遇到各种问题。这里分享几个我踩过的坑。

7.1 安装失败:依赖冲突

如果安装时报依赖错误,可能是之前安装过其他版本的MySQL。先彻底清理旧版本:

yum remove mysql mysql-server rm -rf /var/lib/mysql rm -rf /etc/my.cnf

7.2 启动失败:权限问题

MySQL启动时报错"Could not create file"通常是/var/lib/mysql目录权限不对:

chown -R mysql:mysql /var/lib/mysql chmod -R 755 /var/lib/mysql

7.3 连接缓慢:DNS反查

如果连接MySQL特别慢,可能是DNS反查导致的。在my.cnf中添加:

[mysqld] skip-name-resolve

8. 备份与恢复策略

数据库最重要的就是数据安全,定期备份是必须的。

8.1 使用mysqldump备份

最简单的全量备份方法:

mysqldump -uroot -p --all-databases > full_backup.sql

8.2 定时自动备份

用crontab设置每天凌晨3点自动备份:

0 3 * * * /usr/bin/mysqldump -uroot -p'password' --all-databases > /backup/mysql_$(date +\%Y\%m\%d).sql

8.3 数据恢复测试

备份的价值在于能恢复,建议定期测试备份文件是否有效:

mysql -uroot -p < full_backup.sql

9. 性能监控与优化建议

数据库运行一段时间后,需要关注性能指标。

9.1 查看运行状态

SHOW STATUS LIKE 'Threads_connected'; SHOW STATUS LIKE 'Innodb_buffer_pool_read%';

9.2 慢查询日志

开启慢查询日志可以帮助发现性能瓶颈:

slow_query_log=1 slow_query_log_file=/var/log/mysql-slow.log long_query_time=2

9.3 定期维护

建议每周执行一次表优化:

OPTIMIZE TABLE important_table;

10. 升级与迁移注意事项

当需要升级MySQL版本时,要注意以下几点:

10.1 版本兼容性检查

先查看官方文档,确认5.7到目标版本的升级路径。有些大版本需要逐步升级。

10.2 测试环境验证

一定要先在测试环境验证升级过程,我见过直接在生产环境升级导致数据损坏的惨案。

10.3 回滚方案准备

准备完善的回滚方案,包括:

  1. 完整的数据备份
  2. 旧版本的安装包
  3. 回滚操作步骤文档
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 22:08:37

《QGIS快速入门与应用基础》282:导出为PNG(300DPI)与PDF

作者:翰墨之道,毕业于国际知名大学空间信息与计算机专业,获硕士学位,现任国内时空智能领域资深专家、CSDN知名技术博主。多年来深耕地理信息与时空智能核心技术研发,精通 QGIS、GrassGIS、OSG、OsgEarth、UE、Cesium、OpenLayers、Leaflet、MapBox 等主流工具与框架,兼具…

作者头像 李华
网站建设 2026/4/16 22:03:59

读原问者《知行合一:王阳明心学智慧讲习》,悟落地心学之道

在信息纷繁、人心浮躁的当下&#xff0c;王阳明心学已成为许多人寻求内心安定与人生方向的精神依托。“致良知”“知行合一” 广为流传&#xff0c;可真正将心学融入日用、化为行动的人却寥寥无几。多数人或停留在书本空谈&#xff0c;或仅将其作为装点门面的谈资&#xff0c;让…

作者头像 李华
网站建设 2026/4/16 21:59:04

Avalonia跨平台入门第八十七篇之热点配网与设备发现

前面简单玩了一下Avalonia跨平台入门第二十九篇之再玩GIS、离线地图、离线深色地图、GIS加载GeoJson和Shp、加载热力图、GIS聚合效果、WMS图层点击查询与自定义弹窗、路径轨迹回放、GIS建筑伪3D效果、GIS路径规划、GIS基础图形绘制、GIS鹰眼图、集合拖放到TreeView、TreeView节…

作者头像 李华
网站建设 2026/4/16 21:59:02

Labview机器视觉三件套(VDM+VAS)保姆级安装避坑指南,一次搞定不报错

LabVIEW机器视觉三件套&#xff08;VDMVAS&#xff09;零基础安装实战指南 第一次接触LabVIEW机器视觉套件时&#xff0c;我被各种版本兼容性问题折磨得焦头烂额——明明按照官方文档操作&#xff0c;却总是弹出各种莫名其妙的错误窗口。后来才发现&#xff0c;这套工业级视觉开…

作者头像 李华