MYSQL源代码编译的变动

Mysql的安装,对于mysql不同版本号的mysql源代码编译方式不一样  

5.6.2的版本号開始编译方式已经由 configure 变成了cmake方式 ,相关的新的
编译方式在mysql官网已经提供  
http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html    
源代码下载地址例如以下
http://dev.mysql.com/downloads/mysql/  
网上相关mysql5.6的源代码编译方式
http://www.chenyudong.com/archives/building-mysql-5-6-from-source.html



对于版本号5.6之前的mysql,编译方式还是传统的编译方式。
./configure 
make && make install
此种编译方式是传统方式,详细配置參数 如 nginx 例如以下

以下是MYSQL5.6之前的编译配置參数(来自网友资料)
--prefix=PREFIX:指定程序安装路径。
--enable-assembler:使用汇编模式。(文档说明:compiling in x86 (and sparc) versions of common string operations, which should result in more performance.  汇编x86的普通操作符。能够提高性能)
--enable-local-infile:启用对LOAD DATA LOCAL INFILE语法的支持(默认不支持)。
--enable-profiling:Build a version with query profiling code (req.community-features)
--enable-thread-safe-client:使用编译客户端;(让客户端支持线程的意思)
--with-big-tables:启用32位平台对4G大表的支持;
--with-charset=CHARSET:指定字符集。
--with-collation=:默认collation;
--with-extra-charsets=CHARSET,CHARSET,...:指定附加的字符集;
--with-fast-mutexes:Compile with fast mutexes
--with-readline:
--with-ssl:启用SSL的支持;
--with-server-suffix=:加入字符串到版本号信息。
--with-embedded-server:编译embedded-server。构建嵌入式MySQL库;
--with-pthread:强制使用pthread类库;
--with-mysqld-user=:指定mysqld守护进程的用户。
--with-mysqld-ldflags=:静态编译MySQL服务器端。(静态链接提高13%性能)
--with-client-ldflags=:静态编译MySQL客户端。(静态链接提高13%性能)
--with-plugins=PLUGIN,PLUGIN 等等等(MySQL服务器端支持的存储引擎组件(默觉得空)。可选值较多:
partition:MySQL Partitioning Support;
daemon_example:This is an example plugin daemon;
ftexample:Simple full-text parser plugin。
archive:Archive Storage Engine。
blackhole:Basic Write-only Read-never tables。
csv:Stores tables in text CSV format,强制安装。
example:Example for Storage Engines for developers。
federated:Connects to tables on remote MySQL servers;
heap:Volatile memory based tables。强制安装;
ibmdb2i:IBM DB2 for i Storage Engine;
innobase:Transactional Tables using InnoDB。
innodb_plugin:Transactional Tables using InnoDB。
myisam:Traditional non-transactional MySQL tables,强制安装;
myisammrg:Merge multiple MySQL tables into one,强制安装;
ndbcluster:High Availability Clustered tables。) 
--with-plugin-PLUGIN:强制指定的插件链接至MySQL服务器;
--with-zlib-dir=:向MySQL提供一个自己定义的压缩类库地址。
--without-server:仅安装MySQL客户端;
--without-query-cache:不要编译查询缓存;
--without-geometry:不要编译geometry-related部分;
--without-debug:编译为产品版,放弃debugging代码;
--without-ndb-debug:禁用special ndb debug特性;基于以上。我的配置:./configure --prefix=/usr/local/mysql/ 
--with-server-suffix=yu
--enable-assembler 
--enable-local-infile 
--enable-thread-safe-client 
--with-big-tables 
--with-charset=utf8  
--with-extra-charsets=gbk,gb2312,utf8,ascii  
--with-readline 
--with-ssl 
--with-embedded-server 
--with-pthread 
--with-mysqld-user=mysql 
--with-mysqld-ldflags=-all-static 
--with-client-ldflags=-all-static 
--with-plugins=partition,innobase,innodb_plugin 

原文地址:https://www.cnblogs.com/lytwajue/p/7039365.html