blob: d547e42e8065b7f0d6a62c150f29351e7c788f86 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
#!/bin/sh
# Start/stop/restart pgbouncer - Lightweight connection pooler for PostgreSQL.
# Copyright (c) 2015, Antonio Hernández Blas <hba.nihilismus@gmail.com>
#
# DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
# Version 2, December 2004
#
# Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
#
# Everyone is permitted to copy and distribute verbatim or modified
# copies of this license document, and changing it is allowed as long
# as the name is changed.
#
# DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
# TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
#
# 0. You just DO WHAT THE FUCK YOU WANT TO.
#
CONF='/etc/pgbouncer/pgbouncer.ini'
CMMD="/usr/bin/pgbouncer -d -q"
pgbouncer_start() {
CMMD="$CMMD $CONF"
if [ -x /usr/bin/pgbouncer ]; then
if [ -f $CONF ]; then
PIDOF=$(pgrep -f "$CMMD.*$CONF")
if [ ! -z "$PIDOF" ]; then
echo "Error, pgbouncer is already running."
else
echo "Starting pgbouncer: $CMMD"
$CMMD
fi
else
echo "Error, file $CONF does not exist."
fi
fi
}
pgbouncer_stop() {
PIDOF=$(pgrep -f "$CMMD.*$CONF")
if [ -z "$PIDOF" ]; then
echo "Error, pgbouncer is not running."
else
echo "Stoping pgbouncer: /bin/kill -s SIGINT $PIDOF"
/bin/kill -s SIGINT $PIDOF
fi
}
pgbouncer_status() {
PIDOF=$(pgrep -f "$CMMD.*$CONF")
if [ ! -z "$PIDOF" ]; then
echo "pgbouncer is running."
else
echo "pgbouncer is not running."
fi
}
pgbouncer_online_restart() {
PIDOF=$(pgrep -f "$CMMD.*$CONF")
if [ ! -z "$PIDOF" ]; then
CMMD="$CMMD -R $CONF"
echo "Online restarting pgbouncer: $CMMD"
$CMMD
else
echo "Error, pgbouncer is not running."
fi
}
case $1 in
start)
pgbouncer_start
;;
stop)
pgbouncer_stop
;;
restart)
pgbouncer_stop
sleep 3
pgbouncer_start
;;
online-restart)
pgbouncer_online_restart
;;
status)
pgbouncer_status
;;
*)
echo "Usage $0 {start|stop|restart|status|online-restart}"
exit 1
;;
esac
|