mysql如何使用源码安装_mysql源码安装操作方法

来源:这里教程网 时间:2026-02-28 20:27:37 作者:

MySQL 使用源码安装可以更灵活地自定义编译参数,适合对性能或功能有特殊要求的场景。虽然过程比二进制包安装复杂一些,但掌握后能更好地理解 MySQL 的运行机制。以下是详细的源码安装操作方法。

准备编译环境与依赖

在开始编译前,确保系统已安装必要的开发工具和库文件。

安装 GCC 编译器、CMake、make 等基础工具 安装 Boost 库(MySQL 5.7+ 需要) 安装 OpenSSL、zlib、ncurses 等依赖库

以 CentOS 为例:

yum install -y gcc gcc-c++ make cmake openssl-devel zlib-devel ncurses-devel bison git

如果使用 Ubuntu/Debian:

apt-get install build-essential cmake libssl-dev zlib1g-dev libncurses5-dev libboost-all-dev

下载并解压 MySQL 源码

从官方 GitHub 或 MySQL 官网获取源码包。

使用 Git 克隆(以 MySQL 8.0 为例):

git clone https://github.com/mysql/mysql-server.git -b 8.0 mysql-8.0-source

进入源码目录:

cd mysql-8.0-source

配置 CMake 编译选项

在源码根目录创建构建目录,避免污染源码:

mkdir build && cd build

运行 CMake 配置,常用参数如下:

cmake .. \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DDEFAULT_CHARSET=utf8mb4 \ -DDEFAULT_COLLATION=utf8mb4_unicode_ci \ -DENABLED_LOCAL_INFILE=ON \ -DWITH_SSL=system \ -DWITH_ZLIB=system \ -DWITH_BOOST=../boost

关键参数说明:

CMAKE_INSTALL_PREFIX:指定安装路径 DEFAULT_CHARSET/COLLATION:设置默认字符集 WITH_BOOST:指定 Boost 路径(源码中通常自带) ENABLED_LOCAL_INFILE:允许 LOAD DATA LOCAL INFILE

若提示 Boost 缺失,可执行脚本自动下载:

scripts/bootstrap.sh

编译与安装

配置完成后开始编译,根据 CPU 核心数加快速度:

make -j$(nproc)

编译成功后安装到指定目录:

make install

整个过程可能耗时 20 分钟到数小时,取决于机器性能。

初始化 MySQL 数据库

安装完成后,进入安装目录进行初始化:

cd /usr/local/mysql

执行初始化命令:

bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

记录生成的临时 root 密码(出现在日志末尾)。

若未创建 mysql 用户,先执行:

useradd -r -s /sbin/nologin mysql

配置启动脚本与开机自启

复制服务脚本到系统目录:

cp support-files/mysql.server /etc/init.d/mysqld

设置权限并加入开机启动(CentOS 6 风格):

chmod +x /etc/init.d/mysqld
chkconfig --add mysqld

或使用 systemd(现代系统):

创建 /etc/systemd/system/mysqld.service 文件,写入标准 unit 内容后执行:

systemctl daemon-reload
systemctl enable mysqld

启动服务并设置密码

启动 MySQL:

/etc/init.d/mysqld start

登录并修改密码:

bin/mysql -u root -p

输入临时密码后执行:

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

基本上就这些。源码安装虽然步骤多,但每一步都可控。注意备份配置、保留编译日志,便于排查问题。只要依赖齐全、参数正确,成功率很高。

相关推荐

热文推荐