使用Slony-I替代Linux设置到Shell Scripts的数据库复制

时间:2013-01-04 10:47:02

标签: database linux postgresql replication slony

如标题所示,

到目前为止,我发现当前的教程使用Shell脚本文件中的嵌入式SLON命令来设置Slony-I主站到从站复制所需的配置。 例如:Slony-I Setup Tutorial

我想知道是否有可能嵌入SLON设置命令并在另一种语言中调用它们,例如在Linux环境中工作的C / C ++ / Python?

1 个答案:

答案 0 :(得分:1)

SLONIK脚本通常通过将STDOUT写入slonik二进制文件来工作。任何语言都应该能够复制这种风格,但与使用shell脚本方法没什么区别,根据我的经验,它往往会阻碍正在做的事情。毕竟,你仍然写信给STDOUT并将这些信息发送到slonik二进制文件。

我在过去编写了perl模块以帮助解决这个问题,但是他们觉得非常困难,而且我只在需要动态修改复制设置时才使用它们。我发现很少需要这样的东西,对于绝大多数的slony工作来说,shell脚本管理起来要简单得多。

总结:是的,你可以,但可能只是让事情变得更复杂。

如何在python中执行此操作的示例如下:

p = subprocess.Popen('/usr/bin/slonik',stdout=subprocess.PIPE,stdin=subprocess.PIPE)
p.stdin.write('<slon commands here>')
p.stdin.close()