【MySQL内核系列】Centos7环境MySQL5.7源码编译教程
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源码编译教程相关推荐
- orangepi升级linux内核,orangePi源码编译教程
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? #环境 ubuntu 12.04.5 64位 8G内存 jdk-6u45-linux-x64.bin 64位JDK6 板 ...
- Spring 6 源码编译教程分享~
前言:Spring Boot 3 RELEASE版本于 2022年11月24日 正式发布,此次Spring Boot里程碑的升级也要求了最低JDK 17 和 Spring Framework 6 ,其 ...
- 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: ...
- 源码编译mysql5.5_源码编译安装MySQL5.5
前面的blog都有介绍mysql数据库存,不过那都是通用二进制的格式安装的,本文主要介绍在Centos6.5系统上源码编译安装MySQL数据库以及如何在Centos5系列版本的系统上如何编译安装cma ...
- mysql5.6源码编译_MySQL 5.6 源码编译安装
前言 本文适合对于 mysql 有调试需求.或者在国产化平台上通过源码方式安装 mysql 数据库的场景:并且标题虽然指明是 mysql 5.6 版本,5.7 版本也基本适用,只是 cmake 编译参 ...
- 小明分享| SigmastarSSD201环境搭建及源码编译
本文以目前最新版本(TAKOYAKI_DLS00V008)的 SDK 为例,讲述 SigmastarSSD201/202 环境搭建 源码下载 下载 kernel 源码 从 https://mirror ...
- linux git编译安装目录,Linux(centos) 环境下如何源码编译安装git
21运维原创,转载请注明出处. 最近线上要使用git进行代码发布和版本管理了,之前搞过,一直没有做记录.从今儿起开始记录这块. linux上(当前文章使用的是centos,ubuntu采用apt-ge ...
- 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 ...
- SQLite源码编译教程
SQLite源码编译安装 SQLite简介 编译安装 源码下载 编译过程 demo实例 总结 SQLite简介 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页.如果你想学习如何使用M ...
最新文章
- 阻塞队列只有一个线程在同一时刻对其进行或者读或者写
- oracle行列转换总结
- Tomcat容器、JSP和Servlet
- 自由软件基金会庆祝成立35周年
- + 网页制作效果常用代码
- c语言楼梯有10级台阶,C语言小程序之没事爬楼梯
- 深度学习笔记(10) 优化算法(二)
- Linux修改终端提示符
- 微信小程序在线客服系统都有哪些功能?
- 个人博客网站的设计与实现_使用hexo来搭建个人网站博客(超详细教程)
- 【转】Jmagick的使用例子
- 三茗硬盘保护系统安装Linux,重装windows系统而不影响linux引导的方法
- 深度学习入门_对ORL数据集进行特征提取降维后SVM分类
- 小象学院 零基础Python入门 案例四 52周存钱挑战v_4.0
- python-onvif库基本使用
- C++语法(五)数据类型
- 互联网巨头争先入局智能汽车,盛世昊通董车长运筹帷幄
- 如何设置计算机自动连接宽带,宽带连接怎么设置,怎么设置宽带自动连接
- 9个开源的 Vue3 组件库
- 高密度配线架选择指南
热门文章
- 联想小新air14指纹失效解决方法
- 基于EB工具的TC3xx_MCAL配置开发02_ICU模块配置
- Socket收到MJPEG视频数据包,如何查找FFD8和FFD9?
- 如何看待”很多人不读书一样当老板挣大钱”的说法?
- js php 实现日历签到_PHP实现日历签到,并实现累计积分功能
- STM32 学习笔记 -- 基于stm32f4的看门狗配置和实验代码
- springboot+redis 切换redis库操作简洁明了
- vivado实现4x4阵列乘法器
- 深圳外籍国际学校ib成绩如何?
- FebHost:什么是俄罗斯.ru域名,注册需要什么条件?