gpt4 book ai didi

postgresql-9.1 - 热备用数据库中Postgres中的未记录表

转载 作者:行者123 更新时间:2023-12-04 08:28:47 24 4
gpt4 key购买 nike

我们有一对在流复制模式下运行的posgresql 9.1服务器。在每个服务器中都有2个数据库。

一种是“实时”数据库,其数据必须尽可能接近实时地进行复制;一种是“高速缓存”数据库,其数据不重要,并且可以在一段时间内重新生成或建立。

“缓存”数据库对所有内容都使用未记录的表(因为我们不关心它们是否被截断),因此我们将其有效地用作一种内存数据库。因为我们对这些表有很多读/写操作,所以它工作得异常好。我们发现,使用未记录的表在高负载和大量内存的服务器上,性能有了显着提高。

现在,当我们不得不在从属端创建另一个“缓存”数据库时,就会出现问题。我们需要它来使我们的Web应用程序正常工作。对于数据库处于只读模式的源,这是不可能的...

只是想知道是否还有其他人有类似的问题,或者是否有办法在从属服务器上创建未记录的表?在postgres中,流复制似乎是“全有还是全无”,您不能为特定的数据库打开/关闭它。

也许我没有正确使用未记录的表,但是到目前为止,还没有找到能正常工作的东西。

任何指针将不胜感激...

最佳答案

在postgres中,流复制似乎是“全有还是全无”,您不能为特定的数据库打开/关闭它。


不幸的是,这是正确的。 WAL复制适用于整个数据库集群,并且您要求不记录主数据库上集群中的数据库,因此无法使其显示在从数据库上。

我发现最好的解决方案是在从属服务器上运行第二个守护程序/集群,并在那里创建未记录的缓存数据库。同时运行多个postgres守护程序没有真正的问题-您只需要确保指定一个不同的套接字/端口即可监听。

关于postgresql-9.1 - 热备用数据库中Postgres中的未记录表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18593960/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com