【笔记】开发指南—Replication

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介: 特性 兼容MySQL Binlog文件格式和Dump协议。PolarDB-X的全局Binlog是在DN节点的物理Binlog基础之上生成的,剔除了分布式事务的细节,只保留了单机事务的特性。同时,全局Binlog兼容MySQL Binlog文件格式,在数据订阅方式上也完全兼容MySQL Dump协议,您可以像使用单机MySQL一样来订阅PolarDB-X的事务日志。

特性

  • 兼容MySQL Binlog文件格式和Dump协议。PolarDB-X的全局Binlog是在DN节点的物理Binlog基础之上生成的,剔除了分布式事务的细节,只保留了单机事务的特性。同时,全局Binlog兼容MySQL Binlog文件格式,在数据订阅方式上也完全兼容MySQL Dump协议,您可以像使用单机MySQL一样来订阅PolarDB-X的事务日志。
  • 保证分布式事务的完整性和有序性。全局Binlog不是将物理Binlog简单地汇总到一起,而是通过合并模块和归并模块保证了分布式事务的完整性和有序性,从而实现高数据一致性。例如,在转账场景下,基于全局Binlog能力,接入PolarDB-X的下游MySQL,可以在任何时刻查询到一致的余额。
  • 提供7x24小时服务能力,运维简单。全局Binlog剔除了PolarDB-X的内部细节(此时您可以将PolarDB-X看作一个单机MySQL), 来避免实例内部发生的变化对数据订阅链路的影响。PolarDB-X通过一系列的协议和算法来保证全局Binlog的服务能力,确保实例内部发生的各种变更(如HA切换、增删节点、执行Scale Out或分布式DDL等操作)不会影响数据订阅链路的正常工作。

使用限制

  • 暂不支持Gtid(Global Transaction Identifier)模式下的数据订阅方式。
  • 仅当事务策略指定为TSO时(即更高强度的一致性保证),才支持对分布式事务的合并。

数据订阅源端支持的SQL语句

  • 查看PolarDB-X全局Binlog文件列表。
SHOW BINARY LOGS

  • 说明 执行上述SQL语句需要有SUPER或REPLICATION CLIENT权限。权限操作请参见账号和权限系统

查看PolarDB-X作为主Master角色的Binlog信息。
SHOW MASTER STATUS

  • 说明 执行上述SQL语句需要有SUPER或REPLICATION CLIENT权限。权限操作请参见账号和权限系统
  • 查看全局Binlog文件中的具体事件信息。
SHOW BINLOG EVENTS
[IN 'log_name']
[FROM pos]
[LIMIT [offset,] row_count]

  • 说明 执行上述SQL语句需要有SUPER或REPLICATION CLIENT权限。权限操作请参见账号和权限系统

数据订阅目标端支持的SQL语句

如果数据订阅目标端是标准MySQL,目前支持MySQL的Replicate指令。

  • 在数据订阅目标端设置需要同步的源端数据源信息。
CHANGE MASTER TO option [, option] ... [ channel_option ]
option: {
MASTER_BIND = 'interface_name'
| MASTER_HOST = 'host_name'
| MASTER_USER = 'user_name'
| MASTER_PASSWORD = 'password'
| MASTER_PORT = port_num
| PRIVILEGE_CHECKS_USER = {'account' | NULL}
| REQUIRE_ROW_FORMAT = {0|1}
| REQUIRE_TABLE_PRIMARY_KEY_CHECK = {STREAM | ON | OFF}
| ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS = {OFF | LOCAL | uuid}
| MASTER_LOG_FILE = 'source_log_name'
| MASTER_LOG_POS = source_log_pos
| MASTER_AUTO_POSITION = {0|1}
| RELAY_LOG_FILE = 'relay_log_name'
| RELAY_LOG_POS = relay_log_pos
| MASTER_HEARTBEAT_PERIOD = interval
| MASTER_CONNECT_RETRY = interval
| MASTER_RETRY_COUNT = count
| SOURCE_CONNECTION_AUTO_FAILOVER = {0|1}
| MASTER_DELAY = interval
| MASTER_COMPRESSION_ALGORITHMS = 'value'
| MASTER_ZSTD_COMPRESSION_LEVEL = level
| MASTER_SSL = {0|1}
| MASTER_SSL_CA = 'ca_file_name'
| MASTER_SSL_CAPATH = 'ca_directory_name'
| MASTER_SSL_CERT = 'cert_file_name'
| MASTER_SSL_CRL = 'crl_file_name'
| MASTER_SSL_CRLPATH = 'crl_directory_name'
| MASTER_SSL_KEY = 'key_file_name'
| MASTER_SSL_CIPHER = 'cipher_list'
| MASTER_SSL_VERIFY_SERVER_CERT = {0|1}
| MASTER_TLS_VERSION = 'protocol_list'
| MASTER_TLS_CIPHERSUITES = 'ciphersuite_list'
| MASTER_PUBLIC_KEY_PATH = 'key_file_name'
| GET_MASTER_PUBLIC_KEY = {0|1}
| NETWORK_NAMESPACE = 'namespace'
| IGNORE_SERVER_IDS = (server_id_list)
}
channel_option:
FOR CHANNEL channel
server_id_list:
[server_id [, server_id] ... ]
  • 开启主备同步
START {SLAVE | REPLICA}
  • 停止主备同步
STOP {SLAVE | REPLICA}
  • 重置主备同步,需要先停止主备同步
RESET {SLAVE | REPLICA} [ALL] [channel_option]
channel_option:
FOR CHANNEL channel

  • 说明 如果目标端是PolarDB-X,目前暂时不支持相关Replicate指令。
相关实践学习
跟我学:如何一键安装部署 PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署 PolarDB-X。
相关文章
|
SQL 运维 算法
【笔记】开发指南—Replication
特性 兼容MySQL Binlog文件格式和Dump协议。PolarDB-X的全局Binlog是在DN节点的物理Binlog基础之上生成的,剔除了分布式事务的细节,只保留了单机事务的特性。同时,全局Binlog兼容MySQL Binlog文件格式,在数据订阅方式上也完全兼容MySQL Dump协议,您可以像使用单机MySQL一样来订阅PolarDB-X的事务日志。
|
SQL 关系型数据库 MySQL
开发指南—Sequence—概述
本文将为您介绍Sequence的相关概念和支持的类型。
102 0
|
SQL 运维 算法
开发指南—Replication
特性 兼容MySQL Binlog文件格式和Dump协议。PolarDB-X的全局Binlog是在DN节点的物理Binlog基础之上生成的,剔除了分布式事务的细节,只保留了单机事务的特性。同时,全局Binlog兼容MySQL Binlog文件格式,在数据订阅方式上也完全兼容MySQL Dump协议,您可以像使用单机MySQL一样来订阅PolarDB-X的事务日志。
|
SQL 负载均衡 前端开发
pgpool-II 4.3 中文手册 - 入门教程
pgpool-II 4.3 中文手册 - 入门教程
589 0
pgpool-II 4.3 中文手册 - 入门教程
|
存储 关系型数据库 MySQL
MyRocks简介
--- title: MySQL · 特性分析 · MyRocks简介 author: 济天 --- RocksDB是facebook基于LevelDB实现的,目前为facebook内部大量业务提供服务。经过facebook大量工作,将RocksDB作为MySQL的一个存储引擎移植到MySQL,称之为MyRocks。 经过两年的发展,MyRocks已经比较成熟(RC阶段),现已进入了
2763 0
|
监控 Java Android开发
微信Mars——xlog使用全解析
微信Mars——xlog使用全解析 如约而至,微信在12月19日开源了底层的通信库——Mars,其中有一个部分,是一个高性能的日志模块——xlog。
5502 0
|
21小时前
|
存储 关系型数据库 MySQL
数据管理的艺术:PolarDB开源版详评与实战部署策略(一)
PolarDB-X是阿里巴巴自研的高性能云原生分布式数据库,基于共享存储的Shared-nothing架构,支持MySQL生态,具备金融级高可用、分布式水平扩展、HTAP混合负载等能力。它通过CN(计算节点)和DN(存储节点)实现计算与存储分离,保证数据强一致性,并支持全局二级索引和多主多写。PolarDB-X开源版提供更高程度的定制化和控制权,适合追求技术自主性和成本优化的开发者。部署方式包括RPM包、PXD工具和Kubernetes,其中PXD工具提供了一键部署的便利性。
34596 10
|
4天前
|
关系型数据库 Serverless 分布式数据库
高峰无忧,探索PolarDB PG版Serverless的弹性魅力
在数字经济时代,数据库成为企业命脉,面对爆炸式增长的数据,企业面临管理挑战。云原生和Serverless技术革新数据库领域,PolarDB PG Serverless作为阿里云的云原生数据库解决方案,融合Serverless与PostgreSQL,实现自动弹性扩展,按需计费,降低运维成本。它通过计算与存储分离技术,提供高可用性、灾备策略和简化运维。PolarDB PG Serverless智能应变业务峰值,实时监控与调整资源,确保性能稳定。通过免费体验,用户可观察其弹性性能和价格力,感受技术优势。
|
14天前
|
存储 缓存 监控
你的Redis真的变慢了吗?性能优化如何做
本文先讲述了Redis变慢的判别方法,后面讲述了如何提升性能。
102235 5
|
14天前
|
机器学习/深度学习 并行计算 算法
Transformer 一起动手编码学原理
学习Transformer,快来跟着作者动手写一个。
94250 8