MySQL 8.0.12源码编译安装

2018年10月11日11:08:13 发表评论

0x01 前言

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

0x02 源码和二进制

1. 源码安装:

优点:可扩展性强

缺点:耗时间量大,安装进度缓慢,依赖boost库。

2. 二进制安装:

优点:时间短,小而精悍。不依赖任何库文件。

缺点:可扩展性差

3.个人点评:

以上是纯属个人看法,不代表全部。你会问我选着那个安装呢?这个得看个人爱好选着自己喜欢安装方式,我会选着二进制安装方式。

0x03 Mysql源码下载

1.Mysql8.0.12源码下载

  1. wget -c https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.12.tar.gz

2.Boots库下载

  1. wget -c https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz/

3.Mysql带boost库下载

  1. https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-boost-8.0.12.tar.gz

0x04 安装前检查

1.关闭Firewalld

  1. systemctl stop firewalld
  2. systemctl disable firewalld
  3. systemctl mask firewalld

2.关闭SElinux

  1. setenforce 0

3.安装依赖库

  1. yum -y install cmake gcc gcc-c++ libaio-dev libaio

0x05 编译参数

  1. cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  2.     -DMYSQL_DATADIR=/data/mysql \
  3.     -DDOWNLOAD_BOOST=1 \
  4.     -DWITH_BOOST=../boost_1_59_0 \
  5.     -DSYSCONFDIR=/etc \
  6.     -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  7.     -DWITH_PARTITION_STORAGE_ENGINE=1 \
  8.     -DWITH_FEDERATED_STORAGE_ENGINE=1 \
  9.     -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  10.     -DWITH_MYISAM_STORAGE_ENGINE=1 \
  11.     -DWITH_EMBEDDED_SERVER=1 \
  12.     -DENABLE_DTRACE=0 \
  13.     -DENABLED_LOCAL_INFILE=1 \
  14.     -DDEFAULT_CHARSET=utf8mb4 \
  15.     -DEXTRA_CHARSETS=all

0x06 开始安装

  1. cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  2.     -DMYSQL_DATADIR=/data/mysql \
  3.     -DDOWNLOAD_BOOST=1 \
  4.     -DWITH_BOOST=../boost_1_59_0 \
  5.     -DSYSCONFDIR=/etc \
  6.     -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  7.     -DWITH_PARTITION_STORAGE_ENGINE=1 \
  8.     -DWITH_FEDERATED_STORAGE_ENGINE=1 \
  9.     -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  10.     -DWITH_MYISAM_STORAGE_ENGINE=1 \
  11.     -DWITH_EMBEDDED_SERVER=1 \
  12.     -DENABLE_DTRACE=0 \
  13.     -DENABLED_LOCAL_INFILE=1 \
  14.     -DDEFAULT_CHARSET=utf8mb4 \
  15.     -DEXTRA_CHARSETS=all
  16.  make && make -j4 install

耐心等待它编译完成。大概过程持续半个小时或更长时间。

0x07 添加自启

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

Centos7

  1. chkconfig --add mysqld
  2. chkconfig mysqld on

Debian/Ubuntu

  1. update-rc.d mysqld defaults

0x08 启动mysql

  1. systemctl restart mysqld

0x09 结束

(完)

 

 

 

 

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: