CentOS Stream 9 虚拟机网络 + MySQL 环境排错笔记
2026/4/6 14:42:50 网站建设 项目流程
一、问题总览本次排错覆盖两类核心问题VMware NAT 模式下网络不通、DNS 解析失败MySQL 客户端依赖缺失、服务启动失败适用于 CentOS Stream 9 VMware Workstation 环境可直接按步骤复现解决。二、网络问题排错ping 不通、DNS 解析失败 常见报错ping baidu.com提示Name or service not knownping 网关提示Destination Host Unreachablednf install提示Couldnt resolve host name 完整解决步骤1. 基础连通性排查先定位问题bash运行# 1. 查看网卡信息确认网卡名、IP ip a # 2. 查看路由表确认网关 ip route # 3. 测试网关连通性NAT 模式网关一般为 192.168.xxx.2 ping 192.168.150.2 -c 4 # 4. 测试外网 IP 连通性排除 DNS 问题 ping 223.5.5.5 -c 4若网关不通网段不匹配需重置 VMware NAT 网络若 IP 通、域名不通DNS 配置问题2. 重置 VMware NAT 网络解决网段不匹配关闭虚拟机poweroff打开 VMware → 编辑 → 虚拟网络编辑器 → 更改设置管理员权限选中VMnet8 (NAT 模式)→ 点击「还原默认设置」记录重置后的子网 IP和网关 IP默认网关为192.168.xxx.2保存设置重启虚拟机3. 虚拟机内重置网卡 配置固定 IP永久生效bash运行# 1. 删除旧配置恢复自动获取 nmcli connection delete ens160 nmcli connection add type ethernet con-name ens160 ifname ens160 ipv4.method auto # 2. 重启网卡获取正确 IP nmcli connection up ens160 dhclient ens160 # 3. 可选配置固定 IP需与 VMnet8 网段一致示例192.168.150.101/24网关192.168.150.2 nmcli connection modify ens160 \ ipv4.method manual \ ipv4.addresses 192.168.150.101/24 \ ipv4.gateway 192.168.150.2 \ ipv4.dns 8.8.8.8,8.8.4.4 \ ipv4.ignore-auto-dns yes # 4. 重启网卡生效 nmcli connection up ens1604. 永久配置 DNS防止被 NetworkManager 覆盖bash运行# 方案1通过网卡配置推荐永久生效 nmcli connection modify ens160 ipv4.dns 8.8.8.8,8.8.4.4 ipv4.ignore-auto-dns yes nmcli connection up ens160 # 方案2手动锁定 resolv.conf双重保险 # 先解锁若之前加过锁 chattr -i /etc/resolv.conf # 写入 DNS echo -e nameserver 8.8.8.8\nnameserver 8.8.4.4 /etc/resolv.conf # 锁定文件禁止覆盖 chattr i /etc/resolv.conf5. 验证网络bash运行# 测试网关 ping 192.168.150.2 -c 4 # 测试外网 IP ping 223.5.5.5 -c 4 # 测试域名解析 ping baidu.com -c 4 DNS 说明表格DNS 地址所属厂商特点适用场景223.5.5.5阿里云国内国内访问快、延迟低、稳定国内服务器、日常上网119.29.29.29腾讯云国内国内解析快、防污染国内业务8.8.8.8Google海外全球通用海外访问、跨国业务1.1.1.1Cloudflare隐私性好、全球通用海外访问三、MySQL 问题排错依赖缺失、启动失败 常见报错./mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directorymysql 服务启动失败、权限不足 完整解决步骤1. 安装缺失依赖解决 libtinfo.so.5 报错bash运行# CentOS Stream 9 专用 dnf install ncurses-compat-libs -y # 兜底方案若安装失败软链接高版本库 # 查找系统自带的 libtinfo.so.6 find /usr/lib64 -name libtinfo.so* # 做软链接以实际路径为准 ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5 ldconfig2. 权限配置解决启动失败核心问题bash运行# 进入 MySQL 安装目录默认路径 cd /usr/local/mysql # 递归修改属主为 mysql 用户 chown -R mysql:mysql /usr/local/mysql # 递归修改权限 chmod -R 755 /usr/local/mysql3. 启动 MySQL 服务两种方式二选一方式 1安全启动推荐适合初次启动bash运行# 后台启动 MySQL mysqld_safe --usermysql # 等待3秒测试登录 cd /usr/local/mysql/bin ./mysql -u root -p方式 2系统服务方式适合生产环境开机自启bash运行# 复制服务文件 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld # 赋予执行权限 chmod x /etc/init.d/mysqld # 添加开机自启 systemctl enable mysqld # 启动服务 systemctl start mysqld # 测试登录 /usr/local/mysql/bin/mysql -u root -p4. 优化配置提升使用体验bash运行# 1. 将 MySQL 加入系统环境变量任意目录直接用 mysql 命令 echo export PATH$PATH:/usr/local/mysql/bin /etc/profile source /etc/profile # 2. 可选配置 MySQL 远程访问允许 root 从任意IP连接 # 登录 MySQL 后执行 USE mysql; UPDATE user SET Host% WHERE Userroot; FLUSH PRIVILEGES; EXIT;四、常见问题速查表格问题原因解决命令dhclient: 未找到命令未安装 DHCP 客户端dnf install dhclient -yFailed to set locale, defaulting to C.UTF-8系统语言环境缺失localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8 echo LANGzh_CN.UTF-8 /etc/locale.conf source /etc/locale.confresolv.conf重启后被覆盖NetworkManager 自动覆盖nmcli connection modify ens160 ipv4.ignore-auto-dns yeschattr i /etc/resolv.confMySQL 启动后无法登录初始化密码未重置mysqld --initialize --usermysql查看临时密码登录后修改五、验证标准全部通过即环境正常网络ping baidu.com正常解析、0% 丢包包管理dnf install dhclient -y正常执行、无报错MySQL./mysql -u root -p正常登录、无依赖报错服务systemctl status mysqld显示active (running)六、补充说明所有命令均以root 用户执行若为普通用户需加sudo若为 Ubuntu/Debian 系统将dnf替换为aptncurses-compat-libs替换为libtinfo5VMware NAT 模式下固定 IP 必须与 VMnet8 网段完全一致否则网关不通

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询