如何安装mysql5.7.2_centos7.2安装mysql5.7.13

一、MySQL5.7主要特性:

原生支持Systemd

更好的性能:对于多核CPU、固态硬盘、锁有着更好的优化

更好的InnoDB存储引擎

更为健壮的复制功能:复制带来了数据完全不丢失的方案

mysql-5.6.3已经支持了多线程的主从复制

新增sys库,以后这会是DBA访问最频繁的库

二、安装mysql5.7.13

1.系统环境:

FjofAxNgQRRJ9kn7yo9tC49h-R9r

因为centos7.2默认安装了mariadb-libs,所以先要将其卸载。

FiZ-EYDMZ9MePVUwaSA-_BgqM1_g

2.安装相关依赖包(gcc已经安装)

1)安装cmake

FrzqHsDo76CmT7QMS6Joi7VFXzvy

源码包的下载地址:http://www.cmake.org/download/

cmake 的版本

Fkgod_PlvgDfCrMMNof7VcrBlnd1

2)安装ncurses,字符终端处理库

Fsad4Xk_UqzCOgkmVawrUe2XpPMi

3)安装bison,linux下C/C++语法分析器

FtOC6X9ju5X-6zBBc9X6UbWHctKG

源码包下载地址:http://ftp.gun.org/gnu/bison

4)安装boost,从MySQL5.7.5开始Boost库是必需的,mysql源码中用到了C++的Boost库,要求必须安装boost1.59.0或以上的版本。

FhT4zw1cDCJonEfgxrvSsgXs8pPR

5)创建mysql用户和用户组及目录

FikWeCXuuAbIq_igPhBFBAvcs4W2

Fp3EzA1w9zM_jOhYfTKhnCLZq5iW

3.编译安装mysql

解压源码包

FomQ0af3z4OydHRs6bD51T5Ncufu

FhcOl1oNcJPKcJygx3fOc-5SSpo1

编译前的配置

Ft7quG0SeU0SzOg2F17xUKZGw6sv

配置解释:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql//MySQL安装的根目录

-DMYSQL_DATADIR=/usr/local/mysql/data//MySQL数据库文件存放目录

-DSYSCONFDIR=/etc//MySQL配置文件所在目录

-DWITH_MYISAM_STORAGE_ENGINE=1//添加MYISAM引擎支持

DWITH_INNOBASE_STORAGE_ENGINE=1//添加InnoDB引擎支持

-DWITH_ARCHIVE_STORAGE_ENGINE=1//添加ARCHIVE引擎支持

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock//指定mysql.sock位置

-DWITH_PARTITION_STORAGE_ENGINE=1//安装支持数据库分区

-DEXTRA_CHARSETS=all//设置MySQL支持所有的扩展字符

-DDEFAULT_CHARSET=utf8//设置MySQL的默认字符

-DDEFAULT_COLLATION=utf8_general_ci//设置默认字符集校对规则

-DWITH_SYSTEMD=1//可使用systemd控制mysql服务

-DWITH_BOOST=/usr/local/boost//指向boost库所在目录

开始编译、安装

Fj6v6ijlotgM8h6J14vnW432yzme

FgPGYQh8s2EU36a1KnvYEbQlWdr7

注意:为了加快编译的速度,这里使用了"-j"这个参数,表示根据CPU核数指定编译时的线程数。默认为1个线程编译。

如果要重新运行cmake 配置,需要执行:

make  clean

rm  -f  CMakeCache.txt

优化执行路径

FobHAt9FLyzD_pZdj4m0dDmAZNJQ

4.设置权限并初始化MySQL系统授权表

Fr8ayfYipmdNsSPUs0vKePdZczks

更改mysql基本目录的属组和所有者

FvwaGC62QuUvR3slldrd-7lY7O4z

初始化,参数"--initialize-insecure"表示使用非安全的初始化方式,即数据库默认root的登录密码为空,如果换成参数"--initialize",则会为root随机生成一个密码字符串。

注意:mysql5.7.6之前的版本执行的脚本是/usr/local/mysql/bin/mysql_install_db

5.创建配置文件

Frs51K6XHfoS1cQLinrDzzPEUrDr

复制模板为新的mysql配置文件

Foh4gQ5DPFu6n9asvAciCv_VvBLL

修改mysql主配置文件

6.配置mysql自动启动

FhX_WJUaa66bPwnm6VpgwLj4d9IF

复制服务启动脚本文件(原生支持systemd)

FtpP5fy-nhEiQ_gRMB2xYVwPLk_8

发现启动失败,可以看看mysql的错误日志文件

FkTJToGw0jNwwfqe4O4iJdidgFRa

Fsj8fT7Vdx0SPb2USE5JC9Q0Jlbt

在mysqld服务启动时,把默认的pid文件指定到了/var/run/mysqld/目录下,而并没有事先建立该目录,所以在启动时报错。

FlQD8Kb8DLnUrWXn2xOezaoPqe0r

创建该目录,并修改权限。

Fh4u_DD917Lbl3nJoSNaknnbCucv

再次启动mysqld服务,成功。

三、实现基于ssl安全连接的主从复制

1.在主mysql创建SSL/RSA文件,启用ssl连接。

FoIf5vjKT3_c6WsO2zvBJRyanWEx

执行上述命令,会在/usr/local/mysql/data/目录下生成三组密钥对,在mysqld服务启动时,会自动寻找密钥对。

FhA-X0AOVsMQ-CHkBqaHl9D0YVQH

重启mysqld服务,查看mysql的错误日志,发现以上信息,说明mysql用户没有读取server-key.pem这个私钥的权限。

Fth8Si0mbriSaNR_5yLLWQjzg9yO

FjcxSfn0cOWfodH1sbPP1xPy2bny

赋予其他用户对server-key.pem的读取权限。

Fg6dAhn91LTk19GTTqMDTiVXrCtU

登录mysql,执行以上命令后,发现mysql支持了ssl的安全连接。

2.配置主从复制

1)mysql主节点配置

FiTpOF5xkAJ1bXSOaMyAesudzjvG

修改/etc/my.cnf,添加以上信息,指定二进制日志文件,并重启mysqld服务。

FieXzw-VOxb-uskxCVHDBbh9kkw8

查看主节点,记住二进制日志文件的名称和position的大小。

FnsuhMWouoaaUEIvCLe2bLZto1w9

创建一个用户,赋予复制的权限,用于从节点连接主节点。

FqjWHVsL8_sV-njlVZRETao6WP8d

开启防火墙例外

2)mysql从节点配置

FljPACy4PDNUGmUBh9JspKpx8xC0

修改/etc/my.cnf,添加relay-log中继日志的配置信息。

注意:server_id要唯一,不能和其他的mysql主机重复。

FhoE-eHgTaG5u2gNkjTy5XD4qZ7r

到主节点上,将这三个密钥发送到从节点上。

FgZG2R9JUgmsSgQZ2xYwOnAt2Em5

在从节点上查看复制过来的文件,发现client-key.pem的权限为600.

FjvLxEsTCWrTbYuHY4qVrJtJs8ac

给一个读取的权限,保证mysql用户可以访问。

FhsT3kGF9vtKNl53u_DiaXHfrmeK

继续在从节点上修改/etc/my.cnf,添加以上信息,指定密钥的位置,并重启myslqd服务。

Fq146hc7lDuHWpSF7tem9WHDJrBo

登录mysql后,执行以上命令,发现mysql已经支持了ssl的连接。

FvREdT2b7eULb9MQFa0z0fh7b7U6

验证:在从mysql使用ssl连接方式,连接主mysql,成功。

FpE8geGfGRqH3qMulA_U1g2cLJvk

在从节点上登录mysql,执行以上命令,指定主节点。

FqCCUrz3xuWaafDz9OWu_bPNw0NF

开启从

FqfcHxnqmamhUheDADxbctTmpER2

查看从节点的状态,保证IO和SQL这两个线程的状态为YES。

3)主从复制验证

在主mysql上创建数据

Flpr9_mGduOM-WRw_MAJxumxxQDA

Fmeq_rBgJqzb3wO8EdmN7XYqChoT

Flim5Ijgd12o_o9Th0LarWBrcDQp

Fm4yowbEZHKpnofIv_I0UNnO75mh

到从mysql上查看数据

FqGAPxIEfVmMqnr_9EOGIGpIKbuT

Fv-w_yBcEKulxu8Yf-kWcIniygPE

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值