【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 ...
最新文章
- 非递归二叉树先序遍历,一个深拷贝引发的bug
- python延时一秒_python如何最快毫秒速度使用requests?
- Starting MySQL... ERROR! The server quit without updating PID file 问题解决
- 对不起!今天我们的活动在朋友圈刷屏了……(多图预警)
- 成为Java流大师–第3部分:终端操作
- 北语19秋计算机应用基础作业答案,北语18秋《计算机应用基础》练习1满分答案...
- nyoj 21 三个水杯 BFS
- [前缀和][dp] Jzoj P5873 小p的属性
- ASP.NET服务器控件之视图状态
- 21_在线支付原理与实现
- Faster R-CNN理论
- w3c 整站 php源码,W3C联盟系统 v1.3
- 怎样下载最新的SCI/SSCI/EI目录期刊列表?
- 软考网络工程师-华为设备命令学习笔记
- 万能ABAP程序修改器
- js实现展开全部内容,收起全部内容
- 开心网kaixin001状告kaixin,停用“开心网”名称,赔偿1000万元并公开道歉
- EPICS -- synApps -- Autosave
- Wordcount()--ASP字数计算函数
- os.path.dirname用法