我正在使用 postgres 设置复制数据库。似乎有很多关于如何设置的信息,但我仍然找不到如何在应用程序中操作它。
我想要的是仅从 repl 数据库中“选择”,并从源数据库中“插入/更新/删除”。在这种情况下,我是否应该在每次选择时都连接到 repl db,而在其他情况下“在应用程序级别”连接到 source db?或者有什么办法可以让这些全部自动化?
我的意思是,似乎必须有办法让它自动化,因为如果真的有很多 repl db(超过 2 个),它一定是这样工作的。
请帮助我,谢谢大家。
我正在使用 postgres 设置复制数据库。似乎有很多关于如何设置的信息,但我仍然找不到如何在应用程序中操作它。
我想要的是仅从 repl 数据库中“选择”,并从源数据库中“插入/更新/删除”。在这种情况下,我是否应该在每次选择时都连接到 repl db,而在其他情况下“在应用程序级别”连接到 source db?或者有什么办法可以让这些全部自动化?
我的意思是,似乎必须有办法让它自动化,因为如果真的有很多 repl db(超过 2 个),它一定是这样工作的。
请帮助我,谢谢大家。
通常,在主服务器和只读副本之间进行选择是由应用程序完成的。
在一些有限的情况下,当应用程序根据 SQL 命令和事务做一些简单的事情并且他们真的希望它是透明的时, 可以安装pgpool-II并将其配置为流复制中服务器之间的负载平衡器。它通过动态分析自动检测哪些查询可以发送到只读副本。来自“什么是 Pgpool-II?” :
有关限制和注意事项,请参阅文档中的负载平衡。