Benjamin Renard commited on 2017-08-25 13:12:05
Showing 1 changed files, with 16 additions and 2 deletions.
... | ... |
@@ -26,6 +26,7 @@ fi |
26 | 26 |
RECOVERY_CONF_FILENAME=recovery.conf |
27 | 27 |
RECOVERY_CONF="" |
28 | 28 |
PG_DEFAULT_PORT=5432 |
29 |
+PG_DB=template0 |
|
29 | 30 |
|
30 | 31 |
DEBUG=0 |
31 | 32 |
|
... | ... |
@@ -39,13 +40,14 @@ Usage : $0 [-d] [-h] [options] |
39 | 40 |
-r recovery_conf Specify Postgres recovery configuration file path |
40 | 41 |
(Default : $PG_MAIN/$RECOVERY_CONF_FILENAME) |
41 | 42 |
-p pg_port Specify default Postgres master TCP port (Default : $PG_DEFAULT_PORT) |
43 |
+ -D dbname Specify DB name on Postgres master to connect on (Default : $PG_DB) |
|
42 | 44 |
-d Debug mode |
43 | 45 |
-h Show this message |
44 | 46 |
EOF |
45 | 47 |
exit 0 |
46 | 48 |
} |
47 | 49 |
|
48 |
-while getopts "hu:b:m:r:p:d" OPTION |
|
50 |
+while getopts "hu:b:m:r:p:D:d" OPTION |
|
49 | 51 |
do |
50 | 52 |
case $OPTION in |
51 | 53 |
u) |
... | ... |
@@ -63,6 +65,9 @@ do |
63 | 65 |
p) |
64 | 66 |
PG_DEFAULT_PORT=$OPTARG |
65 | 67 |
;; |
68 |
+ D) |
|
69 |
+ PG_DB=$OPTARG |
|
70 |
+ ;; |
|
66 | 71 |
d) |
67 | 72 |
DEBUG=1 |
68 | 73 |
;; |
... | ... |
@@ -171,8 +176,17 @@ then |
171 | 176 |
debug "Master port : $M_PORT" |
172 | 177 |
fi |
173 | 178 |
|
179 |
+ M_USER=$( echo "$MASTER_CONN_INFOS"|sed 's/^.*user= *\([^ ]*\) *.*$/\1/' ) |
|
180 |
+ if [ ! -n "$M_USER" ] |
|
181 |
+ then |
|
182 |
+ debug "Master user not specify, use default : $PG_USER" |
|
183 |
+ M_USER=$PG_USER |
|
184 |
+ else |
|
185 |
+ debug "Master user : $M_USER" |
|
186 |
+ fi |
|
187 |
+ |
|
174 | 188 |
# Get current xlog file from master |
175 |
- M_CUR_XLOG="$( echo 'SELECT pg_current_xlog_location()'|su - $PG_USER -c "$PSQL_BIN -h $M_HOST -p $M_PORT -t -P format=unaligned" )" |
|
189 |
+ M_CUR_XLOG="$( echo 'SELECT pg_current_xlog_location()'|su - $PG_USER -c "$PSQL_BIN -U $M_USER -h $M_HOST -p $M_PORT -d $PG_DB -t -P format=unaligned" )" |
|
176 | 190 |
if [ ! -n "$M_CUR_XLOG" ] |
177 | 191 |
then |
178 | 192 |
echo "UNKNOWN : Can't retreive current xlog from master server" |
179 | 193 |