Blogger Information
Blog 41
fans 0
comment 1
visits 40361
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
Linux CentOS6.x环境下关于MySQL5.7.17的源码编译安装配置
yeyiluLAMP
Original
978 people have browsed it

关闭防火墙iptables

service iptables stop

chkconfig iptables off

关闭SELINUX
vi /etc/selinux/config
SELINUX=enforcing #注释掉
SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加
:wq 保存,关闭

#使配置立即生效

setenforce 0


# 安装 ncurses

Ncurses 提供字符终端处理库,包括面板和菜单。它提供了一套控制光标,建立

窗口,改变前景背景颜色以及处理鼠标操作的函数。使用户在字符终端下编写应

用程序时绕过了那些恼人的底层机制。简而言之,他是一个可以使应用程序直接

控制终端屏幕显示的函数库。

1、

yum -y install ncurses-devel  注:如果报错,包找不到,是 *通配符没有识别,

给文件名加双引号 "ncurses*"

yum -y install gcc-c++ ncurses-devel  make perl

* 若不安装 ncurses 编译 MySQL时会报错

*--without-ada 参数为设定不编译为 ada 绑定,因进入 chroot 环境不能使用 ada;

--enable-overwrite 参数为定义把头文件安装到 /tools/include 下而不是

/tools/include/ncurses 目录

* --with-shared  生成共享库

#安装 cmake和 bison

mysql 在 5.5 以后,不再使用 ./configure 工具,进行编译安装。而使用 cmake工具替代

了./configure 工具。 cmake的具体用法参考文档 cmake说明。

bison 是一个自由软件,用于自动生成语法分析器程序,可用于所有常见的操作

系 统

yum -y install cmake bison

下载zlib

官网地址:http://zlib.net/

下载完成之后上传至wincp

tar -zxvf zlib-1.2.11.tar.gz

cd zlib-1.2.11

./configure --prefix=/usr/local/zlib

make && make install

创建伪用户

groupadd mysql

useradd -g mysql mysql

*添加用户组 mysql,将 mysql 用户默认组设置为 mysql 用户组

MySQL5.7.17下载地址:

http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.17.tar.gz 

通过wincp工具上传到centos目录下

解压缩

tar -zxvf mysql-boost-5.7.17.tar.gz

cd mysql-5.7.17/

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

-DEXTRA_CHARSETS=all \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DMYSQL_USER=mysql \

-DMYSQL_TCP_PORT=3306 \

-DENABLE_DOWNLOADS=1 \

-DWITH_BOOST=boost/boost_1_59_0/


相关安装参数的说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql  安装位置

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock  指定 socket (套接字)文件位置

-DEXTRA_CHARSETS=all  扩展字符支持

-DDEFAULT_CHARSET=utf8  默认字符集

-DDEFAULT_COLLATION=utf8_general_ci  默认字符校对

-DWITH_MYISAM_STORAGE_ENGINE=1  安装 myisam 存储引擎

-DWITH_INNOBASE_STORAGE_ENGINE=1  安装 innodb 存储引擎

-DWITH_MEMORY_STORAGE_ENGINE=1  安装 memory存储引擎

-DWITH_READLINE=1  支持 readline 库

-DENABLED_LOCAL_INFILE=1  启用加载本地数据

-DMYSQL_USER=mysql  指定 mysql 运行用户

-DMYSQL_TCP_PORT=3306  指定 mysql 端口

-DWITH_BOOST=boost/boost_1_59_0/ 这一行是指定boost库的位置,
如果下载的不是mysql-boost-5.7.17.tar.gz 这个已经包含boost库的包,
那么需要在配置项中指明下载 boost 库 当然这样比较慢,所以还是建议下载完整包
直接cmake指定参数 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory> 系统会下载 boost



make

make install

#如果报错,清除缓存,请使用以下的两条命令(如果没有报错则忽略)

make clean

rm -rf CMakeCache.txt


进入MySQL目录

cd /usr/local/mysql/

chown -R mysql .

chgrp -R mysql .

#修改 mysql 目录权限

Mysql 5.7以前

/usr/local/mysql/scripts/mysql_install_db --user=mysql

MySQL5.7以后

bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

#创建数据库授权表,初始化数据库

cd /usr/local/mysql

chown -R root .

chown -R mysql data

#修改 mysql 目录权限

Mysql.5.5

cp support-files/my-medium.cnf /etc/my.cnf

Mysql5.6 mysql5.7

cp  support-files/my-default.cnf  /etc/my.cnf


#复制 mysql 配置文件

/usr/local/mysql/scripts/mysql_install_db --user=mysql

启动 MySQL服务:

1. 用原本源代码的方式去使用和启动 mysql

/usr/local/mysql/bin/mysqld_safe --user=mysql &

2. 重启以后还要生效 :

vi  /etc/rc.local

/usr/local/mysql/bin/mysqld_safe --user=mysql &

:wq 保存退出

将MySQL加入/etc/rc.d/init.d/ 启动服务

cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

chmod +x /etc/rc.d/init.d/mysqld


至此,MySQL源码编译安装已经完成 ^_^ ......

Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!