社区首页 >问答首页 >从Windows上的Posgres到Linux上docker容器中的Postgres的逻辑复制

从Windows上的Posgres到Linux上docker容器中的Postgres的逻辑复制
EN

Stack Overflow用户
提问于 2020-11-30 09:49:21
回答 1查看 151关注 0票数 0

我使用的是bitnami/ PostgreSQL :latest镜像,并且我能够从一个Win32程序(使用Unidac驱动程序的Delphi)连接到一个docker容器中运行在Ubuntu服务器上的PostgreSQL数据库。

用户将使用Win32程序离线捕获现场调查数据,然后在线时希望将数据复制到Ubuntu服务器上的PostgreSQL数据库。

在我看来,我应该使用逻辑复制,因为用户可能只使用Ubuntu服务器上整个master数据库的一个子集。

我必须能够做一个映射的postgresql.conf和pg_hba.conf文件。在docker容器中运行PostgreSQL的docker-compose.yml文件的一部分:

代码语言:javascript
代码运行次数:0
复制
  postgres:
    restart: unless-stopped
    container_name: postgres
    image: bitnami/postgresql:latest
    environment:
      - TZ="Africa/Johannesburg"
      - POSTGRES_DATABASE=sdb_risk
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=xxxxxxxxxxxxxxxx
    ports:
      - 5432:5432
      - 5433:5433
    volumes:
      - ./postgres_data:/bitnami/postgresql
#      - .pg_hba.conf:/bitnami/postgresql/conf/pg_hba.conf

#      - .postgresql.conf:/bitnami/postgresql/conf/postgresql.conf 
networks:
  - dreamfactory-tier
  - app-tier

我的问题是:我是否在进行逻辑复制的正确轨道上,如果是,我如何映射pg_hba.conf和postgresql.conf文件?

致以敬意,

Nols Smit

EN

回答 1

Stack Overflow用户

发布于 2021-06-24 19:55:20

逻辑复制确实适用于在docker容器中运行的Postgres。我做了什么来解决这个问题:

我通过在主机上运行Postgres解决了这个问题: Ubuntu Server (而不是在docker容器中)。制作postgresql.conf和pg_hba.conf文件的副本将postgresql.conf和pg_hba.conf文件复制到docker根文件夹(存放docker-Compose.yml的位置

我的postgresql文件中的更改:

代码语言:javascript
代码运行次数:0
复制
#------------------------------------------------------------------------------
# WRITE-AHEAD LOG
#------------------------------------------------------------------------------

# - Settings -

################# wal_level originally commented out ... Nols Smit #########
wal_level = logical         # minimal, replica, or logical
############################################################################

我的pg_hba.conf文件中的更改:

代码语言:javascript
代码运行次数:0
复制
host all all all md5
################## New entry below   ... Nols Smit ##########################
host    all            all              0.0.0.0/0               md5   
host    starsdb        replicator       i7Laptop                md5
#############################################################################

其中starsdb是订阅服务器上的Postgres数据库,i7Laptop是发布服务器的主机名

请记住,最初订阅者数据库必须为空,并且还使用uuid作为表的主键。

致以敬意,

Nols Smit

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65071261

复制
相关文章
网页title图标_php 数据库显示在页面并能修改
重新定义TCPDF中的K_PATH_IMAGES常量(define(‘K_PATH_IMAGES’, xxxx) , 需要定义在加载tcpdf.php 之前)
全栈程序员站长
2022/10/03
4.2K0
网页实时显示时间_html页面布局代码
桌面新建记事本,将下列代码复制粘贴,重命名后缀为.html,保存,用浏览器打开即可
全栈程序员站长
2022/10/03
4K0
网页实时显示时间_html页面布局代码
在开启了CloudFlare的页面中显示当前节点信息
正如本站底部右下角所显示的那样当前CDN节点: San Jose, CA, United States - (SJC),是不是感觉有丶炫酷?请继续往下看
yumusb
2020/08/28
5.1K0
为什么html在浏览器中不能显示图片_做html网页图片显示不出来
我遇到的问题是写了一个HTML程序,结果在网页上面不能显示,原因是图片路径放置错了。
全栈程序员站长
2022/09/20
5.8K0
为什么html在浏览器中不能显示图片_做html网页图片显示不出来
weex eros APP 如何在vue页面显示图片,循环添加多张图片显示在vue页面上
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/acoolgiser/article/details/89016852
acoolgiser
2019/04/17
2K0
Python 实战(1):在网页上显示信息
上次简单介绍了 web.py。今天先来粗略解释下那个 hello world 页面的代码: import web 导入 web.py 模块。 urls = ( '/', 'index' ) 这是指定网站 url 的匹配规则,左边是正则表达式,右边是对应处理函数的名称。 class index: def GET(self): return "Hello, world!" 这便是处理请求的函数 index。GET 和 POST 是 HTTP 的两种请求方式,一般来说,GET 用于请求网
Crossin先生
2018/04/16
1.7K0
自定义wordpress每个分类显示多少页面数
一般的分页只需要在后台设置->阅读->博客中显示的页数,即可设置网站的分页,但是这么设置的分页是全站通用的,无论是首页、分类、搜索都显示一个分页数,但是若我们想单独控制某一个页面显示多少呢?下面我们就说说这种怎么实现。
PHP学习网
2022/08/03
7250
为抛弃刘海屏,苹果预备在显示屏上打孔,但这似乎已经落伍了
随着人脸识别解锁、支付等应用的兴起,相关技术及元器件也成为了移动智能手机的标配。从iPhone X发布至今,其后几乎每一款品牌都有支持人脸识别的新机发布,但也始终没能从根本上解决iPhone“刘海屏”的问题。当然,苹果也一直在尝试研究出更好的替代方案。
镁客网
2018/11/23
5630
在3D游戏中显示网页
在游戏中显示网页? 为什么要这么做呢? 其实可以做不少的应用: 嵌入帮助文档, 比如技能介绍, 可以做得很漂亮, 各种排版方式用传统UI做起来很费劲 活动公告页面直接在游戏中查看 游戏内的BBS/社区
逍遥剑客
2018/05/21
6440
直接iframe方式在网页上显示天气插件
天气预报调用网址(可定制):http://www.tianqi.com/plugin/
科控物联
2023/09/22
1.4K0
直接iframe方式在网页上显示天气插件
将jpeg图片显示在framebuffer上
点击(此处)折叠或打开 /************************************************** * example5.c * Author: T-bagwell * * Compile:gcc -Wall example5.c -o example5 *************************************************/ #include <stdio.h> #inclu
用户3765803
2019/03/05
1.2K0
浏览器中输入 URL 到网页显示的过程
图片来源:《图解HTTP》 总体来说分为以下几个过程: DNS 解析 TCP 连接 发送 HTTP 请求 服务器处理请求并返回 HTTP 报文 浏览器解析渲染页面 连接结束 具体可以参考下面这篇文章: 从输入 URL 到页面加载发生了什么? 常见 HTTP 状态码 状态码 各协议与 HTTP 协议之间的关系 图片来源:《图解HTTP》
happyJared
2019/06/24
1.4K0
在web浏览器上显示室内温度(nodeJs+arduino+socket.io)
上次的nodejs操作arduino入门篇中实现了如何连接arduino。这次我们来实现通过arduino测量室内温度并在浏览器上显示出来。 【所需材料】 硬件:LM35温度传感器,arduino u
用户1749219
2018/05/16
2.2K0
浏览器将URL变成一个屏幕上显示的网页的过程?
前言   一个浏览器是怎么工作的? 正文 URL变网页过程:   1.浏览器通过http或https协议,向服务端请求页面   2.将请求过来的HEML代码通过解析,构建DOM树   3.计算DOM
Dawnzhang
2019/03/08
7910
浏览器将URL变成一个屏幕上显示的网页的过程?
PC页面全屏显示以及退出全屏显示
//点击,进入全屏 $('#btn4').click(()=>{ let el = document.documentElement; let rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen; if(typeof rfs != 'undefined' && rfs){ rfs.call
用户1174387
2021/10/26
5.3K0
如何下载网页上的视频?
You-get是GitHub上的一个项目,也可以说是一个命令行程序,帮助大家下载大多主流网站上的视频、图片及音频。支持的网站非常多,我们可以先来看一部分。
狼啸风云
2020/07/27
4.1K0
如何下载网页上的视频?
javascript 获取多种主流浏览器显示页面高度(转)
IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 FireFox中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 Opera中:  document.body.clientWidth ==> 可见区域宽度 document.body.clientHeight ==> 可见区域高度 document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽) document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高) 没有定义W3C的标准,则 IE为: document.documentElement.clientWidth ==> 0 document.documentElement.clientHeight ==> 0 FireFox为: document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高) Opera为: document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽)document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高)
lin_zone
2018/08/15
9830
Confluence 如何在页面中显示目录
在默认情况下,Confluence 是不能在页面中显示目录和当前页面中的内容导航的。
HoneyMoose
2021/12/14
1.9K0
【JavaScript小项目】在网页上显示选择的图片
思路分析 选用<input type="file">原生组件,实现该组件美化。 选用<img src="file">实现图片预览。 代码实现 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>图片预览</title> <script src="js/test.js"> function upload(file) { cons
efonfighting
2020/02/13
1.2K0
如何在html页面显示html标签源码
这是一篇不正经实现方案报道。 1 引言 先来看个问答: stackoverflow: Why was the xmp HTML tag deprecated? [duplicate] 这个问题感觉
celineWong7
2020/11/05
11.5K0

相似问题

无法访问Azure容器服务

11

WebDriver容器无法访问DockerComposeContainer服务

15

服务结构容器-无法访问群集内的服务

13

使用Kubernetes的Azure容器服务-无法访问Internet的容器

216

Azure容器服务容器无法访问除80以外的其他端口

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档