云服务器运维实战系列 · 第 3 篇(共 7 篇)
宝塔面板在 Ubuntu 上装不上 MySQL:日志显示"执行成功",软件却没装上
在宝塔面板里点"安装 MySQL 8.0",任务跑了一会儿,最后提示执行成功。可回到软件列表,MySQL 还是未安装,网站连不上数据库。
更怪的是,日志里反复刷 cat: /etc/redhat-release: No such file or directory,然后照样来一句"命令已执行"。这篇讲清楚这是怎么回事,以及在 ARM + Ubuntu 上怎么把 MySQL 真正装上。
先看现象
安装日志的关键片段:
正在选择下载节点... --2026-10-02 ... https://cf1-node.aapanel.com/install/0/mysql.sh ... cat: /etc/redhat-release: No such file or directory cat: /etc/redhat-release: No such file or directory |-Successify --- 命令已执行! ---
脚本最后报"成功",但:
软件商店 / 已安装列表里没有 MySQL;
mysql命令不存在或服务起不来;网站报数据库连接失败。
任务列表里这条记录往往标着"安装失败",耗时只有几秒到十几秒。

第一步:确认系统和架构
那句 cat: /etc/redhat-release 是线索。宝塔安装脚本里有一段要判断系统版本,它习惯去读红帽系(CentOS/RHEL)的 /etc/redhat-release。在 Debian/Ubuntu 上这个文件不存在,于是报错——脚本对 Debian/Ubuntu 的适配做得不完整。
先确认自己的系统:
cat /etc/os-release # 例如:Ubuntu 22.04.3 LTS uname -m # aarch64 表示 ARM;x86_64 表示常见的 Intel/AMD
我这台是 Ubuntu 22.04、aarch64(甲骨文免费 Ampere)。
第二步:看真正的安装日志
面板消息盒子里那句"命令已执行"只是脚本跑完了,不代表装成功。要点"详情"看完整输出,或者看面板的安装日志文件,重点找:
有没有
ERROR、make: *** Error、No package、404 Not Found;是"下载二进制包"还是"开始源码编译"。
宝塔对主流 x86 系统,通常直接下载预编译好的包,解压即用,几分钟搞定。而在 ARM 上,情况不一样。
根因:架构 + 脚本两个问题叠在一起
1. 没有匹配架构的预编译包。 宝塔的预编译包主要面向 x86_64。到了 aarch64,下载节点找不到对应包,脚本往往回退成"源码编译"——日志里会刷大量 Building CXX object ...、[xx%]。

2. 源码编译 MySQL 极慢且容易失败。 MySQL 是几百万行级别的 C++ 工程,免费 ARM 实例上编译要很久,内存、依赖(cmake、gcc、各种 dev 库)稍有不足就中断。我这边编译卡在 20% 多反复失败,面板最终判定安装失败。
3. 脚本对 Ubuntu 适配不完整。 反复读 /etc/redhat-release 就是表现之一。它按红帽系的路径和判断逻辑走,在 Ubuntu 上会留下各种无效报错。
所以这不是"系统不干净",而是架构和脚本适配问题。换个角度:面板里点安装,本质也是执行它下载的 shell 脚本,脚本没处理好 ARM + Ubuntu,再点几次结果一样。
怎么真正装上
在 ARM + Ubuntu 上,最省心的是直接用 Ubuntu 官方源装 MySQL,不依赖宝塔的预编译包:
sudo apt update sudo apt install -y mysql-server
Ubuntu 22.04 官方源里的 MySQL 是匹配 aarch64 的,apt 会自动装好服务并设置开机自启。装完验证:

systemctl status mysql --no-pager sudo mysql -e "SELECT VERSION();"
需要注意:
Ubuntu 源里的 MySQL 默认用
auth_socket插件,root 在本机可以直接sudo mysql免密登录,设置密码和远程访问要另外处理(数据迁移那篇会讲);版本可能不是宝塔默认的 8.0 某个小版本,但同属 8.0,数据格式兼容;
装完宝塔面板一般能识别到系统里的 MySQL;若软件商店仍显示未安装,可在面板"数据库"里手动连接,或重启面板。
如果一定要用宝塔管理的那份,也可以在面板里选"编译安装"并耐心等它编完(可能数十分钟到数小时),期间别中断;但既然官方源有现成的 ARM 包,没必要硬等编译。
顺带说一句 PHP
同一台机器上,PHP 8.2 用面板编译也失败过,报错指向依赖库架构不对(file in wrong format);而 PHP 7.4 能装上。这同样是 ARM 适配问题,我单独写了一篇。遇到"某个版本死活装不上",先换个版本或换 apt 源,通常比反复点安装更有效。
排查顺序小结
cat /etc/os-release、uname -m,确认是 Ubuntu + ARM;看完整安装日志,确认是"找不到预编译包 → 回退源码编译 → 编译失败";
不死磕面板,改用
sudo apt install mysql-server装官方 ARM 包;装好后再处理 root 密码、数据导入和面板识别。