mysql 5.7.17 源码安装

注意: mysql 5.7.17 安装略不用于 mysql 5.6
第一:需要指定 boost
第二: 初始化也不同了

1、 环境
操作系统: centos 6.6 x64
数据库: mysql 5.7.17
mysql 包: mysql-5.7.17.zip
boost 包: boost_1_59_0.tar

2、 操作系统配置:
系统依赖包:
yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison

3、 安装 cmake
安装 cmake,从 http://www.cmake.org
下载源码并编译安装
wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
tar -xzvf cmake-2.8.10.2.tar.gz
cd cmake-2.8.10.2
./bootstrap
gmake
gmake install

4、 安装解压 boost 包
wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
cd /opt
tar –xvf boost_1_59_0.tar
cd boost_1_59_0
mkdir /usr/local/boost
mv /opt/ boost_1_59_0 /usr/local/boost

5、设置 MySQL 用户和组
groupadd mysql
useradd -r -g mysql mysql

6、 新建 MySQL 所需要的目录
新建 mysql 安装目录
mkdir -p /usr/local/mysql
新建 mysql 数据库数据文件目录
mkdir -p /data/mysqldb

7、 编译安装 MySQL源码详解
从 mysql5.5 起, mysql 源码安装开始使用 cmake 了,设置源码编译配置脚本

-DCMAKE_INSTALL_PREFIX=dir_name 设置 mysql 安装目录
-DMYSQL_UNIX_ADDR=file_name
设置监听套接字路径,这必须是一个绝
对路径名。默认为/tmp/mysql.sock

-DDEFAULT_CHARSET=charset_name设置服务器的字符集。

8、缺省情况下, MySQL 使用 latin1 的( CP1252 西欧)字符集。
cmake/character_sets.cmake 文件包含允许的字符集名称列表。

-DDEFAULT_COLLATION=collation_name 设置服务器的排序规则。
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1

9、存储引擎选项:
MyISAM, MERGE, MEMORY, 和 CSV引擎是默认编译到服务器中,并不需要明确地安装。
静态编译一个存储引擎到服务器,使用
-DWITH_engine_STORAGE_ENGINE= 1

可用的存储引擎值有:
ARCHIVE,
BLACKHOLE,
EXAMPLE,
FEDERATED,
INNOBASE(InnoDB),
PARTITION(partitioningsupport), 和PERFSCHEMA (Performance Schema)

10、 编译安装
cdmysql5.7.17 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1
-DWITH_BOOST=/usr/local/boost
注意事项:
从 MySQL 5.7.5 开始 Boost 库是必需的
重新编译时,需要清除旧的对象文件和缓存信息。

makeclean rm -f CMakeCache.txt
rmrf/etc/my.cnf make
$make install

11、 修改文件权限:
[root@localhost mysql-5.6.24]# chown -R mysql:mysql /usr/local/mysql
[root@localhost mysql-5.6.24]# chown -R mysql:mysql /data

12、 初始化数据库:

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

之前版本 mysql_install_db 是在 mysql_basedir/script 下, 5.7 放在了 mysql_install_db/bin 目录下,且已被废弃
“–initialize”会生成一个随机密码(~/.mysql_secret),而”–initialize-insecure”不会生成密码
–datadir 目标目录下不能有数据文件

这里写图片描述

复制 mysql 服务启动脚本及加入 PATH 路径/etc/profile
export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH

复制 mysql 服务启动配置文件
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod a+x /etc/init.d/mysqld

启动 mysql 服务并加入开机自启动
service mysqld start
chkconfig –level 35 mysqld on

检查 mysql 服务是否启动

netstat -tulnp | grep 3306 #mysql -u root -p

修改 MySQL 用户 root 的密码

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值