开发者社区> 问答> 正文

PostgreSQL同步至RDS PostgreSQL中的准备工作是什么?

PostgreSQL同步至RDS PostgreSQL中的准备工作是什么?

展开
收起
游客yzrzs5mf6j7yy 2021-12-13 12:05:19 501 0
1 条回答
写回答
取消 提交回答
  • 如自建PostgreSQL版本为9.4.8~10.0,则您需执行如下准备工作。 从官网下载PostgreSQL源码并完成编译安装。 根据源库自建PostgreSQL的版本,从PostgreSQL官网下载对应版本的源码。 依次执行命令./configure、make、make install,配置、编译并安装源码。 注意 编译安装PostgreSQL时,PostgreSQL的操作系统版本需与GCC(GNU编译器套件)版本保持一致。 如执行./configure遇到报错,您可以根据报错提示调整命令。例如,报错信息为readline library not found. Use --without-readline to disable readline support.,则您可以调整命令为./configure --without-readline. 如您选择其他方式安装PostgreSQL,需要在系统版本以及GCC版本相同的测试环境下,编译ali_decoding。 下载DTS提供的插件ali_decoding并完成编译安装。 下载ali_decoding。 将ali_decoding整个目录拷贝至PostgreSQL(已完成编译安装)的contrib目录中。 contrib目录 进入ali_decoding目录,将Makefile文件的内容替换为如下:

    contrib/ali_decoding/Makefile

    MODULE_big = ali_decoding MODULES = ali_decoding OBJS = ali_decoding.o

    DATA = ali_decoding--0.0.1.sql ali_decoding--unpackaged--0.0.1.sql

    EXTENSION = ali_decoding

    NAME = ali_decoding

    #subdir = contrib/ali_decoding #top_builddir = ../.. #include $(top_builddir)/src/Makefile.global #include $(top_srcdir)/contrib/contrib-global.mk

    #PG_CONFIG = /usr/pgsql-9.6/bin/pg_config #pgsql_lib_dir := $(shell $(PG_CONFIG) --libdir) #PGXS := $(shell $(PG_CONFIG) --pgxs) #include $(PGXS)

    源码安装用以下

    ifdef USE_PGXS PG_CONFIG = pg_config PGXS := $(shell $(PG_CONFIG) --pgxs) include $(PGXS) else subdir = contrib/ali_decoding top_builddir = ../.. include $(top_builddir)/src/Makefile.global include $(top_srcdir)/contrib/contrib-global.mk endif 进入ali_decoding目录,依次执行命令make、make install,编译ali_decoding,并得到安装ali_decoding所需的文件。 将如下文件复制至指定位置。 指定位置 根据待同步对象所属的数据库和schema信息,在目标RDS PostgreSQL中创建相应数据库和schema(schema名称须一致),详情请参见创建数据库和Schema 管理。 如自建PostgreSQL版本为10.1~13,则您需执行如下准备工作。 登录自建PostgreSQL所属的服务器。 修改配置文件postgresql.conf,将配置文件中的wal_level设置为logical。 设置wal_level 将DTS的IP地址加入至自建PostgreSQL的配置文件pg_hba.conf中。您只需添加目标数据库所在区域对应的DTS IP地址段,详情请参见迁移、同步或订阅本地数据库时需添加的IP白名单。 说明 关于该配置文件的设置请参见pg_hba.conf文件。如果您已将信任地址配置为0.0.0.0/0(如下图所示),可跳过本步骤。

    根据待同步对象所属的数据库和schema信息,在目标RDS PostgreSQL中创建相应数据库和schema(schema名称须一致),详情请参见创建数据库和Schema 管理。

    2021-12-13 13:00:58
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
TcpRT:阿里云RDS智能诊断系统云上大规模部署自动化服务的客户实践经验 立即下载
TcpRT:面向大规模海量云数据库的服务质量实时采集与诊断系 立即下载
袋鼠云基于阿里云RDS的数据库架构实践 立即下载

相关镜像