编译安装-MySQL5.5
一、参数选项
1、目录选项
2、存储引擎选项
3、库文件加载选项
二、安装
1、环境准备
2、安装前的系统设置
3、安装执行
4、初始化数据库
5、注册为服务
6、加入环境变量
7、启动服务
8、重新编清除旧的对象文件和缓存信息
一、参数选项
1、目录选项
|
参数值说明 |
配置选项 |
CMak选项 |
|
安装根目录 |
--prefix=/usr |
-DCMAKE_INSTALL_PREFIX=/usr |
|
mysqld目录 |
--libexecdir=/usr/sbin |
-DINSTALL_SBINDIR=sbin |
|
数据存储目录 |
--localstatedir=/var/lib/mysql |
-DMYSQL_DATADIR=/var/lib/mysql |
|
配置文件(my.cnf)目录 |
--sysconfdir=/etc/mysql |
-DSYSCONFDIR=/etc/mysql |
|
插件目录 |
--with-plugindir=/usr/lib64/mysql/plugin |
-DINSTALL_PLUGINDIR=lib64/mysql/plugin |
|
手册文件目录 |
--mandir=/usr/share/man |
-DINSTALL_MANDIR=share/man |
|
共享数据目录 |
--sharedstatedir=/usr/share/mysql |
-DINSTALL_SHAREDIR=share |
|
Library库目录 |
--libdir=/usr/lib64/mysql |
-DINSTALL_LIBDIR=lib64/mysql |
|
Header安装目录 |
--includedir=/usr/include/mysql |
-DINSTALL_INCLUDEDIR=include/mysql |
|
信息文档目录 |
--infodir=/usr/share/info |
-DINSTALL_INFODIR=share/info |
2、存储引擎选项
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
使用-DWITHOUT_<ENGINE>_STORAGE_ENGINE除去对某种引擎的支持:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
3、库文件加载选项
|
参数值说明 |
配置选项 |
CMak选项 |
|
readline库 |
--with-readline |
-DWITH_READLINE=1 |
|
SSL库 |
--with-ssl=/usr |
-DWITH_SSL=system |
|
zlib库 |
--with-zlib-dir=/usr |
-DWITH_ZLIB=system |
|
libwrap库 |
--without-libwrap |
-DWITH_LIBWRAP=0 |
4、新老参数对照表
|
参数值说明 |
配置选项 |
CMak选项 |
|
端口 |
--with-tcp-port-=3306 |
-DMYSQL_TCP_PORT=3306 |
|
UNIX socket文件 |
--with-unix-socket-path=/tmp/mysqld.sock |
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock |
|
启用加载本地数据 |
--enable-local-infile |
-DENABLED_LOCAL_INFILE=1 |
|
扩展字符支持 |
--with-extra-charsets=all(默认:all) |
-DEXTRA_CHARSETS=all(默认:all) |
|
默认字符集 |
--with-charset=utf8 |
-DDEFAULT_CHARSET=utf8 |
|
默认字符校对 |
--with-collation=utf8_general_ci |
-DDEFAULT_COLLATION=utf8_general_ci |
|
Build the server |
--with-server |
无 |
|
嵌入式服务器 |
--with-embedded-server |
-DWITH_EMBEDDED_SERVER=1 |
|
libmysqld权限控制 |
--with-embedded-privilege-control |
无 |
|
安装文档 |
--without-docs |
无 |
|
Big tables支持 |
--with-big-tables, --without-big-tables |
无 |
|
mysqld运行用户 |
--with-mysqld-user=mysql |
-DMYSQL_USER=mysql |
|
调试模式 |
--without-debug(默认禁用) |
-DWITH_DEBUG=0(默认禁用) |
|
GIS支持 |
--with-geometry |
无 |
|
社区功能 |
--enable-community-features |
无 |
|
Profiling |
--disable-profiling(默认启用) |
-DENABLE_PROFILING=0(默认启用) |
|
pstack |
--without-pstack |
无(新版移除该功能) |
|
汇编字符串函数 |
--enable-assembler |
无 |
|
构建类型 |
--build=x86_64-pc-linux-gnu |
没有等效参数 |
|
交叉编译主机 |
--host=x86_64-pc-linux-gnu |
没有等效参数 |
|
客户端标志 |
--with-client-ldflags=-lstdc++ |
无 |
|
线程安全标志 |
--enable-thread-safe-client |
无 |
|
注释存储类型 |
--with-comment='string' |
-DWITH_COMMENT='string' |
|
Shared/static binaries |
--enable-shared --enable-static |
无 |
|
内存使用控制 |
--with-low-memory |
无 |
-DWITH_SSL=bundled自mysql5.6.*及以后的版本都要默认带上此参数,否则编译不过
二、安装
1、环境准备
MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。所以要确保系统有安装cmake工具,系统(CentOS6.4最小安装+开发工具包+mysql5.6.13)。
依赖软件包:gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libmcrypt* libtool*
使用yum一键安装所有依赖包:
yum -y install gcc gcc-c++ make cmake automake autoconf libxml2 libxml2-devel zlib zlib-devel ncurses ncurses-devel
2、安装前的系统设置
建立mysql安装目录及数据存放目录
# mkdir /usr/local/mysql
# mkdir /usr/local/mysql/data
创建用户和用户组
# groupadd mysql
# useradd –g mysql mysql
更改目录权限
# chown mysql:mysql –R /usr/local/mysql
3、安装执行
# tar xvf mysql-5.5.28.tar.gz
# cd mysql-5.5.28
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysqld.sock \
-DMYSQL_USER=mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_SSL=bundled
# make && make install
4、初始化数据库
# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
# /usr/local/mysql/scripts/mysql_install_db --defaults-file=/usr/local/mysql/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
# vi /etc/my.inf
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
5、注册为服务
# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --level 345 mysqld on
6、加入环境变量
# echo "export PATH=/usr/local/mysql/bin/:$PATH" >> /etc/profile
# source /etc/profile
7、启动服务
# service mysqld start
8、重新编清除旧的对象文件和缓存信息
# rm -f CMakeCache.txt
编译安装-MySQL5.5的更多相关文章
- CentOS6.3 编译安装LAMP(3):编译安装 MySQL5.5.25
所需源码包: /usr/local/src/MySQL-5.5.25/cmake-2.8.8.tar.gz /usr/local/src/MySQL-5.5.25/mysql-5.5.25.tar.g ...
- 基于cmake编译安装MySQL-5.5
cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以 ...
- centos6.5环境源码编译安装mysql5.6.34
centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...
- Ubuntu14.04编译安装mysql5.6.26
Ubuntu14.04编译安装mysql5.6.26 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libncurses5-d ...
- centos6.6下编译安装mysql5.6之后启动失败:Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).
今天在编译安装mysql5.6时候出现Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysq ...
- centos7编译安装MySQL5.7.9
title: centos7编译安装MySQL5.7.9 date: 2016-05-12 16:20:17 tags: --- Centos7编译安装mysql5.7.9 mysql5.7有更好的性 ...
- centos6.7下 编译安装MySQL5.7
centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ...
- centos6.7编译安装mysql5.7.17
centos6.7编译安装mysql5.7.17 2017-03-24 09:57:15 提示:mysql5.7.17和之前5.56以前的版本安装不一样,需要用cmake 另外,看本文档的mysql编 ...
- centos7.2环境编译安装mysql5.5.48
一.安装cmake编译工具 跨平台编译器 查看是否已经安装了gcc # rpm -qa | grep gcc # yum install -y gcc-c++ # yum install -y cma ...
- 源码编译安装mysql5.5.33
源码编译安装mysql5.5.33 一.安装cmake编译工具 跨平台编译器 # yum install -y gcc* # yum install -y cmake 解决依赖关系 # yum ins ...
随机推荐
- 使用MySQL Proxy解决MySQL主从同步延迟
MySQL的主从同步机制非常方便的解决了高并发读的应用需求,给Web方面开发带来了极大的便利.但这种方式有个比较大的缺陷在于MySQL的同步机制 是依赖Slave主动向Master发请求来获取数据的, ...
- myisam 与innodb的区别
myisam 与innodb的区别 frm结构 fri索引 frd数据 innodb:一个表一个文件:frm文件 所有的innodb表,都使用表空间储存, 数据和索引的保存文件不同,myisam 分开 ...
- Python [Leetcode 141]Linked List Cycle
题目描述: Given a linked list, determine if it has a cycle in it. 解题思路: 快的指针和慢的指针 代码如下: # Definition for ...
- 07day1
怒跪了. 砍树 排序 [问题描述] 小 A 在一条水平的马路上种了 n 棵树,过了几年树都长得很高大了,每棵树都可以看作是一条长度为 a[i]的竖线段.由于有的树过于高大,挡住了其他的树,使得另一 ...
- 每天一个Linux命令(7): cp
cp命令 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,同MSDOS下的copy命令一样,功能十分强大. 语法: cp [选项] 源文件或目录 目标文件或目录 ...
- 关闭iptables(Centos)
由于搭建了CDH-Hadoop,方便起见,事先关闭了防火墙: services iptables stop; chkconfig iptables off; services ip6tables st ...
- Node.js的循环依赖
我们知道在实际编程过程中,要尽可能的减少或者规避循环依赖情况的发生.但在现实环境中,有时却不得不产生循环依赖.Node.js不提倡使用循环依赖,但真有如此情况发生时Node.js也有办法解决.这篇博文 ...
- Arduino运行时突然[卡死在某一行/立即重启/串口输出乱码/程序执行不正常]的可能原因
1.这一行是分配内存,而内存不够了(Arduino uno只有2k) 2.内存本身已经只剩一点点了,于是就有莫名其妙的问题 3.没有调用Wire.begin().xx.setup()之类的操作!
- 关于“怎么比较两个SQL查询语句产生的结果集是否相同”搜集到的一些资料
一. 如果你这两个结果集都没有close,可以这样: rs.last(); rs2.last(); if (rs.getRow() != rs2.getRow()) { //记录数不等,即结果不等 } ...
- hdu 5469 Antonidas (dfs+剪枝)2015 ACM/ICPC Asia Regional Shanghai Online
题意: 给出一棵树,再给出每个节点上的值(一个char字符)这些值以一个字符串s1表示,然后给出一个s2字符串,问在这棵树上是否存在两个点,从一个点走到另一个点所经过的路径上的char字符组成的字符串 ...