使用cron和脚本

时间:2016-05-23 07:37:59

标签: postgresql cron automation crontab postgresql-9.4

我有一个运行起搏器,corosync和postgresql 9.4的2节点系统。我正在使用虚拟IP执行pgsql复制,并且能够使用手动命令成功恢复故障机器。现在要自动化东西,我想在脚本中运行以下命令,以便将恢复的主服务器恢复到集群上。

`#su -postgres
 $rm -rf /var/lib/pgsql/9.4/data/*     //To delete old data files
 $pg_basebackup -h 192.XX.XX.XX -U postgres -D /var/lib/pgsql/9.4/data   -X stream -P   // To recover the latest data from standby PC running latest entries
 $rm /var/lib/pgsql/tmp/PGSQL.lock
 $exit     //exit from postgresql shell
 #pcs resource cleanup msPostgresql`

现在,当我将这些命令作为脚本运行时,它会在第一个命令本身后挂起,即su -postgres,并且光标在bash $语法处闪烁,而不在下面插入命令。 我想使用cron自动执行此过程,但脚本本身不适合我。有人可以帮助我。

此致

1 个答案:

答案 0 :(得分:0)

据我所知" su -postgres"是错的。您可以使用" su postgres"或" sudo -i -u postgres"

关于脚本here,您可以找到经过测试的工作脚本。您感兴趣的人称为" initiate_replication.sh"那里。