Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1347109
  • 博文数量: 243
  • 博客积分: 888
  • 博客等级: 准尉
  • 技术积分: 2955
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-05 14:33
个人简介

漫漫长路,其修远兮!

文章分类

全部博文(243)

文章存档

2017年(2)

2016年(22)

2015年(32)

2014年(57)

2013年(107)

2012年(23)

分类: Mysql/postgreSQL

2013-05-09 14:29:36

上周,因工作需要配了一周的LAMP,都是按照文档配的,对其中的相关选项不甚了解,现在参照官方文档把相关的参数整了出来,下面是有关MYSQL的:

mysql源码编译选项

其中(bool={{1|on}|{0|off}})


1.一般选项

-DBUILD_CONFIG=mysql_release

使用与mysql官方发行的二进制版本(mysql_release)相同的配置


-DCMAKE_BUILD_TYPE=type

type包括:RelWithDebInfo:默认编译类型,开启优化,生成调试信息

Debug:反上,与-DWITH_DEBUG=1等效


-DCPACK_MONOLITHIC_INSTALL=bool

这个编译选项决定了编译时是否产生多个安装文件。如果启用该选项,则只会产生一个安装文件,但它包括mysql的所有东西;如果不启用该选项,则会产生多个安装文件,它们是mysql完整安装文件的子集,你可以根据需要安装。




安装布局选项

-DCMAKE_INSTALL_PREFIXdir_name

mysql安装主目录,可以在mysql server启动的时候用--basedir选项指定


-DINSTALL_BINDIR=dir_name

用户程序安装路径


-DINSTALL_DOCDIR=dir_name

相关文档存放路径


-DINSTALL_DOCREADMEDIR=dir_name

README文档存放路径


-DINSTALL_INCLUDEDIR=dir_name

头文件安装路径


-DINSTALL_INFODIR=dir_name

Info文档存放路径


-DINSTALL_LAYOUT=name

预定义安装布局:

STANDALONE:默认布局,使用与.tar.gz.zip包类似布局

RPM:使用与RPM类似的布局

SVR4:使用Solaris包布局

DEB:使用DEB包布局

你可以先指定一个预定义在布局,然后再指定其它具体的参数来做相应的修改

如: cmake .-DINSTALL_LAYOUT=RPM -DMYSQL_DATADIR=/data/mysql/data


-DINSTALL_LIBDIR=dir_name

库文档安装路径


-DINSTALL_MANDIR=dir_name

手册安装路径


-DINSTALL_MYSQLTESTDIR=dir_name

mysql-test安装目录


-DINSTALL_SBINDIR=dir_name

mysqld安装目录


-DINSTALL_SCRIPTDIR=dir_name

mysql_install_db安装目录


-DINSTALL_SHAREDIR=dir_name

aclocal/mysql.m4安装目录


-DINSTALL_SQLBENCHDIR=dir_name

sql-bench安装目录。不安装该目录请使用空值:-DINSTALL_SQLBENCHDIR=

-DINSTALL_SUPPORFILESDIR=dir_name

附加支持文档安装目录


-DMYSQL_DATADIR=dir_name

mysql数据存放目录,可以在mysql server启动的时候用—datadir选项指定


-DSYSCONFDIR=dir_name

默认的my.cnf文档存放路径。你可以在mysql server启动的时候用—defaults-file=file_name(full path)选项指定你要使用的配置文件




存储引擎选项

存储引擎是当作插件来编译的,可分为动态组件(安装时必须使用INTALL_PLUGIN语句或在使用前用—plugin-load选项指明)与静态组件(编译到server中)两种模式。


MYISAM,MERGE,MEMORY,CSV存储引擎是默认安装的,在编译时无须指明;ARCHIVE,BLACKHOLE,EXAMPLE,FEDERATED,INNOBADE(INNODB),PARTITION,PERFSCHME等存储引擎在编译时需要指明,语法为DWITH_engine_SRORAGE_ENGINE=1;如:

-DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1

如果不需要某个存储引擎,可用-DWITHOUT_engine_SRORAGE_ENGINE=1指出;如:

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1

如果没有指明是否使用某个存储引擎,那么它们将会被编译成共享组件;如果不能编译成共享组件,则它们将不会被编译进去。



特征选项:

-DDEFAULT_CHARSET=charset_name

指定server使用的字符集;默认使用latin1.

charset_name可以是:binary, armscii8, ascii, big5, cp1250, cp1251, cp1256, cp1257, cp850, cp852, cp866, cp932, dec8, eucjpms, euckr, gb2312, gbk, geostd8, greek, hebrew, hp8, keybcs2, koi8r, koi8u, latin1, latin2, latin5, latin7, macce, macroman, sjis, swe7, tis620, ucs2, ujis, utf8, utf8mb4, utf16, utf32.

cmake/characte_sets.cmake文档中列出了所有可用的字符集。

你也可以在 server启动的时候用—character_set_server选项指明字符集

-DDEFAULT_COLLATION=collation_name

server的排序规则;默认值为latin1_swedish_ci。可以使用SHOW COLLATION语句查看每个字符集可用的排序规则。

你也可以在server启动的时候使用—collation_server指定某个排序规则。


-DENABLE_DEBUG_SYNC=bool

指明是否编译同步调试工具(用于测试及调试)到server中,默认启用


-DENABLE_DOWNLOADS=bool

指明是否下载可选文件。


-DENABLE_DTRACE=bool

指明是否支持DTrace probes


-DENABLE_GCOV=bool

指明是否支持gcov


-DENABLE_LOCAL_INFILE=bool

指明在客户端是否启用本地数据导入功能

你也可以有server启动的时候用—local-infile选项启用该功能


-DENABLED_RPOFILING=bool

指明是否启用概要文档查询功能(针对SHOW PROFILE SHOW PROFILES


-DMYSQL_MAINTAINER_MODE=boo

指明是否启用MYSQL maintainer-specific开发环境;如启用,则编译器会将编译时出现的警告转为错误


-DMYSQL_TCP_PORT=file_name

指定serverTCP/IP监听端口,默认为3306

你也可以在server启动时用—port选项指定端口


-DMYSQL_UNIX_ADDR=file_name

指定socket文档存放路径,默认为/tmp/mysq.sock


-DWITH_COMMENT=string

编译环境的描述性注释


-DWITH_DEBUG=bool

指明是否包含对debugging的支持


-DWITH_EMBEDDEC_SERVER=bool

指明是否编译server的嵌入式库libmysqld


-DWITH_EXTRA_CHARSETS=name

指定包含哪些附加的字符集

all:包含的有的字符集,默认值

complex:复合字符集

none:不添加


-DWITH_LIBWRAP=bool

指明是否包含对libwrap(TCP wrappers)的支持


-DWITH_SSL=ssl_type

指定是否支持ssl及支持的ssl的类型

no:不支持,默认值

yes:如果存在,则使用操作系统的SSL库,否则使用与发行版绑定的SSL

bundled:使用与发行版绑定的SSL

system:使用操作系统的SSL


-DWITH_ZLIB=zlib_type

指明对zlib的支持(有些特征要求在编译时提供对解压缩的库的支持)

bundled:使用与发行版绑定的zlib

system:使用操作系统的zlib



编译器选项

指定编译器选项,在运行cmake前设置CFLAGS,CXXFLAGS环境变量;如

shell> CFLAGS=-DDISABLE_GRANT_OPTIONS 
shell> CXXFLAGS=-DDISABLE_GRANT_OPTIONS 
shell> export CFLAGS CXXFLAGS
shell> cmake [options]

下面的选项控制着编译时的配置属性:

DISABLE_GRANT_OPTONS

如果指定该选项,则禁用mysqld--bootstrap –skip-grant-tables –init-file 选项

HAVE_EMBEDDED_PRIVILEGE_CONTROL

默认情况下,是不允许通过身份验证连接到嵌入式服务器的。若要使用,请使用此选项

阅读(1972) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~