编译安装MySQL8.0

MySQL 8.0正式版8.0.11已发布,官方表示MySQL 8要比MySQL 5.7快2倍,还带来了大量的改进和更快的性能。

注意:从MySQL 5.7升级到MySQL 8.0仅支持通过使用就地方式进行升级,并且不支持从MySQL 8.0降级到MySQL 5.7

(或从某个MySQL 8.0版本降级到任意一个更早的MySQL 8.0版本)。唯一受支持的替代方案是在升级之前对数据进行备份。


操作系统说明:CentOS 6.4

数据库版本:MySQL 8.0.0

一。环境准备

yum安装ncurses-devel - y

yum安装libaio - y

yum安装glibc-devel。i686 glibc-devel - y

yum安装gcc gcc-c + + - y

另外,MySQL8.0需要用gcc的版本为4.8以上,而centos 6.4通过百胜只能安装到4.4.7,所以在安装MySQL8.0之前需要手动安装更高版本的gcc,我这里以gcc-8.8.2为例:

wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.gz

tar xf gcc-4.8.2.tar。广州

cd, gcc-4.8.2

#载编译需要的依赖包:。/contrib/download_prerequisites

。/configure——prefix=/usr/地方/gcc-4.8.2/,——enable-bootstrap enable-threads=posix——enable-languages=c, c++, objc, obj-c + +

使,,使安装

说明:做的时间会很长。

安装完后,还需要将原来的gcc环境用新版本的gcc替换掉,否则mysql在安装时还是用的原来的gcc:

mv/usr/bin/gcc/usr/bin/gcc447

mv/usr/bin/g + +/usr/bin/g + + 447

mv/usr/bin/c + +/usr/bin/c + + 447

mv/usr/bin/cc/usr/bin/cc447

ln - s/usr/local/gcc-4.8.2/bin/gcc/usr/bin/gcc

ln - s/usr/local/gcc-4.8.2/bin/g + +/usr/bin/g + +

ln - s/usr/local/gcc-4.8.2/bin/c + +/usr/bin/c + +

ln - s/usr/local/gcc-4.8.2/bin/gcc/usr/bin/cc

mv/usr/lib64/libstdc + + . so。6/usr/lib64/libstdc + + .so.6。贝克

ln - s/usr/local/gcc-4.8.2/lib64/libstdc + + .so.6.0.18/usr/lib64/libstdc + + . so。6

解决如下问题:

接着,安装boost库:

wget - c http://sourceforge.net/projects/boost/files/boost/1.60.0/boost_1_60_0.tar.bz2,——no-check-certificate

tar xf boost_1_60_0.tar.bz2 \ ? r \=\和ts \=1479114685 \, use_mirror \=ncu cd boost_1_60_0

。/bootstrap.sh

。/b2级线程=多链接=

共享。/b2安装线程共享=多链接=

二。安装mysql8.0

#下载和解压mysql

wget - c, http://dev.mysql.com/get/downloads/mysql - 8.0 -/- mysql -增加- 8.0.0 dmr.tar.gz

tar xf mysql-boost-8.0.0-dmr.tar。广州

#编译安装cd mysql-8.0.0-dmr mysql

cmake -DCMAKE_INSTALL_PREFIX=/usr/地方/mysql, \

-DMYSQL_DATADIR=/usr/地方/mysql/数据/-DSYSCONFDIR=\ etc \ mysql \

-DWITH_INNOBASE_STORAGE_ENGINE=1,\

-DMYSQL_TCP_PORT=3306,\

-DENABLED_LOCAL_INFILE=1,\

-DEXTRA_CHARSETS=所有,\

-DDEFAULT_CHARSET=utf8,\

-DDEFAULT_COLLATION=utf8_general_ci, \

-DWITH_BOOST=/tmp/boost_1_60_0/

make install

#新增mysql用户和组,并配置mysql用户对数据库目录的权限

groupadd  mysql,

useradd  -g  mysql  mysql,

乔恩mysql。mysql/usr/local/mysql - r

#初始化mysql

cd,/usr/local/mysql

bin/mysqld——初始化用户=mysql,——basedir=/usr/地方/mysql ——datadir=/usr/地方/mysql/数据/

bin/mysql_ssl_rsa_setup

#配置文件

cp 。/支持文件/my-default.cnf ,/etc/my . cnf中所做

vim/etc/my.cnf

(mysqld) datadir=/usr/地方/mysql/数据/

套接字=/var/lib/mysql/mysql.sock mysql用户=

推荐#禁用符号链接,以防止各种安全风险

符号链接=0

pid文件=/var/run/mysqld/mysqld.pid

日志错误=/var/log/mysqld。日志

#创建进程文件目录

mkdir /var/运行/mysqld

chown  mysql /var/运行/mysqld/, - r

#设置环境变量

echo “export 路径=$路径:/usr/地方/mysql/bin:/usr/地方/mysql/sbin",在祝辞,/etc/profile

source ,/etc/profile

#设置开机启动脚本

cd,/usr/local/mysql

cp支持文件/mysql。服务器/etc/init.d/mysql.服务器

chkconfig mysql。服务器

服务mysql。服务器启动


编译安装MySQL8.0