用心记录
生活的每时每刻!

Debian 系统宝塔面板 编译安装mysql失败的处理办法

可以先修复 locale,但先说清楚利弊

✅ 优点:消除 setlocale 警告,避免再次发生「脚本把警告文本写入头文件」的编译报错。 ❌ 缺点:Debian12 + GCC12 原生编译 MySQL5.7 本身还有其他兼容坑,就算 locale 修好,依然有概率继续编译失败。

一句话:修复 locale 是把这个报错的导火索灭掉,但不能保证编译一定成功。 如果你想试编译,那就先修 locale;稳妥路线还是直接极速安装。

完整修复 locale 命令(Debian12)

apt update
apt install locales -y
locale-gen en_US.UTF-8
# 设置系统默认语言
echo "LANG=en_US.UTF-8" > /etc/default/locale
echo "LC_ALL=en_US.UTF-8" >> /etc/default/locale
# 生效
source /etc/default/locale

执行完成后:

  1. 断开 SSH 连接,重新登录服务器(必须重登,否则环境变量不刷新)
  2. 登录后,看终端开头,不再输出 bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8),代表修复成功
  3. 清理上次失败的源码残留(非常关键)
rm -rf /www/server/mysql/src
  1. 回到宝塔面板,再次发起 MySQL5.7【编译安装】

验证 locale 是否修复(重登 SSH 后执行)

locale

输出里面所有字段都为 en_US.UTF-8,没有报错就是成功。

两种结果预判

  1. ✅ 运气好:编译顺利跑完,MySQL 安装成功
  2. ❌ 大概率:locale 警告消失,但遇到GCC 版本过高新的 C++ 编译报错(MySQL5.7 不支持 gcc11+),依然安装失败

Debian12 默认 gcc 12,MySQL5.7 源码发布时最高只支持 gcc 7,这是底层兼容问题,locale 解决不了。

给你的选择建议

  • 想折腾、测试源码编译:按上面步骤修复 locale,清理源码,尝试编译
  • 要快速、稳定、业务优先:直接放弃编译,选择极速安装 MySQL5.7,几分钟装好,不会踩 gcc 兼容坑
赞(0) 打赏
未经允许不得转载:爱的记忆 » Debian 系统宝塔面板 编译安装mysql失败的处理办法

评论 抢沙发

登录

找回密码

注册