1.进入MySQL官网下载MySQL源代码

依次点击Downloads -> Community -> MySQL Community Server

源代码
1.Select Operating System: Source Code
2.Select OS Version: Generic Linux (Architecture Independent)

再下载列表中选择 1.Compressed TAR Archive、2.Compressed TAR Archive, Includes Boost Headers 下载

将上述两个源代码包在同一目录下将解压

1.安装编译环境及目录的设置

yum install -y cmake gcc-c++ ncurses-devel perl-Data-Dumper boost boost-doc boost-devel
tar -zxvf mysql-5.7.17.tar.gz
rm -rf mysql-5.7.17.tar.gz

tar -zxvf mysql-boost-5.7.18.tar.gz

rm -rf mysql-boost-5.7.18.tar.gz
useradd -M -s /sbin/nologin mysql
mkdir -pv /usr/local/mysql/mydata
mkdir -pv /usr/local/mysql/conf
chown -R mysql /usr/local/mysql
rm -rf /etc/my.cnf

必须删除my.cnf,其为mariadb配置文件,于mysql有冲突

如果linux运行内存小于2G,建议设置虚拟内存

dd if=/dev/zero of=/swapfile bs=64M count=32
mkswap /swapfile
swapon /swapfile

在软件编译完成之后,删除交换分区

swapoff /swapfile
rm /swapfile

2.配置cmake,编译安装

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/mydata \
-DSYSCONFDIR=/usr/local/mysql/conf \
-DMYSQL_USER=mysql \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_DEBUG=0 \
-DMYSQL_MAINTAINER_MODE=0 \
-DWITH_SSL:STRING=bundled \
-DWITH_ZLIB:STRING=bundled \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=./boost
make
make install

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \        [MySQL安装的根目录]
-DMYSQL_DATADIR=/mydata/mysql/data \          [MySQL数据库文件存放目录]
-DSYSCONFDIR=/etc \                     [MySQL配置文件所在目录]
-DMYSQL_USER=mysql \                      [MySQL用户名]
-DWITH_MYISAM_STORAGE_ENGINE=1 \           [MySQL的数据库引擎]
-DWITH_INNOBASE_STORAGE_ENGINE=1 \         [MySQL的数据库引擎]
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \           [MySQL的数据库引擎]
-DWITH_MEMORY_STORAGE_ENGINE=1 \          [MySQL的数据库引擎]
-DWITH_READLINE=1 \ [MySQL的readline library]
-DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock \            [MySQL的通讯目录]
-DMYSQL_TCP_PORT=3306 \                 [MySQL的监听端口]
-DENABLED_LOCAL_INFILE=1 \                 [启用加载本地数据]
-DENABLE_DOWNLOADS=1 \                 [编译时允许自主下载相关文件]
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \                   [使MySQL支持所有的扩展字符]
-DDEFAULT_CHARSET=utf8 \                 [设置默认字符集为utf8]
-DDEFAULT_COLLATION=utf8_general_ci \            [设置默认字符校对]
-DWITH_DEBUG=0 \                      [禁用调试模式]
-DMYSQL_MAINTAINER_MODE=0 \
-DWITH_SSL:STRING=bundled \                [通讯时支持ssl协议]
-DWITH_ZLIB:STRING=bundled                 [允许使用zlib library]
-DDOWNLOAD_BOOST=1 \                    [允许在线更新boost库]
-DWITH_BOOST=/boost                   [指定boost安装路径]

boost安装路径即为2.Compressed TAR Archive, Includes Boost Headers的解压目录

3.设置添加到系统服务并设置开机启动

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on

4.将mysql添加到bash
cp /usr/local/mysql/bin/mysql /usr/bin/mysql

5.初始化mysql

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

6.重新设置mysql密码

set password =password('123456');

centos 7编译安装mysql 5.7.17的更多相关文章

  1. CentOS下编译安装MySQL 5.6.21

    一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...

  2. CentOS 下编译安装MySQL

    CnetOS 下编译安装 MySql 查看是否存在旧版本: rpm -qa | grep mysql 卸载旧版本: rpm -e mysql   #普通删除模式 rpm -e --nodeps mys ...

  3. 在CentOS上编译安装MySQL 5.7.13步骤详解

    MySQL 5.7主要特性 更好的性能 对于多核CPU.固态硬盘.锁有着更好的优化,每秒100W QPS已不再是MySQL的追求,下个版本能否上200W QPS才是用户更关心的. 更好的InnoDB存 ...

  4. centos 7 编译安装mysql 详细过程

    一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...

  5. centos 7编译安装mysql 5.7.20

    1. 下载mysql 5.7.20源码包 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20.tar.gz 下载boost ...

  6. Mac系统下源码编译安装MySQL 5.7.17

    1.下载并解压到:/Users/xiechunping/Softwares/mysql-5.7.17下载地址:http://ftp.ntu.edu.tw/pub/MySQL/Downloads/MyS ...

  7. CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作

    CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614   使用yum安装的MySQL一般版本比较旧,但 ...

  8. CentOS 编译安装 mysql

    1.前期准备 1.1 环境说明: 操作系统: CentOS release 6.4 (Final) [查看命令 cat /etc/redhat-release ] mysql : mysql-5.6. ...

  9. CentOS源码编译安装MySQL 5.5.15

    CentOS源码编译安装MySQL 5.5.15   文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install g ...

随机推荐

  1. 敏捷软件开发:原则、模式与实践——第11章 DIP:依赖倒置原则

    第11章 DIP:依赖倒置原则 DIP:依赖倒置原则: a.高层模块不应该依赖于低层模块.二者都应该依赖于抽象. b.抽象不应该依赖于细节.细节应该依赖于抽象. 11.1 层次化 下图展示了一个简单的 ...

  2. win32 zbar

    一.zbar官方介绍 ZBar 是款桌面电脑用条形码/二维码扫描工具,支持摄像头及图片扫描,支持多平台,例如 iPhone,Andriod 手机,同时 ZBar封装了二维码扫描的 API 开发包. Z ...

  3. Javascript与数据结构系列(一)——栈的实现

    栈的实现 实现一个栈,当务之急是决定存储数据的底层数据结构.这里采用的是数组. 我们的实现以定义 Stack 类的构造函数开始: function Stack() { this.dataStore = ...

  4. Linq分组操作之GroupBy,GroupJoin扩展方法源码分析

    Linq分组操作之GroupBy,GroupJoin扩展方法源码分析 一. GroupBy 解释: 根据指定的键选择器函数对序列中的元素进行分组,并且从每个组及其键中创建结果值. 查询表达式: var ...

  5. HTML5+CSS3+jQuery Mobile轻松构造APP与移动网站 (陈婉凌) 中文pdf扫描版

    <HTML5+CSS3+jQuery Mobile轻松构造APP与移动网站>以HTML与CSS为主,配合jQuery制作网页,并搭配jQueryMobile制作移动网页,通过具体的范例从基 ...

  6. .net core 高性能对象映射

    关于对象转换已经有不少轮子(AutoMapper,TinyMapper) .出于项目需要,手动造一个简单轮子.先贴代码 1.采用静态泛型类缓存,避免了拆箱装箱操作. 2.对于转换对象中有,字段名一样但 ...

  7. 实用的bash别名和函数

    本文来自于:程序师 作为一个命令行探索者,你或许发现你自己一遍又一遍重复同样的命令.如果你总是用ssh进入到同一台电脑,如果你总是将一连串命令连接起来,如果你总是用同样的参数运行一个程序,你也许希望在 ...

  8. PHP内核研究:HASH表和变量 【转】

    PHP HASH表 在PHP中,所有的数据 无论变量,常量,类,属性 都用Hash表来实现. 先要说说 HASH表 typedef struct bucket { ulong h;           ...

  9. Squid代理服务器(三)——ACL访问控制

    一.ACL概念 Squid提供了强大的代理控制机制,通过合理设置ACL(Access Control List,访问控制列表)并进行限制,可以针对源地址.目标地址.访问的URL路径.访问的时间等各种条 ...

  10. jmeter聚合报告详解

    聚合报告(aggregate report) 对于每个请求,它统计响应信息并提供请求数,平均值,最大,最小值,错误率,大约吞吐量(以请求数/秒为单位)和以kb/秒为单位的吞吐量. 吞吐量是以取样目标点 ...