MySQL5.5编译工具configure向cmake过渡指南
从mysql5.5起,mysql源码安装开始使用cmake了。下面是介绍configure选项如何映射到CMake的等值参数。 1. 命令语法: 重新编译时,需要清除旧的对象文件和缓存信息 2.安装选项
CMAKE_INSTALL_PREFIX值是安装的基本目录,其他cmake选项值是不包括前缀,是相对路径名,绝对路径包括CMAKE_INSTALL_PREFIX路径。如-DINSTALL_SBINDIR=sbin的绝对路径是/usr/local/mysql/sbin 可以使用以下选择来安装innodb,archive,blackhole存储引擎 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 (1可以使用on代替) 有关插件的CMake的选项的其他信息,请查阅: 4.lib库选项
5.其他选项 --with-embedded-server => WITH_EMBEDDED_SERVER 6.调试配置过程 7.第三方接口工具 现在的版本可以直接读取版本文件。如:如果版本是5.5.8,文件看起来像这样的: MYSQL_VERSION_MINOR=5 MYSQL_VERSION_PATCH=8 MYSQL_VERSION_EXTRA= 构建5位数字的版本号,使用下面公式:
|
BUILD_CONFIG 采用官方发行版一致的编译参数
CMAKE_BUILD_TYPE 指定产品编译说明信息 RelWithDebInf
CMAKE_INSTALL_PREFIX 指定MySQL安装路径 /usr/local/mysql
CPACK_MONOLITHIC_INSTALL是否建立单个安装包文件 OFF 5.5.7
DEFAULT_CHARSET MYSQL 默认字符集 latin1 5.5.7
DEFAULT_COLLATION MYSQL 默认排序字符集 latin1_swedish_ci 5.5.7
ENABLE_DEBUG_SYNC 是否启用同步调试功能 ON 5.5.7
ENABLE_DOWNLOADS 是否下载可选文件 OFF 5.5.7
ENABLE_DTRACE 是否包含 DTrace 支持 5.5.7
ENABLE_GCOV 是否包含 Gcov 支持 5.5.14
ENABLED_LOCAL_INFILE 是否启用本地 LOAD DATA INFILE OFF 5.5.7
ENABLED_PROFILING 是否启用代码查询分析 ON 5.5.7
INSTALL_BINDIR MySQL 主执行文件目录 PREFIX/bin 5.5.7
INSTALL_DOCDIR 文档安装路径 PREFIX/docs 5.5.7
INSTALL_DOCREADMEDIR 自述文件目录 PREFIX 5.5.7
INSTALL_INCLUDEDIR 头文件目录 PREFIX/include 5.5.7
INSTALL_INFODIR 关于信息文件目录 PREFIX/docs 5.5.7
INSTALL_LAYOUT 选择预定义的安装 STANDALONE 5.5.7
INSTALL_LIBDIR 库文件目录 PREFIX/lib 5.5.7
INSTALL_MANDIR 手册页面目录 PREFIX/man 5.5.7
INSTALL_MYSQLSHAREDIR 共享数据目录 PREFIX/share 5.5.7
INSTALL_MYSQLTESTDIR mysql-test 目录 PREFIX/mysql-test 5.5.7
INSTALL_PLUGINDIR 插件目录 PREFIX/lib/plugin 5.5.7
INSTALL_SBINDIR 服务器超级用户执行文件目录 PREFIX/bin 5.5.7
INSTALL_SCRIPTDIR 脚本目录 PREFIX/scripts 5.5.7
INSTALL_SHAREDIR aclocal/mysql.m4 安装目录 PREFIX/share 5.5.7
INSTALL_SQLBENCHDIR sql-bench 性能测试工具目录 PREFIX 5.5.7
INSTALL_SUPPORTFILESDIR 扩展支持文件目录 PREFIX/support-files 5.5.7
MYSQL_DATADIR 数据库存放目录 5.5.7
MYSQL_MAINTAINER_MODE 是否启用MySQL的维护环境 OFF 5.5.7
MYSQL_TCP_PORT TCP/IP 端口号 3306 5.5.7
MYSQL_UNIX_ADDR Unix Socket 套接字文件 /tmp/mysql.sock 5.5.7
SYSCONFDIR 选项配置文件目录 5.5.7
WITH_COMMENT 编译环境发表评论 5.5.7
WITH_DEBUG 是否包括调试支持 OFF 5.5.7
WITH_EMBEDDED_SERVER 是否要建立嵌入式服务器 OFF 5.5.7
WITH_xxx_STORAGE_ENGINE 静态编译xxx 存储引擎到服务器 5.5.7
WITH_EXTRA_CHARSETS 额外的字符集,包括 all 5.5.7
WITH_LIBWRAP 是否包括支持libwrap(TCP包装) OFF 5.5.7
WITH_READLINE 使用捆绑的readline OFF 5.5.7
WITH_SSL 是否支持SSL no 5.5.7
WITH_ZLIB 是否支持Zlib system 5.5.7
WITHOUT_xxx_
# cd mysql-5.5-source
// 进入mysql 源码包目录
# CFLAGS=”-O3″ CXX=gcc
# CXXFLAGS=”-O3 -felide-constructors -fno-exceptions -fno-rtti”
//配置GCC编译器优化参数,可选
# cmake . -LH|more
//查看Mysql 编译参数配置说明
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/var/lib/mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock -DMYSQL_USER=mysql -DSYSCONFDIR=/etc/mysql
// 根据配置参数设置MySQL 安装路径,数据目录,SOCKET及配置文件路径
# make -j 8 && make install
//开始编译并安装,-j 参数可选用来指定CPU核心数,可加快编译速度,服务器双路4核这里用了8
# cd /usr/local/mysql
# useradd -M -d /var/lib/mysql -s /sbin/nologin mysql
# scripts/mysql_install_db –user=mysql –datadir=/var/lib/mysql