如何在mysql中安装mysql源码包

安装mysql源码包需先准备环境,包括gcc、CMake等工具和依赖库;接着下载包含Boost的MySQL源码包并解压;创建build目录后使用CMake配置安装路径、数据目录、字符集及InnoDB支持等参数;随后执行make编译并安装至指定目录;安装后添加mysql用户,初始化数据目录并记录临时密码;配置启动脚本以便通过systemctl管理服务,设置环境变量使命令全局可用;最后运行安全脚本修改root密码、删除匿名用户完成初始化。该方式耗时但灵活,适合定制化需求与学习研究。

如何在mysql中安装mysql源码包

安装 MySQL 源码包需要手动编译,适用于希望自定义功能或学习 MySQL 内部机制的用户。整个过程包括准备环境、获取源码、配置编译选项、编译和安装等步骤。

1. 准备编译环境

在开始前,确保系统中已安装必要的开发工具和依赖库:

  • gcc/g++ 编译器
  • CMake(MySQL 使用 CMake 构建系统)
  • ncurses-devel(用于命令行客户端界面)
  • libaio-devel(异步 I/O 支持)
  • openssl-devel(ssl 支持)
  • make 工具

centos/RHEL 系统为例,运行以下命令安装依赖:

yum install -y gcc gcc-c++ cmake make ncurses-devel libaio-devel openssl-devel 

2. 下载 MySQL 源码包

MySQL 官方网站gitHub 获取源码压缩包。推荐使用稳定版本,例如 MySQL 8.0:

使用 wget 下载:

wget https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-boost-8.0.36.tar.gz tar -zxvf mysql-boost-8.0.36.tar.gz cd mysql-8.0.36 

3. 配置编译参数

在源码目录中创建构建目录并进入:

mkdir build && cd build 

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

cmake ..  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DMYSQL_DATADIR=/usr/local/mysql/data  -DSYSCONFDIR=/etc  -DWITH_BOOST=../boost  -DDEFAULT_CHARSET=utf8mb4  -DDEFAULT_COLLATION=utf8mb4_unicode_ci  -DENABLED_LOCAL_INFILE=ON  -DWITH_INNOBASE_STORAGE_ENGINE=1 

说明:

  • CMAKE_INSTALL_PREFIX:指定安装路径
  • WITH_BOOST:指向源码中的 boost 目录
  • 启用 InnoDB 和本地文件导入支持

若配置失败,检查错误提示,常见问题是缺少依赖或路径错误。

4. 编译与安装

执行编译(根据 CPU 核心数调整 -j 参数提升速度):

make -j$(nproc) 

编译完成后安装:

如何在mysql中安装mysql源码包

如知AI笔记

如知笔记——支持markdown的在线笔记,支持ai智能写作、AI搜索,支持DeepseekR1满血大模型

如何在mysql中安装mysql源码包27

查看详情 如何在mysql中安装mysql源码包

make install 

安装完成后,MySQL 文件将位于 /usr/local/mysql 目录下。

5. 初始化数据库

添加 mysql 用户和组:

groupadd mysql useradd -r -g mysql -s /bin/false mysql 

初始化数据目录:

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

记录输出中的临时 root 密码。

6. 配置启动脚本

复制服务文件以便使用 systemctl 管理:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld systemctl start mysqld systemctl enable mysqld 

设置环境变量

echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile source /etc/profile 

7. 安全设置

运行安全脚本修改 root 密码并移除匿名用户:

/usr/local/mysql/bin/mysql_secure_installation 

之后即可用 mysql -u root -p 登录使用。

基本上就这些。编译安装耗时较长,但灵活性高,适合特定需求场景。

上一篇
下一篇
text=ZqhQzanResources