🗣 Wd提问: MySQL源码编译依赖
🤖 Ai回答: 在编译 MySQL 源码时,需要满足一系列依赖项。这些依赖项根据你的操作系统和编译目标(如 MySQL 8.0、MySQL 5.7 等)略有不同。以下是编译 MySQL 源码所需的常见依赖项(以 Linux 系统为例,如 CentOS/RHEL/Ubuntu/Debian):
一、通用依赖项(所有版本通用)
1、编译工具链
bash
CentOS/RHEL
sudo yum groupinstall Development Tools
sudo yum install cmake3 或 cmake,MySQL 8.0+ 推荐使用 cmake 3.10+
Ubuntu/Debian
sudo apt update
sudo apt install build-essential cmake3
说明:`build-essential` 包含 `gcc`, `g++`, `make`, `libc-dev` 等基础编译工具。
2、CMake(必须)
MySQL 8.0+ 使用 CMake 构建系统,推荐版本 ≥ 3.10。
bash
Ubuntu/Debian
sudo apt install cmake3
CentOS/RHEL
sudo yum install cmake3
注意:MySQL 5.7 及更早版本支持 CMake 2.8+,但建议使用最新版本。
3、依赖库(根据功能选择)
基础依赖(必须)
bash
Ubuntu/Debian
sudo apt install libncurses5-dev libncursesw5-dev
CentOS/RHEL
sudo yum install ncurses-devel
用于编译 MySQL 的命令行客户端(如 `mysql` 命令)。
可选但推荐的依赖库
| 功能 | 依赖库 | 说明 |
|
| SSL 支持 | `libssl-dev` / `openssl-devel` | 支持 `SSL/TLS` 连接 |
| ZIP 支持 | `zlib1g-dev` / `zlib-devel` | 支持 `ZIP` 压缩 |
| ZIP 支持(MySQL 8.0+) | `libzstd-dev` / `zstd-devel` | 支持 `ZSTD` 压缩 |
| JSON 支持 | `libjson-c-dev` / `json-c-devel` | 支持 JSON 数据类型 |
| PAM 认证 | `libpam-dev` / `pam-devel` | 支持 PAM 认证插件 |
| LDAP 支持 | `libldap2-dev` / `openldap-devel` | 支持 LDAP 认证 |
| ICU 支持 | `libicu-dev` / `icu-devel` | 支持国际化排序 |
| ZIP 支持(MySQL 8.0+) | `libzstd-dev` / `zstd-devel` | 支持 ZSTD 压缩 |
| 汇编优化 | `nasm` | 用于 `AVX` 等指令集优化 |
4、其他可选依赖(根据功能启用)
| 功能 | 依赖库 | 说明 |
|
| FTS(全文搜索) | `libmecab-dev` / `mecab-devel` | 支持 MeCab 分词 |
| 社交登录 | `liboauth-dev` / `oauth-devel` | 支持 OAuth 插件 |
| Google Protocol Buffers | `libprotobuf-dev` / `protobuf-devel` | 用于 `mysql-connector-c++` |
| Google Benchmark | `libbenchmark-dev` / `benchmark-devel` | 用于性能测试 |
二、MySQL 8.0+ 特有依赖
MySQL 8.0 引入了更多新特性,需要额外依赖:
bash
Ubuntu/Debian
sudo apt install libssl-dev libzstd-dev libjson-c-dev libicu-dev
CentOS/RHEL
sudo yum install openssl-devel zstd-devel json-c-devel icu-devel
三、编译步骤示例(以 MySQL 8.0 为例)
bash
1、下载源码
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.33.tar.gz
tar -xzf mysql-8.0.33.tar.gz
cd mysql-8.0.33
2、创建构建目录
mkdir build && cd build
3、配置 CMake
cmake .、\
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/var/lib/mysql \
-DSYSCONFDIR=/etc/mysql \
-DWITH_SSL=system \
-DWITH_ZSTD=system \
-DWITH_JSON=ON \
-DWITH_ICU=ON \
-DWITH_LIBWRAP=OFF \
-DWITH_EMBEDDED_SERVER=OFF \
-DWITH_UNIT_TESTS=OFF
4、编译
make -j$(nproc)
5、安装
sudo make install
四、常见错误及解决方法
| 错误信息 | 原因 | 解决方法 |
|
| `CMake Error: Could not find a package configuration file` | 缺少依赖库 | 安装对应 `*-dev` 包 |
| `CMake Error: The C compiler identification is unknown` | 缺少 `gcc`/`g++` | 安装 `build-essential` 或 `gcc` |
| `CMake Error: Could not find a package configuration file for 'zstd'` | 缺少 `zstd` | 安装 `zstd-devel` 或 `libzstd-dev` |
| `CMake Error: Could not find a package configuration file for 'ssl'` | 缺少 `openssl` | 安装 `openssl-devel` 或 `libssl-dev` |
五、不同操作系统安装依赖汇总
Ubuntu/Debian
bash
sudo apt update
sudo apt install build-essential cmake3 libncurses5-dev libssl-dev libzstd-dev libjson-c-dev libicu-dev
CentOS/RHEL 8+
bash
sudo dnf install gcc gcc-c++ make cmake3 ncurses-devel openssl-devel zstd-devel json-c-devel icu-devel
CentOS/RHEL 7
bash
sudo yum install gcc gcc-c++ make cmake3 ncurses-devel openssl-devel zstd-devel json-c-devel icu-devel
六、总结
| 依赖项 | 是否必须 | 说明 |
|
| `gcc`, `g++`, `make`, `cmake` | ✅ 必须 | 编译工具链 |
| `ncurses-devel` | ✅ 必须 | 命令行交互支持 |
| `openssl-devel` | ✅ 必须 | SSL 支持 |
| `zstd-devel` | ✅ 必须(MySQL 8.0+) | ZSTD 压缩支持 |
| `json-c-devel` | ✅ 必须(MySQL 8.0+) | JSON 支持 |
| `icu-devel` | ✅ 必须(MySQL 8.0+) | 国际化支持 |
| `libzstd-dev` | ✅ 必须(MySQL 8.0+) | ZSTD 支持 |
七、参考文档
MySQL 官方文档:[MySQL 8.0 Installation Requirements](https://dev.mysql.com/doc/refman/8.0/en/source-installation.html)
MySQL 源码编译指南:[MySQL Source Installation Guide](https://dev.mysql.com/doc/refman/8.0/en/source-installation.html)
如果你使用的是特定版本(如 MySQL 5.7、MySQL 8.0、MySQL 8.4),可以提供具体版本号,我可以给出更精确的依赖列表。
📣 商家广告 :
👍
0
👎
IP地址: 68.124.165.199
搜索次数: 1
提问时间: 2025-11-11 07:21:22
🛒 域名购买 :
xm6.net 3331.top sssp.net 32.gs tuosou.cn yw.gs 9el.cn jgfc.cn 523.net.cn 58.gold
❓️ 热门提问 :
美国kt机房服务器 机房地面承重 如何查看服务器地址 免费服务器试用 vps国外推荐 sql PHP PDO 阿里注册的域名 VPS安装搭建云日志 ddp服务器 小鸟云的服务器 豌豆Ai站群搜索引擎系统
🌐 域名评估 :
27.gs 5a.js.cn fpqb.cn uav.hi.cn 29.gg uygu.cn catl.sh.cn 26.gold cakl.cn 652.net.cn
⛏ 最新挖掘 :
凯里酸汤鱼 贵阳烤脑花 都匀毛尖茶 花溪牛肉粉 贵阳烤生蚝 贵阳烤豆腐 贵阳纸包鱼 贵阳特色菜
🖌 热门作画 :
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊 :
🔗 友情链接 :
贵阳车间净化
一站式搜索平台
ai提问
🧰 站长工具 :Ai工具 whois查询 搜索
📢 温馨提示 :本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持 :本站由豌豆Ai 提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。