您的位置:首页 > 运维架构 > Linux

CentOS下手动安装编译Mysql

2016-12-23 10:19 513 查看
新手环境编译文档记录

mysql MySQL从5.5开始,源代码安装将原来的configure改为cmake,因此在安装MySQL 5.5.x时,需要先安装cmake,可以通过源码安装

一:需要安装各种依赖库和安装工具


1.cmake

MySQL使用cmake跨平台工具预编译源码,用于设置mysql的编译参数。如:安装目录、数据存放目录、字符编码、排序规则等。安装最新版本即可。

2.make

mysql源代码是由C和C++语言编写,在Linux下使用make对源码进行编译和构建,要求必须安装make
3.75或以上版本

3.gcc

GCC是Linux下的C语言编译工具,mysql源码编译完全由C和C++编写,要求必须安装GCC4.4.6或以上版本

4.Boost1.59.0

mysql源码中用到了C++的Boost库,要求必须安装boost1.59.0或以上版本


5.ncurses

字符终端处理库 

 使用yum 命令  yum -y install cmake gcc gcc-c++ ncurses-devel make

安装boost
wgethttps://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
tar -zxvf boost_1_59_0.tar.gz -C /usr/local/

二.下载mysql
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13.tar.gz
tar -zxvf mysql-5.7.13.tar.gz
cd mysql-5.7.13

三.cmake 编译

安装目录
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
数据库存放目录
-DMYSQL_DATADIR=/usr/local/mysql/data 

系统配置目录

-DSYSCONFDIR=/etc

socket 文件路径

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock 

安装 myisam 存储引擎

-DWITH_MYISAM_STORAGE_ENGINE=1
安装 innodb 存储引擎

-DWITH_INNOBASE_STORAGE_ENGINE=1 
安装 archive 存储引擎

-DWITH_ARCHIVE_STORAGE_ENGINE=1 

安装 blackhole 存储引擎

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

安装数据库分区

-DWITH_PARTITION_STORAGE_ENGINE=1 
允许从本地导入数据

-DENABLED_LOCAL_INFILE=1
快捷键功能

-DWITH_READLINE=1
支持 SSL

-DWITH_SSL=yes
使用 utf8 字符

-DDEFAULT_CHARSET=utf8 
校验字符

-DDEFAULT_COLLATION=utf8_general_ci
安装所有扩展字符集

-DEXTRA_CHARSETS=all
MySQL 监听端口

-DMYSQL_TCP_PORT=3306

编译指令
注意事项:编译mysql 5.7版本 需要boost_1.59版本以上 由于boost 是手动编译安装 cmake 需要加下面画红线参数配置指定boost 目录
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DWITH_DEBUG=1-DWITH_BOOST=/usr/local/boost_1_59_0


编译成功 执行 make 命令
[100%] Built target mysql_embedded

Scanning dependencies of target mysqltest_embedded

[100%] Building CXX object libmysqld/examples/CMakeFiles/mysqltest_embedded.dir/__/__/client/mysqltest.cc.o

Linking CXX executable mysqltest_embedded

[100%] Built target mysqltest_embedded

Scanning dependencies of target my_safe_process

[100%] Building CXX object mysql-test/lib/My/SafeProcess/CMakeFiles/my_safe_process.dir/safe_process.cc.o

Linking CXX executable my_safe_process

[100%] Built target my_safe_process

[root@localhost mysql-5.7.13]#
make install
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息