MySQL学习之路 一 : MySQL 5.7.19 源码安装
MySQL 5.7.19 源码安装
- 查看系统:
# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core) - 安装依赖包
# yum -y install ncurses-devel libaio-devel cmake gcc gcc-c++ bison perl-Time-HiRes
- 下载安装boost 下载, 解压 mysql
- 下载包
# wget http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
解压
# tar xf boost_1_59_0.tar.gz
将boost 的包放到 /usr/local/boost 下
# mv boost_1_59_0 /usr/local/boost
- 创建 mysql 账号
# useradd -s /sbin/nologin -M mysql 验证
# id mysql
- 下载包
- 安装 mysql
- 下载, 解压 MYsql 源码包
# mkdir /root/tools
# cd /root/tools
# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19.tar.gz
# wget : 下载 MySQL 5.7.19 源码包
# tar xf mysql-5.7.19.tar.gz - cmake 解压与设置 msyql
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.7.19 \
-DMYSQL_DATADIR=/application/mysql-5.7.19/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.7.19/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0 \
-DWITH_BOOST=/usr/local/boost/ 编译安装
# grep processor /proc/cpuinfo|wc -l # 查看本机 CPU 虚拟核数
# make -j 6 && make install
-j : 使用 6个CPU线程进行编译解压, 越多编译快,
测试结果 只用 1 CPU 编译 1个多小时, 使用6 个后 不到10分钟
- 下载, 解压 MYsql 源码包
- 配置mysql
- 设置软连接
# ln -s /application/mysql-5.7.19/ /application/mysql
修改配置文件
# cat /etc/my.cnf
# mysql config file
[mysqld]
# datadir=/application/mysql/data
# socket=/application/mysql/tmp/mysql.sock
# skip-grant-tables
symbolic-links=0 [mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/application/mysql/mysqld.pid
- 设置软连接
初始化数据库
创建目录 /application/mysql-5.7.19/tmp 存放 mysql.sock
# mkdir /application/mysql-5.7.19/tmp
将 /application/ 下的所有文件 用户付给 mysql 用户
# chown -R mysql.mysql /application/mysql*
设置环境变量
# echo 'PATH=$PATH:/application/mysql/bin/' >>/etc/profile
# source /etc/profile配置启动文件
# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
初始化数据库
# mysqld --initialize-insecure --user=mysql --basedir=/application/mysql/ --datadir=/application/mysql/data
- 启动 mysql
- 启动
# /etc/init.d/mysqld start
# netstat -lntup |grep 330 设置开启启动
# chkconfig mysqld on
# chkconfig mysqld --list
- 启动
CMAKE 选项解释
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //MySQL安装的根目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock //指定mysql.sock位置
-DMYSQL_DATADIR=/data //MySQL数据库文件存放目录
-DSYSCONFDIR=/etc //MySQL配置文件所在目录
-DWITH_MYISAM_STORAGE_ENGINE=1 //添加MYISAM引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //添加InnoDB引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //添加ARCHIVE引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITH_PARTITION_STORAGE_ENGINE=1 //支持数据库分区
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
-DWITH_READLINE=ON
-DCOMPILATION_COMMENT='Zhaofx for mysqltest' //
-DEXTRA_CHARSETS=all //使MySQL支持所有的扩展字符
-DDEFAULT_CHARSET=utf8 //设置MySQL的默认字符集为utf8
-DDEFAULT_COLLATION=utf8_general_ci //设置默认字符集校对规则
-DWITH_SYSTEMD=1 //可以使用systemd控制mysql服务
-DWITH_BOOST=/usr/local/boost //指向boost库所在目录
-DWITH_EXTRA_CHARSETS=all
-DWITH_ZLIB=bundled
-DWITH_SSL=bundled
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DENABLED_LOCAL_INFILE=1
-DWITH_EMBEDDED_SERVER=1
-DENABLE_DOWNLOADS=1
-DWITH_DEBUG=0
MySQL学习之路 一 : MySQL 5.7.19 源码安装的更多相关文章
- ExtJS学习之路第四步:看源码,实战MessageBox
可以通过看MessageBox.js的源码来深入认识,记住它的主要用法.Ext.MessageBox是实用类,用于生成不同风格的消息框,它是Singleton(单例),别名Ext.Msg.注意Mess ...
- MySQL学习之路(一)——初涉MySQL。
MySQL学习之路(一) 1.1MySQL的概述 MySQL由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一个开源的关系型数据库管理系统. MySQL分为社区版和企业版. 1 ...
- MySQL学习(一)——Java连接MySql数据库
MySQL学习(一)——Java连接MySql数据库 API详解: 获得语句执行 String sql = "Insert into category(cid, cname) values( ...
- linux源码安装mysql,shell编程学习,ubuntu
一.mysql安装 以源码安装的方式编译和安装Mysql 5.6. 1.卸载旧版本 rpm -qa | grep mysql 检查是否有旧版本 查询结果:mysql-libs-5.1.73-7.el6 ...
- Centos7源码安装mysql及读写分离,互为主从
Linux服务器 -源码安装mysql 及读写分离,互为主从 一.环境介绍: Linux版本: CentOS 7 64位 mysq版本: mysql-5.6.26 这是我安装时所使用的版本, ...
- Linux MySQL源码安装缺少ncurses-devel包
在Red Hat Enterprise Linux Server release 5.7 上用源码安装MySQL-5.6.23时,遇到了" remove CMakeCache.txt and ...
- centos 6x系统下源码安装mysql操作记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...
- mysql 在cento下源码安装
虚拟机改为网络地址转换 (NAT) service network restartping www.baidu.com rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm ...
- CentOS 7下源码安装MySQL 5.6
本文转载,并非原创. 目录 准备工作 运行环境 确认你的安装版本 下载MySQL 安装MySQL 准备安装环境 编译和安装 配置MySQL 单实例配置 单实例配置方法 添加防火墙 启动MySQL 重启 ...
随机推荐
- BZOJ2733 [HNOI2012]永无乡(并查集+线段树合并)
题目大意: 在$n$个带权点上维护两个操作: 1)在点$u,v$间连一条边: 2)询问点$u$所在联通块中权值第$k$小的点的编号,若该联通块中的点的数目小于$k$,则输出$-1$: 传送门 上周的模 ...
- 如何写JS库,JS库写法
前言: 现在javascript库特别多,其写法各式各样,总结几种我们经常见到的,作为自己知识的积累.而目前版本的 JavaScript 并未提供一种原生的.语言级别的模块化组织模式,而是将模块化的方 ...
- Python运维中常用的_脚本
前言 file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函数open()来打开一个文件. ...
- A. Coffee Break(思维题,类似于邻接表的head数组用法)
题:https://codeforces.com/gym/101911/problem/A 题意:每天工作m分钟,每次喝coffee得间隔d分钟,然后给出n个数,每个数表示想在一天中的a[i]的时刻喝 ...
- Docker系列七: 使用Humpback管理工具管理容器(一款UI管理工具)
Humpback 可以帮助企业快速搭建轻量级的 Docker 容器云管理平台,若将你的 Docker 主机接入到 Humpback 平台中,就能够为你带来更快捷稳定的容器操作体验. 功能特点 Web操 ...
- rest framework-视图和路由-长期维护
############### 三种视图 ############### # 第一种方法:使用mixins # class AuthorView(mixins.ListModelMixin, ...
- bwa index|amb|ann|bwt|pac|sa
-.gapcloser.fa | > t1.fa bwa index -a bwtsw -p t1 t1.fa >t1.bwa_index.log >& #$ ll #tot ...
- JS如何按时间粒度获取date的时间差
获取date类型 var type = _xAxis[0].split(/-|:|\s/).length; 按时间粒度获取date的时间差 function getDateDiffByType(new ...
- 信息熵、信息增益、信息增益率、gini、woe、iv、VIF
整理一下这几个量的计算公式,便于记忆 采用信息增益率可以解决ID3算法中存在的问题,因此将采用信息增益率作为判定划分属性好坏的方法称为C4.5.需要注意的是,增益率准则对属性取值较少的时候会有偏好,为 ...
- 线程同步Lock锁
Lock接口历史 java1.5版本之前只有synchronized一种锁,lock是java1.5版本之后提供的接口.lock接口与synchronized接口功能相同,但是需要手动获取锁和释放锁. ...