1.下载源码

下载带boost库的源码解压(-DDOWNLOAD_BOOST=1 为直接下载boost库),安装下面系统依赖。(Percona Software downloads for databases)

2.安装依赖

yum install -y cmake make gcc gcc-c++ bison ncurses ncurses-devel readline-devel
yum install -y mysql-devel python-devel perl-JSON
python -m pip install mysql-python

3.开始编译

根据自己需要选择编译debug或release版本(DCMAKE_BUILD_TYPE参数控制):debug版本支持online debug适合内核功能调试、开发;release版本适合线上使用,二进制包相对比较小

mkdir release && cd releasecmake ../ \-DCMAKE_BUILD_TYPE=release                         \-DENABLED_PROFILING=1                                    \-DWITH_EXTRA_CHARSETS=all                                \-DWITH_ZLIB=bundled                                      \-DWITH_TOKUDB=0                                      \-DDOWNLOAD_BOOST=1                                     \-DWITH_BOOST=../boost                                    \-DWITH_SSL=system                                        \-DWITH_PARTITION_STORAGE_ENGINE=1                        \-DWITH_INNOBASE_STORAGE_ENGINE=1                         \-DWITH_INNODB_MEMCACHED=0                                \-DWITH_ARCHIVE_STORAGE_ENGINE=1                          \-DWITH_BLACKHOLE_STORAGE_ENGINE=1                        \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1                       \-DENABLED_LOCAL_INFILE=1                                 \-DWITH_EMBEDDED_SERVER=0                                 \-DINSTALL_LAYOUT=STANDALONE                              \-DCOMMUNITY_BUILD=1                                      \-DMYSQL_SERVER_SUFFIX=test_demo#指定并发线程数开始编译,并发数建议设置为机器CPU核数
make -j 16  #编译完成后,生成安装包
make package  

4.编译常见问题

1.编译过程可能出错,需要把中间文件清理干净,可以直接删除debug或release目录,如果没有单独目录,需要把CMakeCache.txt 和 CMakeFiles 删除,然后再编译。

2.建议下载源码到本地后,选建个本地git仓库,可以方便的看到自己的每个改动,以及编译过程中产生的中间文件。

3.如果没有建立git仓库,可以用比较工具对比目录,用自己修改过的目录和没修改过的目录对比看差异。

【MySQL内核系列】Centos7环境MySQL5.7源码编译教程相关推荐

  1. orangepi升级linux内核,orangePi源码编译教程

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? #环境 ubuntu 12.04.5 64位 8G内存 jdk-6u45-linux-x64.bin 64位JDK6 板 ...

  2. Spring 6 源码编译教程分享~

    前言:Spring Boot 3 RELEASE版本于 2022年11月24日 正式发布,此次Spring Boot里程碑的升级也要求了最低JDK 17 和 Spring Framework 6 ,其 ...

  3. tx2+opencv源码编译教程(tx2+opencv4.4.0+opencv_contrib-4.4.0)

    tx2+opencv源码编译教程(tx2+opencv4.4.0+opencv_contrib-4.4.0) 一.卸载TX2上已安装的opencv 打开终端,输入以下指令卸载已经安装的opencv: ...

  4. 源码编译mysql5.5_源码编译安装MySQL5.5

    前面的blog都有介绍mysql数据库存,不过那都是通用二进制的格式安装的,本文主要介绍在Centos6.5系统上源码编译安装MySQL数据库以及如何在Centos5系列版本的系统上如何编译安装cma ...

  5. mysql5.6源码编译_MySQL 5.6 源码编译安装

    前言 本文适合对于 mysql 有调试需求.或者在国产化平台上通过源码方式安装 mysql 数据库的场景:并且标题虽然指明是 mysql 5.6 版本,5.7 版本也基本适用,只是 cmake 编译参 ...

  6. 小明分享| SigmastarSSD201环境搭建及源码编译

    本文以目前最新版本(TAKOYAKI_DLS00V008)的 SDK 为例,讲述 SigmastarSSD201/202 环境搭建 源码下载 下载 kernel 源码 从 https://mirror ...

  7. linux git编译安装目录,Linux(centos) 环境下如何源码编译安装git

    21运维原创,转载请注明出处. 最近线上要使用git进行代码发布和版本管理了,之前搞过,一直没有做记录.从今儿起开始记录这块. linux上(当前文章使用的是centos,ubuntu采用apt-ge ...

  8. Spring源码系列(十三)——Spring源码编译及详细注解

    文章目录 1. 环境搭建 2. 代码编译 2.1 编译代码 2.1.1 build.gradle 2.1.1.1 第一处 2.1.1.2 第二处 2.1.2 gradle.properties 2.1 ...

  9. SQLite源码编译教程

    SQLite源码编译安装 SQLite简介 编译安装 源码下载 编译过程 demo实例 总结 SQLite简介 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页.如果你想学习如何使用M ...

最新文章

  1. 阻塞队列只有一个线程在同一时刻对其进行或者读或者写
  2. oracle行列转换总结
  3. Tomcat容器、JSP和Servlet
  4. 自由软件基金会庆祝成立35周年
  5. + 网页制作效果常用代码
  6. c语言楼梯有10级台阶,C语言小程序之没事爬楼梯
  7. 深度学习笔记(10) 优化算法(二)
  8. Linux修改终端提示符
  9. 微信小程序在线客服系统都有哪些功能?
  10. 个人博客网站的设计与实现_使用hexo来搭建个人网站博客(超详细教程)
  11. 【转】Jmagick的使用例子
  12. 三茗硬盘保护系统安装Linux,重装windows系统而不影响linux引导的方法
  13. 深度学习入门_对ORL数据集进行特征提取降维后SVM分类
  14. 小象学院 零基础Python入门 案例四 52周存钱挑战v_4.0
  15. python-onvif库基本使用
  16. C++语法(五)数据类型
  17. 互联网巨头争先入局智能汽车,盛世昊通董车长运筹帷幄
  18. 如何设置计算机自动连接宽带,宽带连接怎么设置,怎么设置宽带自动连接
  19. 9个开源的 Vue3 组件库
  20. 高密度配线架选择指南

热门文章

  1. 联想小新air14指纹失效解决方法
  2. 基于EB工具的TC3xx_MCAL配置开发02_ICU模块配置
  3. Socket收到MJPEG视频数据包,如何查找FFD8和FFD9?
  4. 如何看待”很多人不读书一样当老板挣大钱”的说法?
  5. js php 实现日历签到_PHP实现日历签到,并实现累计积分功能
  6. STM32 学习笔记 -- 基于stm32f4的看门狗配置和实验代码
  7. springboot+redis 切换redis库操作简洁明了
  8. vivado实现4x4阵列乘法器
  9. 深圳外籍国际学校ib成绩如何?
  10. FebHost:什么是俄罗斯.ru域名,注册需要什么条件?