详情页标题前

阿里云RDS数据库逻辑复制(pglogical)-云淘科技

详情页1

pglogical是一个完全作为PostgreSQL扩展实现的逻辑复制系统,为PostgreSQL数据库提供了逻辑流复制发布和订阅的功能。

前提条件

  • RDS PostgreSQL实例大版本为10或以上。

  • 实例内核小版本为20230830或以上。

    重要

    20230830内核小版本之前已支持此插件,但为了规范插件管理,提升RDS PostgreSQL在插件侧的安全防护,RDS计划在内核版本迭代中陆续对部分存在安全风险的插件进行优化,部分插件在低内核小版本无法创建,更多信息,请参见【产品/功能变更】RDS PostgreSQL限制创建插件说明。

    • 如果您在20230830内核小版前已经使用了此插件,则不影响使用。

    • 如果您首次创建或重新创建此插件,请升级内核小版本到最新。

  • 使用该插件前,需要将pglogical加入到shared_preload_libraries参数中。

    您可以使用RDS PostgreSQL参数设置功能,为shared_preload_libraries参数添加pglogical。具体操作,请参见设置实例参数。

    说明

    该参数修改后,在提交参数时会立即重启实例。重启实例会造成连接中断,重启前请做好业务安排,并确保应用有自动重连机制,谨慎操作。

背景信息

pglogical是PostgreSQL的拓展模块,使用发布/订阅模型复制数据,使选择性复制更加高效。提供比Slony、Bucardo或Londiste更快的复制速度,支持跨版本升级。支持多场景复制,具体包括:

  • 数据库大版本升级。

  • 完整的数据库复制。

  • 利用复制集,选择性地筛选表、行、列。

  • 可从多个上游服务器,做数据的聚集和合并。

使用插件

  • 开启pglogical。

    CREATE EXTENSION pglogical;
  • 关闭pglogical。

    DROP EXTENSION pglogical;

快速配置逻辑流复制

  1. 在发布端创建发布节点。

    说明

    发布节点中host固定配置为127.0.0.1,port请通过SQL命令SHOW PORT;查询获取。

    SELECT pglogical.create_node(
        node_name := 'provider',
        dsn := 'host=127.0.0.1 port= dbname=test user=provider_user password=provider_pass'
    );
  2. 配置复制集。

    将public中的所有表添加到default复制集。

    SELECT pglogical.replication_set_add_all_tables('default', ARRAY['public']);

    说明

    • 复制集用来控制将发布节点数据库中的哪些表以及这些表上的哪些操作发布给订阅者。

    • default复制集表示发布所有表及这些表的所有操作。更多复制集定义请参见pglogical官方文档。

  3. 在订阅端创建订阅节点。

    说明

    订阅节点中host固定配置为127.0.0.1,port请通过SQL命令SHOW PORT;查询获取

    SELECT pglogical.create_node(
        node_name := 'subscriber',
        dsn := 'host=127.0.0.1 port= dbname=test user=subscriber_user password=subscriber_pass'
    );
  4. 在订阅端创建订阅。

    说明

    订阅中host必须配置为发布端内网地址,port配置为发布端内网端口。

    SELECT pglogical.create_subscription(
        subscription_name := 'subscription',
        provider_dsn := 'host= port= dbname=test user=provider_user password=provider_pass'
    );

    创建订阅后,将在后台启动同步和复制流程。

相关参考

pglogical的详细说明,请参见pglogical官方文档。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/155479.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 阿里云云原生大数据计算服务 MaxComputeREMOVE ACCOUNTPROVIDER-云淘科技

    删除当前项目空间的RAM账号体系。 使用限制 本文中的命令您需要在MaxCompute客户端执行。本命令为CMD命令,仅支持在客户端(odpscmd)工具中运行。 注意事项 项目空间非工作空间。项目空间名称获取方式:登录MaxCompute控制台,选择工作区 > 项目管理,项目管理页面的MaxCompute项目名。 MaxCompute没有提供创建和删…

  • 阿里云日志服务SLS加工历史数据-云淘科技

    日志服务支持加工历史数据,本文介绍加工历史数据的操作步骤及相关问题。 前提条件 已采集数据到日志服务。具体操作,请参见数据采集。 如果您使用的是RAM用户,则需要先授予RAM用户数据加工操作权限。具体操作,请参见授予RAM用户数据加工操作权限。 创建数据加工任务 登录日志服务控制台。 进入数据加工页面。 在Project列表区域,单击目标Project。 在…

    2023年12月10日
  • 阿里云ECS云服务器实例概述-云淘科技

    ECS实例是云上的虚拟计算服务器,包含vCPU、内存、操作系统、网络、磁盘等基础组件。您可以使用阿里云提供的控制台、API等管理工具创建和管理ECS实例,像使用本地服务器一样管理ECS实例的状态、应用等,还可以灵活地升级计算、存储等能力。 实例基础配置 实例基础配置决定一台实例所需的基础资源,主要包括: 实例规格 实例规格定义了ECS实例在计算性能、存储性能…

    阿里云服务器 2023年12月9日
  • 阿里云对象存储OSS列举存储空间-云淘科技

    存储空间(Bucket)按字母序排列。您可以结合实际场景列举当前账号下的所有存储空间、指定前缀的存储空间、指定个数的存储空间等。 列举条件 您可以通过设置prefix、marker或者max-keys参数列举满足指定条件的存储空间。 参数名称 描述 prefix 限制返回的存储空间名称必须以prefix作为前缀。如果不指定该参数,则返回所有存储空间。 mar…

    2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云日志服务SLS字段值提取函数-云淘科技

    本文介绍字段值提取函数的语法规则,包括参数解释、函数示例等。 函数列表 类型 函数 说明 正则提取 e_regex 根据正则表达式提取字段的值并赋值给其他字段。 支持和其他函数组合使用。相关示例,请参见解析Java报错日志。 JSON提取 e_json 对特定字段中的JSON对象进行JSON操作,包括JSON展开、JMES提取或者JMES提取后再展开。 支持…

    2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。