Rumah >pangkalan data >tutorial mysql >MYSQL源码编译的变动_MySQL

MYSQL源码编译的变动_MySQL

WBOY
WBOYasal
2016-06-01 12:59:46863semak imbas

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 

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn