1、通过国内镜像下载源码包

下载包含boost的源码包

wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-boost-5.7.23.tar.gz

2、解压

tar xf mysql-boost-5.7.23.tar.gz

3、创建mysql用户

useradd -s/sbin/nologin mysql

4、创建数据库数据目录

mkdir -p /data/mysql/data

chown -R mysql:mysql /data/mysql

5、环境准备

yum install gcc gcc-c++ ncurses-devel perl autoconf cmake -y

6、编译-安装

编译过程需要3~4g的内存,且过程比较漫长。

是虚拟机的话可以添加内存;

不选择加内存的话,可以新增临时的swap空间,用磁盘暂时代替内存 ,编译完后在删除临时的swap。

#开启临时swap分区

dd if=/dev/zero of=/swapfile bs=1M count=2048

mkswap /swapfile

swapon /swapfile

#进入源码包目录

cd mysql-5.7.23

#编译安装

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=boost

make

make install

#关闭临时swap分区

swapoff /swapfile

rm /swapfile

7、编写配置my.cnf

mkdir /usr/local/mysql/etc

vim /usr/local/mysql/etc/my.cnf

[mysqld]

user=mysql

port=3306

basedir = /usr/local/mysql

datadir=/data/mysql/data

socket=/tmp/mysql.sock

log-error=/data/mysql/mysql-error.log

pid-file=/data/mysql/mysql.pid

tmpdir=/tmp

[mysqld_safe]

log-error=/data/mysql/mysql-error.log

pid-file=/data/mysql/mysql.pid

[client]

socket=/tmp/mysql.sock

8、mysql初始化

/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data --pid-file=/data/mysql/mysql.pid --tmpdir=/tmp

--initialize-insecure root用户无密码

mysql安装好后可以用mysqladmin -uroot password “新密码”设置root密码

这一步容易报错,有报错可以看日志排错

9、拷贝mysql服务启动脚本并做修改

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

#修改/etc/init.d/mysqld中basedir、datadir、conf的值

sed -i "s|^basedir=.*|basedir=\/usr\/local\/mysql|" /etc/init.d/mysql

sed -i "s|^datadir=.*|datadir=\/data\/mysql\/data|" /etc/init.d/mysql

sed -i "s|conf=.*|conf=${INSTALL_DIR}\/mysql\/etc\/my.cnf|" /etc/init.d/mysql

10、把mysql命令添加环境变量中

echo "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile

source /etc/profile

11、启动mysql服务并登录

/etc/init.d/mysql start

#登录

mysql

centos7编译安装mysql5.7_在Centos7源码包编译安装MySQL5.7相关推荐

  1. linux7编译mysql5.7安装,CentOS 7.4 使用源码包编译安装MySQL 5.7.20

    使用yum安装的MySQL一般版本比较旧,但是运行稳定.如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进行编译安装了. 一.下载安装包 (一).先下载MySQL源码,网址为:https: ...

  2. 软件的安装(包括yum仓库与源码包的安装)

    软件的安装 实验背景: 为了提高Linux服务器的易用性.扩展功能,安装软件包是管理员必备的技能,这其中又以RPM方式的安装操作最基础.最常用. 另外有时候需要解决依赖关系,要配置yum仓库.YUM ...

  3. [Linux运维基础]全家桶详解!Linux中RPM包、wget下载、YUM安装、tar包、zip等包管理方式区别与参数详解,附wget下载源码包编译安装方法

    文章目录 一.RPM.tar.gz 1.rpm包格式 2.rpm包管理 3.tar包管理参数 二.wget 1.wget参数 2.wget下载源码包后编译安装 三.YUM 1.YUM工作原理 2. Y ...

  4. mysql5.5源码包安装_mysql的源码包方式安装(mysql5.5)

    -------初写博客,希望在工作和日常中学习到的一些知识和经验与大家交流分享! 在Mysql5.5之后,使用源码包方式安装mysql就需要通过cmake方式进行编译了.以下内容介绍通过cmake方式 ...

  5. MySQL源码包编译安装

    +++++++++++++++++++++++++++++++++++++++++++ 标题:MySQL数据库实例部署 时间:2019年5月2日 内容:MySQL源码包进行编译,然后部署MySQL单实 ...

  6. 编译 php mysql 依赖包_MySQL 5.5.15源码包编译安装

    mysql果然是不愧是目前最火的数据库,自从mysql5.5.8之后,mysql的源码包编译安装都要用到cmake来进行编译了,编译的过程没有本质 mysql果然是不愧是目前最火的数据库,自从mysq ...

  7. Nginx实战基础篇一 源码包编译安装部署web服务器

    Nginx实战基础篇一 源码包编译安装部署web服务器 版权声明: 本文遵循"署名非商业性使用相同方式共享 2.5 中国大陆"协议 您可以自由复制.发行.展览.表演.放映.广播或通 ...

  8. 如何在源码包编译安装的 LEMP 环境下开启 OpenSSL 功能

    如何在源码包编译安装的 LEMP 环境下开启 OpenSSL 功能 Hello,大家好!我是--邪恶君子! 今天,给大家分享一下解决源码包编译安装 LEMP 环境下开启 OpenSSL 功能问题的过程 ...

  9. zabbix 3.2.2 server端(源码包)安装部署 (一)【转】

    环境准备: 操作系统 CentOS 6.8 2.6.32-642.11.1.el6.x86_64 zabbix server 172.16.10.150 zabbix agent 172.16.10. ...

最新文章

  1. 多表查询事务DCL权限管理
  2. LLC算法coding与pooling解析
  3. (NO.00003)iOS游戏简单的机器人投射游戏成形记(七)
  4. clientWidth、offsetWidth、clientHeight、offsetHeight的测试比较
  5. aopaspect区别_面试官:什么是AOP?Spring AOP和AspectJ的区别是什么?
  6. Oracle存在修改,不存在插入记录
  7. mx2 android os耗电,魅族MX3 Flyme OS 3.2充电慢、耗电快问题的解决方法详解
  8. javascript删除数组,索引出现问题解决办法。
  9. srsLTE源码学习:逻辑信道多路复用与MAC CE分解pdu_queue.h,pdu_queue.cc
  10. java请求超时异常捕获_我异常了,快来捕获我,Java异常简述
  11. C# 对称算法,加密解密类
  12. python中非法变量名_第10p,Python中变量名的命名规则与引用
  13. lenovo L480 进入bios_如何通过bios关闭pxe启动 - 操作系统
  14. 高清人脸数据集—FFHQ
  15. DNS原理及解析过程
  16. linux下添加三菱触摸屏usb驱动,华杰智控带USB口PLC、触摸屏实现远程上下载
  17. vue3.0脚手架搭建(vscode)
  18. 第十九届泳联水中运动世锦赛
  19. 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false
  20. python可以自动拆分表格吗_Python 拆分表格并发送邮件

热门文章

  1. lhgdialog 4.2.0 正式版发布
  2. strip lstrip rstrip
  3. 启用Visual Studio 对jQuery的智能感知
  4. Android 接入支付宝支付实现
  5. Protocol Buffers 在 iOS 中的使用
  6. 【桌面虚拟化】之四设计方法
  7. ScrollView中的LinearLayout不能使用android:layout_heig...
  8. Linux操作系统为何会对计算机病毒免疫
  9. mysql 游标的使用
  10. k8s组件批量启动、查看状态