mysql-5.5源码编译安装(附参数对照表)
来源:互联网 发布:香蕉网络电视免费 编辑:程序博客网 时间:2024/06/02 06:13
自5.5以后的版本都需要cmake编译安装,so...先安装cmake编译器
- 安装必要的组件
- yum -y install cmake
- yum -y install bison
- yum -y install ncurses-devel
- 添加账户
- groupadd mysql
- useradd mysql -g mysql -M -s /bin/false
- 编译安装
- tar zxvf mysql-5.5.24.tar.gz
- cd mysql-5.5.24
- cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
- -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
- -DMYSQL_USER=mysql \
- -DEXTRA_CHARSETS=all \
- -DDEFAULT_CHARSET=utf8 \
- -DDEFAULT_COLLATION=utf8_general_ci \
- -DWITH_MYISAM_STORAGE_ENGINE=1 \
- -DWITH_INNOBASE_STORAGE_ENGINE=1 \
- -DWITH_DEBUG=0 \
- -DWITH_READLINE=1 \
- -DWITH_EMBEDDED_SERVER=1 \
- -DENABLED_LOCAL_INFILE=1
- make -j 2 && make install
- 注:-j 用来指定CPU核心数,可加快编译速度,不加也可以
- 以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。
- 如果只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,以下两步无需执行。
- 1、以mysql用户帐号的身份建立数据表:
- chown -R mysql.mysql /usr/local/mysql
- cp support-files/my-large.cnf /etc/my.cnf
- /usr/local/mysql/scripts/mysql_install_db \
- --defaults-file=/etc/my.cnf \
- --basedir=/usr/local/mysql \
- --datadir=/usr/local/mysql/data/ \
- --user=mysql
- 2、加入开机自启动;并启动mysql
- cp support-files/mysql.server /etc/rc.d/init.d/mysqld
- chmod 755 /etc/rc.d/init.d/mysqld
- chkconfig --add mysqld
- chkconfig --level 35 mysqld on
- service mysqld start
从mysql5.5起,mysql源码安装开始使用cmake。下面是 mysql 5.5 与以前的参数对照:
configure CommandCMake Command./configurecmake ../configure --helpcmake . -LH or ccmake .Parameterconfigure OptionCMake OptionCMake NotesInstallation base directory--prefix=/usr-DCMAKE_INSTALL_PREFIX=/usr mysqld directory--libexecdir=/usr/sbin-DINSTALL_SBINDIR=sbininterpreted relative to prefixData directory--localstatedir=/var/lib/mysql-DMYSQL_DATADIR=/var/lib/mysql Config directory (for my.cnf)--sysconfdir=/etc/mysql-DSYSCONFDIR=/etc/mysql Plugin directory--with-plugindir=/usr/lib64/mysql/plugin-DINSTALL_PLUGINDIR=lib64/mysql/plugininterpreted relative to prefixMan page directory--mandir=/usr/share/man-DINSTALL_MANDIR=share/maninterpreted relative to prefixShared-data directory--sharedstatedir=/usr/share/mysql-DINSTALL_SHAREDIR=sharethis is where aclocal/mysql.m4 should be installedLibrary installation directory--libdir=/usr/lib64/mysql-DINSTALL_LIBDIR=lib64/mysqlinterpreted relative to prefixHeader installation directory--includedir=/usr/include/mysql-DINSTALL_INCLUDEDIR=include/mysqlinterpreted relative to prefixInfo doc directory--infodir=/usr/share/info-DINSTALL_INFODIR=share/infointerpreted relative to prefixParameterconfigure OptionCMake OptionCMake Notesreadline library--with-readline-DWITH_READLINE=1 SSL library--with-ssl=/usr-DWITH_SSL=system zlib library--with-zlib-dir=/usr-DWITH_ZLIB=system libwrap library--without-libwrap-DWITH_LIBWRAP=0 Parameterconfigure OptionCMake OptionCMake NotesTCP/IP port number--with-tcp-port-=3306-DMYSQL_TCP_PORT=3306UNIX socket file--with-unix-socket-path=/tmp/mysqld.sock-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock
Enable LOCAL for LOAD DATA--enable-local-infile-DENABLED_LOCAL_INFILE=1
Extra charsets--with-extra-charsets=all-DEXTRA_CHARSETS=alldefault is "all"Default charset--with-charset=utf8-DDEFAULT_CHARSET=utf8
Default collation--with-collation=utf8_general_ci-DDEFAULT_COLLATION=utf8_general_ci
Build the server--with-servernone
Build the embedded server--with-embedded-server-DWITH_EMBEDDED_SERVER=1
libmysqld privilege control--with-embedded-privilege-controlnonealways enabled?Install the documentation--without-docsnone
Big tables--with-big-tables, --without-big-tablesnonetables are big by defaultmysqld user--with-mysqld-user=mysql-DMYSQL_USER=mysqlmysql is the defaultDebugging--without-debug-DWITH_DEBUG=0default is debugging disabledGIS support--with-geometrynonealways enabled?Community features--enable-community-featuresnonealways enabledProfiling--disable-profiling-DENABLE_PROFILING=0enabled by defaultpstack--without-pstacknonepstack is removedAssembler string functions--enable-assemblernone
Build type--build=x86_64-pc-linux-gnuno equivalentunneeded?Cross-compile host--host=x86_64-pc-linux-gnuno equivalentunneeded?Client flag--with-client-ldflags=-lstdc++noneunneededClient flag--enable-thread-safe-clientnoneunneeded, clients are always thread safeComment--with-comment='string'-DWITH_COMMENT='string'
Shared/static binaries--enable-shared --enable-staticnonethere is only DISABLE_SHAREDMemory use--with-low-memorynoneunneeded
- 1. 命令语法:
- 重新编译时,需要清除旧的对象文件和缓存信息
- # make clean
- # rm -f CMakeCache.txt
- 2.安装选项
- CMAKE_INSTALL_PREFIX值是安装的基本目录,其他cmake选项值是不包括前缀,是相对路径名,绝对路径包括 CMAKE_INSTALL_PREFIX路径。如-DINSTALL_SBINDIR=sbin的绝对路径是/usr/local/mysql /sbin
- 3.存储引擎选项
- mysql存储引擎是插件式的,因此插件控制选项可以指定那个存储引擎安装。
- configure编译插件选项--with-plugins=csv,myisam,myisammrg,heap,innobase,
- archive,blackhole在cmake中没有直接对应的相同选项。对于csv,myisam,myisammrg,heap在cmake中是不需要明确指定存储引擎的名称,因为它们是强制性安装。
- 可以使用以下选择来安装innodb,archive,blackhole存储引擎
- -DWITH_INNOBASE_STORAGE_ENGINE=1
- -DWITH_ARCHIVE_STORAGE_ENGINE=1
- -DWITH_BLACKHOLE_STORAGE_ENGINE=1
- (1可以使用on代替)
- 如果既不是-DWITH_<ENGINE>_STORAGE_ENGINE 也不是 -DWITHOUT_<ENGINE>_STORAGE_ENGINE 来指定存储引擎,该存储引擎将安装成共享模块式的。如果不是共享模块式的将排除在外。共享模块安装时必须使用INSTALL PLUGIN语句或--plugin-load才可以使用。
- 4.其他选项
- 之前MySQL的编译选项大多数都支持。新旧版本之间的安装选项映射成大写字母,删除选项前面破折号,中间字符间的破折号替换成下划线。如:
- --with-debug => WITH_DEBUG=1
- --with-embedded-server => WITH_EMBEDDED_SERVER
- 5.调试配置过程
- 使用configure编译完将生成config.log和config.status文件。
- 使用cmake编译完在CMakeFiles目录下生成CMakeError.log 和CMakeOutput.log文件。
- 编译参数参考:
- 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_STORAGE_ENGINE 不编译XXX存储引擎到数据库
- <pre class="programlisting" style="margin-top: 0px; margin-bottom: 0px; padding: 2px; border: 0px; outline: 0px; font-size: 13px; vertical-align: baseline; background-color: rgb(238, 238, 238); font-family: 'Courier New', Courier, fixed, monospace; max-width: 720px; line-height: 20px;" name="code">
- </pre>
- <pre></pre>
-
阅读全文
0 0
- mysql-5.5源码编译安装(附参数对照表)
- mysql-5.5源码编译安装(附参数对照表)
- mysql-5.5源码编译安装(附参数对照表)
- mysql-5.5源码编译安装(附参数对照表)
- MySQL 5.5 源码编译安装
- 源码编译安装MySQL-5.1.58,常规参数优化配置
- 源码编译安装MySQL-5.1.58,常规参数优化配置
- 源码编译安装mysql
- mysql 源码编译安装
- MySQL 源码编译安装
- 源码编译安装mysql
- Mysql源码编译安装
- Mysql源码编译安装
- ubuntu 10.10 源码编译安装mysql 5.5
- 源码编译mysql 5.5+ 安装过程全记录
- centos源码编译安装mysql-5.5.13
- 源码编译安装 MySQL 5.5.13 实践
- 源码编译安装 MySQL 5.5.x 实践
- 20. Valid Parentheses
- new和newInstance
- Spring报错问题:org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception pars
- MarkDonw常用语法
- 恶意代码行为
- mysql-5.5源码编译安装(附参数对照表)
- BP神经网络算法与实践
- 51nod 1509 加长棒 组合数学(隔板法)
- Pix4D.Pix4Dmapper.Pro.v2.0.104.MacOSX 1CD(无人机数据处理软件)
- Jenkins 项目配置里缺少了 触发远程构建 (例如,使用脚本) Trigger builds remotely 选项的解决办法
- 【安全牛学习笔记】SHODAN
- Linux 查看PCI设备命令---lspci
- 求阶乘以及求各项阶乘和问题
- 2017 ACM-ICPC 亚洲区-banana