Skip to content

Commit

Permalink
tools/binlog: optimize the TiDB-Binlog documents (#1291)
Browse files Browse the repository at this point in the history
* fix some problems with suggestions from Lilian and Calvin
  • Loading branch information
ericsyh authored Apr 29, 2019
1 parent 6061403 commit caea115
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 14 deletions.
2 changes: 1 addition & 1 deletion tools/binlog/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ TiDB-Binlog 支持以下功能场景:
* **数据同步**:同步 TiDB 集群数据到其他数据库
* **实时备份和恢复**:备份 TiDB 集群数据,同时可以用于 TiDB 集群故障时恢复

##TiDB-Binlog 的整体架构
## TiDB-Binlog 的整体架构

![TiDB-Binlog 架构](/media/tidb_binlog_cluster_architecture.png)

Expand Down
12 changes: 4 additions & 8 deletions tools/binlog/tidb-binlog-local.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ category: tools

## TiDB-Binlog-local 简介

TiDB-Binlog 是一个用于收集 TiDB 的 Binlog,并提供实时备份和同步功能的商业工具。
TiDB-Binlog 是用于收集 TiDB 的 Binlog,并提供实时备份和同步功能的商业工具。

TiDB-Binlog 支持以下功能场景:

Expand All @@ -16,19 +16,15 @@ TiDB-Binlog 支持以下功能场景:

## TiDB-Binlog-local 架构

首先介绍 TiDB-Binlog 的整体架构。
下图为 TiDB-Binlog 的整体架构。

![TiDB-Binlog 架构](/media/architecture.jpeg)

TiDB-Binlog 集群主要分为两个组件:

#### Pump
- **Pump** 是一个守护进程,在每个 TiDB 的主机上后台运行。他的主要功能是实时记录 TiDB 产生的 Binlog 并顺序写入磁盘文件

Pump 是一个守护进程,在每个 TiDB 的主机上后台运行。他的主要功能是实时记录 TiDB 产生的 Binlog 并顺序写入磁盘文件

#### Drainer

Drainer 从各个 Pump 节点收集 Binlog,并按照在 TiDB 中事务的提交顺序转化为指定数据库兼容的 SQL 语句,最后同步到目的数据库或者写到顺序文件
- **Drainer** 从各个 Pump 节点收集 Binlog,并按照在 TiDB 中事务的提交顺序转化为指定数据库兼容的 SQL 语句,最后同步到目的数据库或者写到顺序文件

## TiDB-Binlog-local 安装

Expand Down
12 changes: 7 additions & 5 deletions tools/binlog/upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: TiDB-Binlog Cluster 版本升级方法
category: tools
---

## TiDB-Binlog Cluster 版本升级方法
# TiDB-Binlog Cluster 版本升级方法

新版本的 TiDB(v2.0.8-binlog、v2.1.0-rc.5 及以上版本)不兼容 [Kafka 版本](/tools/binlog/tidb-binlog-kafka.md)以及 [Local 版本](/tools/binlog/tidb-binlog-local.md)的 TiDB-Binlog,集群升级到新版本后只能使用 Cluster 版本的 TiDB-Binlog。如果在升级前已经使用了 Kafka/Local 版本的 TiDB-Binlog,必须将其升级到 Cluster 版本。

Expand All @@ -15,11 +15,13 @@ category: tools
| Kafka | TiDB 1.0 ~ TiDB 2.1 RC5 | TiDB 1.0 支持 local 版本和 Kafka 版本的 TiDB-Binlog。 |
| Cluster | TiDB v2.0.8-binlog,TiDB 2.1 RC5 及更高版本 | TiDB v2.0.8-binlog 是一个支持 Cluster 版本 TiDB-Binlog 的 2.0 特殊版本。 |

升级流程
## 升级流程

* 如果能接受重新导全量数据,则可以直接废弃老版本,按本文档部署。
> **注意:**
>
> 如果能接受重新导全量数据,则可以直接废弃老版本,按 [TiDB-Binlog 集群部署](/tools/binlog/deploy.md)中的步骤重新部署。
* 如果想从原来的 checkpoint 继续同步,则使用以下升级流程
如果想从原来的 checkpoint 继续同步,使用以下升级流程
1. 部署新版本 Pump。
2. 暂停 TiDB 集群业务。
3. 更新 TiDB 以及配置,写 Binlog 到新的 Pump Cluster。
Expand All @@ -35,6 +37,6 @@ category: tools

如果返回的 `Synced` 为 true,则可以认为 Binlog 数据已经全部同步到了下游。
6. 启动新版本 Drainer;
7. 下线无用的老版本的 Pump、Drainer 以及依赖的 Kafka 和 ZookeSeper。
7. 下线老版本的 Pump、Drainer 以及依赖的 Kafka 和 ZookeSeper。


0 comments on commit caea115

Please sign in to comment.