一、参数选项

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的更多相关文章

  1. 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 ...

  2. 基于cmake编译安装MySQL-5.5

    cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以 ...

  3. centos6.5环境源码编译安装mysql5.6.34

    centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...

  4. Ubuntu14.04编译安装mysql5.6.26

    Ubuntu14.04编译安装mysql5.6.26 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libncurses5-d ...

  5. 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 ...

  6. centos7编译安装MySQL5.7.9

    title: centos7编译安装MySQL5.7.9 date: 2016-05-12 16:20:17 tags: --- Centos7编译安装mysql5.7.9 mysql5.7有更好的性 ...

  7. centos6.7下 编译安装MySQL5.7

    centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ...

  8. centos6.7编译安装mysql5.7.17

    centos6.7编译安装mysql5.7.17 2017-03-24 09:57:15 提示:mysql5.7.17和之前5.56以前的版本安装不一样,需要用cmake 另外,看本文档的mysql编 ...

  9. centos7.2环境编译安装mysql5.5.48

    一.安装cmake编译工具 跨平台编译器 查看是否已经安装了gcc # rpm -qa | grep gcc # yum install -y gcc-c++ # yum install -y cma ...

  10. 源码编译安装mysql5.5.33

    源码编译安装mysql5.5.33 一.安装cmake编译工具 跨平台编译器 # yum install -y gcc* # yum install -y cmake 解决依赖关系 # yum ins ...

随机推荐

  1. LeetCode Count Primes 求素数个数(埃拉托色尼筛选法)

    题意:给一个数n,返回小于n的素数个数. 思路:设数字 k =from 2 to sqrt(n),那么对于每个k,从k2开始,在[2,n)范围内只要是k的倍数的都删掉(也就是说[k,k2)是不用理的, ...

  2. scala学习笔记(2)

    1 Loop (1) for (i <- 1 to 3){ # 1 2 3 } (2) for (i <- 1 until 3){ #1 2 } (3)过滤 for (i <- 1 ...

  3. 用于分类的决策树(Decision Tree)-ID3 C4.5

    决策树(Decision Tree)是一种基本的分类与回归方法(ID3.C4.5和基于 Gini 的 CART 可用于分类,CART还可用于回归).决策树在分类过程中,表示的是基于特征对实例进行划分, ...

  4. Servlet中response.sendRedirect()跳转时不能设置target的解决办法

    一般使用Struts2的拦截器(或者是filter)验证是否登录的时候,如果用户没有登录则会跳转到登录的页面.这时候一般可以在拦截器或者filter中用response.sendRedirect(). ...

  5. C# DataGridView的初始化

    动态添加列和行 方法一 通过手动添加Datatable,再绑定dataGridView DataTable dt = new DataTable();//建立个数据表 dt.Columns.Add(n ...

  6. table应用之colspan与rowspan

    <table border=" borderColorDark="#66ff33"> <tr> <td rowspan=" ali ...

  7. Delphi 提示在Delphi的IDE中,按Ctrl+Shift+G键可以为一个接口生成一个新的GUID。

    对于Object Pascal语言来说,最近一段时间最有意义的改进就是从Delphi3开始支持接口(interface),接口定义了能够与一个对象进行交互操作的一组过程和函数.对一个接口进行定义包含两 ...

  8. Drupal配置文件settings.php搜索规则

    Drupal的配置文件搜索是通过bootstrap.inc的conf_path()函数实现的: function conf_path($require_settings = TRUE, $reset ...

  9. <测试用例设计>用户及权限管理功能常规测试方法

    1)  赋予一个人员相应的权限后,在界面上看此人员是否具有此权限,并以此人员身份登陆,验证权限设置是否正确(能否超出所给予的权限): 2)  删除或修改已经登陆系统并正在进行操作的人员的权限,程序能否 ...

  10. android 性能优化大纲

    性能优化系列 分为三个部分:视图篇 逻辑篇  和代码规范篇 . ------2016/9/6  视图篇      主要涵盖视图树层级优化.自定义视图.图片优化,常用布局性能缺陷等多个方面 .把平常经常 ...