您的位置:首页 > 数据库 > MySQL

RHEL6.5源码安装mysql-5.7.11

2016-04-28 17:50 483 查看
源码编译mysql-5.7.11

下载地址:

http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.11.tar.gz

http://liquidtelecom.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

 

安装必要的资源包

建议使用网络yum源,RHEL6.5光盘中自带的软件包版本不够,mysql-5.7.11.tar.gz的编译对软件包的版本要求比较高,其中cmake的版本要不低于2.8

网络yum源配置可以参考http://blog.sina.com.cn/s/blog_14e8c64ca0102vztv.html

[root@xuegod163 ~]# yum -y install gcc gcc-c++ autoconf automake zlib* libxml*ncurses-devel libtool-ltdl-devel* make cmake

删除系统自带mysql

[root@xuegod63mysql-5.7.11]# yum -y remove mysql

添加用户和组

[root@xuegod163 ~]#groupadd mysql

[root@xuegod163 ~]#useradd -M -s /sbin/nologin -r -g mysql mysql

 

创建安装目录和数据存放目录

添加一块新的硬盘,创建分区sdb1并分配所有的空间

[root@xuegod163 ~]# mkdir/server

[root@xuegod163 ~]# mount/dev/sdb1 /server/

开机自动挂载

 echo"/dev/sdb1 /server ext4 defaults 0 0"  >>/etc/fstab

注:mysql-5.7.11.tar.gz安装时占用空间比较大,虚拟机环境下建议新添加一块硬盘进行安装,真实服务器中不需要

[root@xuegod163 ~]# mkdir-p /server/mysql/data

 

上传源码包包到/server目录下或者直接wget进行下载源码包

解压源码包

[root@xuegod163 server]#tar zxf boost_1_59_0.tar.gz

[root@xuegod163 server]#tar zxf mysql-5.7.11.tar.gz

修改boost解压目录名称

[root@xuegod163 server]#mv boost_1_59_0 boost

卸载系统自带的boost库

[root@xuegod163 ~]# yum -y remove boost-*

注:从mysql5.7.5之后源码编译boost库是必须的

配置相关参数

[root@xuegod163 ~]# cdmysql-5.7.11

[root@xuegod163mysql-5.7.11]# cmake -DCMAKE_INSTALL_PREFIX=/server/mysql\

-DMYSQL_DATADIR=/server/mysql/data\

-DSYSCONFDIR=/etc\

-DWITH_MYISAM_STORAGE_ENGINE=1\

-DWITH_INNOBASE_STORAGE_ENGINE=1\

-DWITH_MEMORY_STORAGE_ENGINE=1\

-DWITH_READLINE=1\

-DMYSQL_UNIX_ADDR=/server/mysql/mysql.sock\

-DMYSQL_TCP_PORT=3306\

-DENABLED_LOCAL_INFILE=1\

-DWITH_PARTITION_STORAGE_ENGINE=1\

-DEXTRA_CHARSETS=all\

-DDEFAULT_CHARSET=utf8\

-DDEFAULT_COLLATION=utf8_general_ci\

-DDOWNLOAD_BOOST=1\

-DWITH_BOOST=/server/boost

 

编译的参数可以参考http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html

 

CMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql

DEFAULT_CHARSET:指定服务器默认字符集,默认latin1

DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci

ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF

WITH_COMMENT:指定编译备注信息

WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM,MERGE,MEMBER以及CSV四种引擎默认即被编译至服务器,不需要特别指定。

WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎

SYSCONFDIR:初始化参数文件目录

MYSQL_DATADIR:数据文件目录

MYSQL_TCP_PORT:服务端口号,默认3306

MYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock


 

编译

mysql-5.7.11.tar.gz编译时会占用大量的系统资源,建议使用多个核心同时进行编译,否则可能会编译失败

[root@xuegod163mysql-5.7.11]# make -j 4

查看服务器CPU核心数

[root@xuegod163 ~]# grepprocessor /proc/cpuinfo | wc -l

4

安装

[root@xuegod163mysql-5.7.11]# make install

修改目录权限

[root@xuegod163 ~]# chown-R mysql:mysql /server/mysql

 

生成配置文件

[root@xuegod163 ~]# mv/etc/my.cnf{,.bak}

[root@xuegod163 ~]# cp/server/mysql/support-files/my-default.cnf/etc/my.cnf

 

生成服务启动脚本

[root@xuegod163 ~]# cp/server/mysql/support-files/mysql.server/etc/init.d/mysqld

[root@xuegod163 ~]# chmod755 /etc/init.d/mysqld

[root@xuegod163 ~]#chkconfig --add mysqld

[root@xuegod163 ~]#chkconfig mysqld on

[root@xuegod163 ~]#chkconfig --list mysqld

mysqld    0:off    1:off    2:on    3:on    4:on    5:on    6:off

 

初始化数据库

[root@xuegod163 ~]#/server/mysql/bin/mysqld --initialize-insecure --user=mysql--basedir=/server/mysql--datadir=/server/mysql/data

 

启动服务

[root@xuegod163 ~]#service mysqld start

StartingMySQL [ OK ]

 

添加path路径: vim/etc/profile 添加下面2行 在文件的结尾

exportMYSQL_HOME=/server/mysql

exportPATH=$PATH:$MYSQL_HOME/bin

 

修改MySQL密码

[root@xuegod163 ~]#mysql

mysql>set password=password('123456');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: