美文网首页
MySQL复制功能&基于日志点复制

MySQL复制功能&基于日志点复制

作者: Sara_d94e | 来源:发表于2018-03-28 11:37 被阅读0次

        MySQL的复制功能是基于MySQL的大规模、高性能的基础。

        web服务器产生大量的突增访问,只需要增加几台web服务器,保证代码一直即可。而MySQL复制就没有那么简单,由于事务性就不能简单复制。

        MySQL复制功能提供分担读负载。使用复制功能,对数据库服务器进行水平扩展,为数据库服务器增加一个或多个备库,这些备库就可以分担主数据库的读负载。同时,备份工作也为高可用、灾难恢复、备份提供更多的选择.

        MySQL的复制是基于主库上二进制日志,将主库上的日志复制到从库上完成的,所以mysql的复制是异步的。所以同一时间点上主库的数据和备库上会存在不一直的情况,并且无法保证主库和备库的延迟

可解决问题

    1、利用MySQL功能可以实现不同服务器上的数据分布,也可以实现不同机房数据分布。利用二进制日志增量进行的,不需要太多带宽,特别是基于语句的复制时,所需要的带宽就更少了。但基于行的复制,进行大批量的更改时会对带宽还来一定的压力,但在同一IDC机房复制,压力可忽略。但在垮IDC环境下复制就需哟啊考虑。大批量数据复制最好分批来进行。

    2、实现不同服务器上的数据分布

    3、实现读取的负载均衡,需要其他组件配合完成。利用DNS轮询的方式把程序的读连接到不同的备份数据库,或者可利用LVS、haproxy这样的方式也可以。MySQL是非共享架构,同样的数据分布在堕胎服务器上。

    4、增加数据安全性,利用备库的备份来减少主库负载、

    5、数据库在线升级

MySQL二进制日志

    MySQL服务层日志

        和使用存储引擎无关,是服务器层记录的

        二进制日志:记录了所有对MySQL数据库的修改事件,包括在删改查和对表结构的修改事件。log中记载的都是成功执行了的,但对于回滚的语句是不会记载在binlog日志中的。

    查看工具binlog工具查看看

二进制格式设置

         基于段的格式 binlog_format = STATEMENT

         基于行的格式 binlog_format = ROW 推荐     binlog_row_image = [FULL|MINIMAL(推荐)|NOBLOG] 

            (误操作修改了数据库中的数据,同时又没有备份可以恢复,我们就可以通过分析二级制日志,对日志中记录的数据修改操作做反向处理的方式来达到恢复数据的目的)

        混合日志格式 binlog_format = MIXED

    查看日志格式

    查看刷新

        慢查询日志、通用日志。

    MySQL存储引擎层日志

        如innodb的重做日志和回滚日志

MySQL复制工作原理

配置MySQL复制

基于日志点的复制配置步骤

在主DB服务器上建立复制账号

create user ‘repl’ @ ‘ip段’ identified by ‘password’

授权

grant replication slave on ‘.’ to 'repl' @ 'ip段'

配置主数据库服务器

bin_log = mysql-bin //启动mysql的二进制日志

server_id = 100

配置从数据库服务器

bin_log = mysql-bin

server_id = 101

relay_log = mysql-relay-bin

log_slave_update = on (可选)

read_only = on

初始化从服务器数据

通过主数据库备份效率比较高

    mysqldump --master-data=2 -single-transaction //逻辑备份存为sql文件

    xtrabackup --slave-info //innodb推荐

启动复制电路


相关文章

  • MySQL复制功能&基于日志点复制

    MySQL的复制功能是基于MySQL的大规模、高性能的基础。 web服务器产生大量的突增访问,只需要增加几...

  • MySQL 5.7复制实例

    MySQL复制基础 1.MySQL的复制是异步复制 2.MySQL复制是基于binlog日志。 存在三种日志格式:...

  • MYSQL--进阶

    MYSQL主从复制 类别 基于日志点的复制支持MMM和MHA架构 基于GTID方式的复制GTID= source_...

  • Mysql主从复制

    基于日志点的复制和基于GTID的复制; 基于日志点的主从复制 基于GTID的主从复制

  • MariaDB基于GTID的主从复制

    环境:MariaDB 10.1.23 MySQL复制有两种方式:基于日志点的复制、基于GTID的复制,两种方式都依...

  • MySQL主从复制

    配置MySQL主从复制,先来讲讲一些理论。 MySQL复制功能提供分担读负载。基于二进制日志的复制是异步的,那么复...

  • mysql 主从复制

    1. mysql的复制是异步复制,有延迟 原理: 2. mysql的复制是基于BinLog日志 Statemen...

  • mysql binlog基本原理

    基于binlog的主从复制 Mysql 5.0以后,支持通过binary log(二进制日志)以支持主从复制。复制...

  • Mysql 复制架构

    Mysql 复制架构 数据库复制的其实就是数据的同步,Mysql数据库基于binary log日志进行数据增量同步...

  • MySQL:1.基于日志(binlog)主从复制(Master-

    title: MySQL:1.基于日志(binlog)主从复制(Master-Slave)categories: ...

网友评论

      本文标题:MySQL复制功能&基于日志点复制

      本文链接:https://www.haomeiwen.com/subject/ghtycftx.html