文档首页 > > 移植指南> 移植MySQL 5.7>

编译安装

编译安装

分享
更新时间:2021/03/25 GMT+08:00
  1. 进入下载的源码包所在的目录,解压缩源码包。

    解压后生成“mysql-5.7.x”文件夹,具体版本号以实际为准。

    tar -zvxf mysql-boost-5.7.x.tar.gz

  2. (可选)安装补丁。

    MySQL源码包版本为“5.x.x”,则必须为5.7.27以上,版本为“8.x.x”,则必须为8.0.17以上。否则需要安装补丁。
    1. 下载补丁文件,并放置到“mysql-5.7.x”路径下。

      补丁下载路径:https://bugs.mysql.com/file.php?id=28180&bug_id=94699

    2. 进入目录并打补丁。

      cd mysql-5.7.XX

      patch -p1 < 0001-Bug-94699-Mysql-deadlock-and-bugcheck-on-aarch64.patch

  3. 在解压后的源码包路径“mysql-5.7.x”下,创建“cmake.sh”

    vim cmake.sh

    文件内容如下,其中,“DWITH_BOOST”的取值请根据实际的boost路径修改。

    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DMYSQL_DATADIR=/data/data \
    -DSYSCONFDIR=/etc \
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \
    -DWITH_PARTITION_STORAGE_ENGINE=1 \
    -DWITH_FEDERATED_STORAGE_ENGINE=1 \
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
    -DWITH_MYISAM_STORAGE_ENGINE=1 \
    -DENABLED_LOCAL_INFILE=1 \
    -DENABLE_DTRACE=0 \
    -DDEFAULT_CHARSET=utf8mb4 \
    -DDEFAULT_COLLATION=utf8mb4_general_ci \
    -DWITH_EMBEDDED_SERVER=1 \
    -DDOWNLOAD_BOOST=1 \
    -DWITH_BOOST=/mysql/mysql-5.7.28/boost/boost_1_59_0

  4. “cmake.sh”赋以权限并运行,等待运行完成。

    chmod +x cmake.sh

    ./cmake.sh

    • 在执行./cmake.sh时会自动下载“boost_1_59_0.tar.gz” ,若出现超时报错的情况,可手工下载,并将文件放置到“cmake.sh”配置文件中“DWITH_BOOST”指定对应的路径下。

      wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

    • 若在预编译时出现依赖包不全的情况,可自行查阅资料安装依赖包,并重新预编译。重新预编译前,需要执行rm -f CMakeCache.txt“CMakeCache.txt文件。”

  5. 在MySQL源码路径下运行make -j16,等待编译完成。

    “-j”参数可利用多核CPU加快编译速度,在本示例中,使用的是16核CPU,所以此处为“-j16”

    可通过下述命令查询CPU核数:

    cat /proc/cpuinfo| grep "processor"| wc -l

    make -j16

  6. 运行make install,等待安装过程结束。
分享:

    相关文档

    相关产品