|
#! /bin/sh
|
|
|
|
if [ "$(whoami)" != "root" ]; then
|
|
SUDO=sudo
|
|
fi
|
|
${SUDO} apt install -y postgresql
|
|
POSTGRES_VERSION=`apt show postgresql | grep Version | cut -d" " -f2 | cut -d"+" -f1`
|
|
read -p "Postgres Master IP: " -ei "" POSTGRES_MASTER
|
|
read -p "Postgres replica username: " -ei "replica_user" REPLICA_USER
|
|
read -p "Postgres replica password: " -ei "" REPLICA_PASS
|
|
|
|
${SUDO} systemctl stop postgresql
|
|
sudo -u postgres pg_conftool set primary_conninfo "host=$POSTGRES_MASTER port=5432 user=$POSTGRES_USER password=$POSTGRES_PASS"
|
|
sudo -u postgres pg_conftool set primary_slot_name replica_1
|
|
|
|
|
|
sudo -u postgres pg_basebackup -h $POSTGRES_MASTER -U -X stream -C -S replica_1 -v -R -W -D /var/lib/postgresql/$POSTGRES_VERSION/main/
|
|
${SUDO} systemctl start postgresql
|