mysql5.7.10 源码编译安装记录 (centos6.4)【转】
一、准备工作
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)【转】的更多相关文章
- 分布式架构高可用架构篇_06_MySQL源码编译安装(CentOS-6.7+MySQL-5.6)
redhat: 下载:http://dev.mysql.com/downloads/mysql/ 选择5.6 source包 解压 cmake . -DCMAKE_INSTALL_PREFIX=/us ...
- 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 ...
- 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 ...
- Mysql5.7.20源码编译安装
一.下载源码包 1.1 下载mysql源码包 MySQL源码,网址为:https://dev.mysql.com/downloads/mysql/ : 1.2 下载boost 下载网址为:http:/ ...
- mysql-5.5.46源码编译安装
1.安装准备 cat /etc/redhat-release uname -r yum install ncurses-devel cmake automake autoconf make gcc g ...
- 烂泥:mysql5.5数据库cmake源码编译安装
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...
- Zabbix 源码编译安装
简介: Zabbix 分布式监控系统,源码编译安装记录 ( 记不得是第多少次了 ) 下载地址:http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX ...
- CentOS7.5源码编译安装mysql5.7.29
#查看系统版本 [root@ctos3 ~]# cat /etc/redhat-release CentOS Linux release (Core) #下载源码包,需要注意的是mysql5.7 编译 ...
- Mysql5.7.34 数据库源码编译安装
Mysql 数据库源码编译安装 MySQL是一个关系型数据库管理系统,关系型数据库是将数据保存在不同的表中,而非将所有数据放在一个大仓库内,这样就加快了速度并提高了灵活性.由于其体积小.速度快.总体拥 ...
随机推荐
- BZOJ3329 Xorequ(数位dp+矩阵快速幂)
显然当x中没有相邻的1时该式成立,看起来这也是必要的. 于是对于第一问,数位dp即可.第二问写出dp式子后发现就是斐波拉契数列,矩阵快速幂即可. #include<iostream> #i ...
- (转载)MySQL数据库的几种常见高可用方案
转自: https://yq.aliyun.com/articles/74454 随着人们对数据一致性的要求不断的提高,越来越多的方法被尝试用来解决分布式数据一致性的问题,如MySQL自身的优化. ...
- FileZilla Server ftp 服务器下通过alias别名设置虚拟目录(多个分区)
最近检查服务器的时候发现磁盘空间不够用了,正好有两个硬盘正好,一个硬盘还空着,正好通过ftp服务器的别名功能实现添加空间了,这样就不用重新弄机器了 说明:FileZilla Server 的虚拟目录设 ...
- NOIP赛前集训营-提高组(第一场)#A 中位数
题目描述 小N得到了一个非常神奇的序列A.这个序列长度为N,下标从1开始.A的一个子区间对应一个序列,可以由数对[l,r]表示,代表A[l], A[l + 1], ..., A[r]这段数.对于一 ...
- 解决 'findstr' 不是内部或外部命令,也不是可运行的程序或批处理文件 提示问题
如果出现提示“出现'findstr' 不是内部或外部命令,也不是可运行的程序或批处理文件” 这是PATH环境变量的问题,将windows命令的目录添加到PATH中就over了.即:在path中追加:% ...
- Java应用中使用ShutdownHook友好地清理现场
在线上Java程序中经常遇到进程程挂掉,一些状态没有正确的保存下来,这时候就需要在JVM关掉的时候执行一些清理现场的代码.Java中得ShutdownHook提供了比较好的方案. JDK在1.3之后提 ...
- 《Linux内核设计与实现》学习总结 Chap18
一.准备开始 1.一个确定的bug,但大部分bug通常都不是行为可靠且定义明确的. 2.一个藏匿bug的内核版本. 3.相关内核代码的知识和运气. 二.内核中的bug 1.bug的表象: 明白无误的错 ...
- as, idea 出现 Gradle's dependency cache may be corrupt 错误分析
问题: Error:Failed to open zip file.Gradle's dependency cache may be corrupt (this sometimes occurs af ...
- 读论文Machine Learning for Improved Diagnosis and Prognosis in Healthcare
Deep Learning的基本思想 假设我们有一个系统S,它有n层(S1,…Sn),它的输入是I,输出是O,形象地表示为: I =>S1=>S2=>…..=>Sn => ...
- vim文件头部注释配置
http://note.youdao.com/noteshare?id=26dff538fabf3e8a0c4e85815256d5bb