一、准备工作

1.1 卸载系统自带mysql

查看系统是否自带MySQL, 如果有就卸载了, 卸载方式有两种yum, rpm, 这里通过yum卸载

rpm -qa | grep mysql    //查看系统自带mysql
yum -y remove mysql-* //卸载mysql
rpm -e --nodeps mysql-5.1.-.el6_5.x86_64 //卸载mysql

1.2 卸载系统自带boost,并安装boost_1_59_0

mysql 5.7 依赖于boost_1_59_0或更高版本, 查看系统是否自带boost, 如果有就卸载了

rpm -qa | grep boost    //查看系统自带boost
yum -y remove boost-* //卸载boost
rpm -e --nodeps boost-filesystem-1.41.-.el6_1..x86_64 //卸载boost

安装 boost_1_59_0 , cmake 编译时加上 -DWITH_BOOST=/usr/local/boost

tar -zxvf boost_1_59_0.tar.gz
mv boost_1_59_0 /usr/local/boost

1.3 安装依赖包

yum install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl

1.4 安装cmake

tar -zxvf cmake-3.4..tar.gz
./configure
make && make install

1.5 下载 mysql 源码包 mysql-5.7.10.tar.gz

通过wget下载

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

windows中下载需要的源码包,通过文件传输工具rzsz上传

yum install lrzsz //安装rzsz
rz //上传

1.6 创建用户组mysql和用户mysql

检查系统是否已经有mysql用户,如果没有则创建

cat /etc/group | grep mysql     //查看是否存在mysql用户组
cat /etc/passwd | grep mysql //查看是否存在mysql用户
groupadd mysql //创建用户组
useradd -r -g mysql mysql //创建用户

1.7 创建mysql目录和数据库目录,并赋予用户mysql权限

创建mysql目录和数据库目录

mkdir /usr/local/mysql          //创建mysql目录
mkdir /usr/local/mysql/data //创建数据库目录
mkdir /usr/local/mysql/log //创建日志文件目录
chown -R mysql:mysql /usr/local/mysql //赋予权限

二、编译、安装、配置mysql

2.1 编译、安装mysql

编译时带上一些参数如安装根目录、数据库目录、编码、端口号、默认存储引擎等 
编译的时候记得带上 -DWITH_BOOST=/usr/local/boost

tar -zxvf mysql-5.7..tar.gz
cd mysql-5.7.
cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_TCP_PORT= \
-DMYSQL_USER=mysql \
-DWITH_MYISAM_STORAGE_ENGINE= \
-DWITH_INNOBASE_STORAGE_ENGINE= \
-DWITH_ARCHIVE_STORAGE_ENGINE= \
-DWITH_BLACKHOLE_STORAGE_ENGINE= \
-DWITH_MEMORY_STORAGE_ENGINE= \
-DENABLE_DOWNLOADS= \
-DDOWNLOAD_BOOST= \
-DWITH_BOOST=/usr/local/boost make && make install

配置选项参考地址, [http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html][1]

2.2 编译出错, 重新编译前要删除编译失败的文件

重新编译时,需要清除旧的对象文件和缓存信息

make clean
rm -f CMakeCache.txt

2.3 配置my.cnf

my.cnf文件可以根据自己的需求选择合适的配置, 网上有很多, 可以参考, 这里不在详细说明。记得把 my.cnf 放到 /etc 目录下

mv my.cnf /etc/my.cnf

2.4 初始化系统数据表

自 mysql5.7 开始,初始化系统表不再使用 mysql_install_db 工具, 而是使用mysqld --initialize-insecure --user=mysql , 其中 --initialize 表示默认生成一个安全的密码,--initialize-insecure 表示不生成密码, 密码为空

cd /usr/local/mysql
bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

2.5 添加环境变量, 注册成系统服务

添加环境变量, 在 PATH 中添加参数 :/usr/local/mysql/bin:/usr/local/mysql/lib

vim /root/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
source /root/.bash_profile

注册成系统服务

cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
service mysqld start/stop/restart/status

首次登陆设置密码

  • 直接使用 mysqladmin 设置密码
mysqladmin -uroot -p password     //登录时候
  • 或者在使用空密码登录mysql后,在mysql客户端执行下面修改密码命令
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('');   //登录之后

查看进程

netstat -lntp | grep 3306
pkill mysqld 转自

mysql5.7.10 源码编译安装记录 (centos6.4) - hpy1165331898的专栏 - 博客频道 - CSDN.NET
http://blog.csdn.net/hpy1165331898/article/details/50557022

 

mysql5.7.10 源码编译安装记录 (centos6.4)【转】的更多相关文章

  1. 分布式架构高可用架构篇_06_MySQL源码编译安装(CentOS-6.7+MySQL-5.6)

    redhat: 下载:http://dev.mysql.com/downloads/mysql/ 选择5.6 source包 解压 cmake . -DCMAKE_INSTALL_PREFIX=/us ...

  2. CentOS下 Nginx1.13.5 + PHP7.1.10 + MySQL5.7.19 源码编译安装

    一.安装Nginx ①安装依赖扩展 # yum -y install wget openssl* gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng l ...

  3. CentOS7 + Nginx1.13.5 + PHP7.1.10 + MySQL5.7.19 源码编译安装

    一.安装Nginx 1.安装依赖扩展 # yum -y install wget openssl* gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng ...

  4. Mysql5.7.20源码编译安装

    一.下载源码包 1.1 下载mysql源码包 MySQL源码,网址为:https://dev.mysql.com/downloads/mysql/ : 1.2 下载boost 下载网址为:http:/ ...

  5. mysql-5.5.46源码编译安装

    1.安装准备 cat /etc/redhat-release uname -r yum install ncurses-devel cmake automake autoconf make gcc g ...

  6. 烂泥:mysql5.5数据库cmake源码编译安装

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...

  7. Zabbix 源码编译安装

    简介: Zabbix 分布式监控系统,源码编译安装记录 ( 记不得是第多少次了 ) 下载地址:http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX ...

  8. CentOS7.5源码编译安装mysql5.7.29

    #查看系统版本 [root@ctos3 ~]# cat /etc/redhat-release CentOS Linux release (Core) #下载源码包,需要注意的是mysql5.7 编译 ...

  9. Mysql5.7.34 数据库源码编译安装

    Mysql 数据库源码编译安装 MySQL是一个关系型数据库管理系统,关系型数据库是将数据保存在不同的表中,而非将所有数据放在一个大仓库内,这样就加快了速度并提高了灵活性.由于其体积小.速度快.总体拥 ...

随机推荐

  1. [USACO12NOV]同时平衡线Concurrently Balanced Strings DP map 思维

    题面 [USACO12NOV]同时平衡线Concurrently Balanced Strings 题解 考虑DP. \(f[i]\)表示以\(i\)为左端点的合法区间个数.令\(pos[i]\)表示 ...

  2. kafka-connect-hive sink实现要点小结

    kafka-connect-hive sink插件实现了以ORC和Parquet两种方式向Hive表中写入数据.Connector定期从Kafka轮询数据并将其写入HDFS,来自每个Kafka主题的数 ...

  3. 【转】查看 Linux 发行版名称和版本号的 8 种方法

    如果你加入了一家新公司,要为开发团队安装所需的软件并重启服务,这个时候首先要弄清楚它们运行在什么发行版以及哪个版本的系统上,你才能正确完成后续的工作.作为系统管理员,充分了解系统信息是首要的任务. 查 ...

  4. C++运算符重载形式——成员函数or友元函数

    运算符重载是C++多态的重要实现手段之一.通过运算符重载对运算符功能进行特殊定制,使其支持特定类型对象的运算,执行特定的功能,增强C++的扩展功能. 运算符重载的我们需要坚持四项基本原则: (1)不可 ...

  5. 解题:NOI 1999 生日蛋糕

    题面 裸的搜索题,就说剪枝(注:nw->noww->当前,res->rest->剩余): 1.想达到$Nπ$的体积,那么半径一开始最多也就$sqrt(n)$了,再大就超了... ...

  6. bzoj 1914: [Usaco2010 OPen]Triangle Counting 数三角形

    USACO划水中... 题目中要求经过原点的三角形数目,但这种三角形没什么明显的特点并不好求,所以可以求不经过原点的三角形数量. 对于一个非法三角形,它离原点最近的那条边连接的两个点所连的两条边一定在 ...

  7. linux下tar.gz、tar、bz2、zip等解压缩、压缩命令

    转至:http://www.jb51.net/LINUXjishu/43356.html 说明:Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令 ...

  8. mysql 中的共享锁和排他锁

    共享锁(share lock) 共享锁又称读锁,是读取操作创建的锁.其他用户可以并发读取数据,但任何事务都不能对数据进行修改(获取数据上的排他锁),直到已释放所有共享锁. 如果事务T对数据A加上共享锁 ...

  9. 利用oneproxy实现mysql读写分离搭建笔记

      功能: 1.具有SQL白名单(防SQL注入)及IP白名单功能的SQL防火墙软件 2.数据库故障切换 3.读写分离 4.分库分表     一.下载 官网下载:http://www.onexsoft. ...

  10. Ansible9:条件语句

    目录 一.when 1.基本用法 2.在when中使用jinja2的语法 3.使用bool值作为when的判断条件 4.在when中使用defined关键字 5.when在循环语句中的使用方法 6.在 ...