mysql5.7.17一直号称世界上最好的mysql
那么就在linux安装它(采用的源码安装)

我在阿里云主机上安装它

连接阿里云主机
进入,跟我们自己装的虚拟机一毛一样
[root@iZ2ze5uydxlvgxknyk9xx9Z ~]# cd /usr/local/src
下载mysql5.7.17
[root@iZ2ze5uydxlvgxknyk9xx9Z src]# wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.17.tar.gz
解压
[root@iZ2ze5uydxlvgxknyk9xx9Z src]# tar vfxz mysql-5.7.17.tar.gz
[root@iZ2ze5uydxlvgxknyk9xx9Z src]# cd mysql-5.7.17

mysql5.7不是configure,make,make & make install安装,而是最新的cmake编译(个人觉得比make编译好)方式
安装mysql需要添加一个mysql用户和mysql组
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# groupadd mysql
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# useradd -g mysql mysql -s /bin/false

说明一下, 指定 /bin/false是为了安全问题,创建的mysql查询如下,这样它的权限仅限于执行我们安装mysql了
创建mysql和data文件夹
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# cd /usr/local
[root@iZ2ze5uydxlvgxknyk9xx9Z local]# mkdir /usr/local/mysql
[root@iZ2ze5uydxlvgxknyk9xx9Z local]# cd mysql
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql]# mkdir /usr/local/mysql/data
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql]# cd ..
查看mysql的权限

更改权限给mysql
[root@iZ2ze5uydxlvgxknyk9xx9Z local]# chown -R mysql:mysql /usr/local/mysql

[root@iZ2ze5uydxlvgxknyk9xx9Z local]# cd mysql

[root@iZ2ze5uydxlvgxknyk9xx9Z local]# cd /usr/local/src/mysql-5.7.17
为了防止后面因为少某个组件而发生问题,集中安装一下,下面这些长命令需要复制到你的编辑器中,弄成一行,注意空格,非常重要
[root@iZ2ze5uydxlvgxknyk9xx9Z local]# yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gd gd2 gd-devel gd2-devel perl-CPAN pcre-devel
进入mysql-5.7.17目录
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# cd usr/local/src/mysql-5.7.17
只要在cmake编译之前存在CMakeCache.txt这个文件就删除,不管什么时候
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# rm -rf CMakeCache.txt
*************************************************************
mysql5.7系列需安装boost库,所以加上boost参数,-DDOWNLOAD_BOOST=1 -DWITH_BOOST=配置路径
前面是1代表下载,在cmake时会自动帮我们下载,不下载设为0,这里我们是下载,后面是配置下载存放的路径(注意路径要存在)
自己下载一个boost_1_59_0.tar.gz的包,最后解压放在了/usr/local/boost里(mv /usr/local/src/boost_1_59_0 /usr/local/boost)

如果没有安装包,也可以指定让cmake时自动为我们下载boost,创建一个boost文件夹,mkdir /usr/local/boost
*************************************************************
cmake编译
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql.sock \
-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_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1 \
-DWITH_BOOST=/usr/local/boost
发生下面问题

如果cmake没有的话,就安装cmake
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# yum install cmake
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# make && make install

安装cmake完毕,继续cmake编译
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql.sock \
-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_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1 \
-DWITH_BOOST=/usr/local/boost
[root@iZ2ze5uydxlvgxknyk9xx9Z mysql-5.7.17]# make && make install
一直等待,保守估计35分钟的样子
原文:http://www.cnblogs.com/xiong63/p/6282307.html