Home >Database >Mysql Tutorial >MYSQL源码编译的变动_MySQL

MYSQL源码编译的变动_MySQL

WBOY
WBOYOriginal
2016-06-01 12:59:46865browse

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 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn