diff options
Diffstat (limited to 'pgaas/src/stage/opt/app/pgaas/etc/create-db-backup')
-rw-r--r-- | pgaas/src/stage/opt/app/pgaas/etc/create-db-backup | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/pgaas/src/stage/opt/app/pgaas/etc/create-db-backup b/pgaas/src/stage/opt/app/pgaas/etc/create-db-backup new file mode 100644 index 0000000..d6e856b --- /dev/null +++ b/pgaas/src/stage/opt/app/pgaas/etc/create-db-backup @@ -0,0 +1,38 @@ +#!/bin/bash +# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this code except in compliance +# with the License. You may obtain a copy of the License +# at http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. + + +if [ -d /opt/app/postgresql-9.5.2 ] +then PGDIR=/opt/app/postgresql-9.5.2 +elif [ -d /usr/lib/postgresql/9.6 ] +then PGDIR=/usr/lib/postgresql/9.6 +elif [ -d /usr/lib/postgresql/9.5 ] +then PGDIR=/usr/lib/postgresql/9.5 +else echo PostgreSQL bin directory not found +fi + +$PGDIR/bin/psql <<-EOF + SELECT pg_start_backup('backup'); +EOF + +cd /dbroot/pgdata && +{ + find main | grep -v main/pg_xlog/ + find main/pg_xlog -type d +} | cpio -oc | gzip > main.cpio.gz.$$ && mv main.cpio.gz.$$ main.cpio.gz + +$PGDIR/bin/psql <<-EOF + SELECT pg_stop_backup(); +EOF +echo /dbroot/pgdata/main.cpio.gz created |