blob: 94bb4b3c4dad33d526b4ba7bc19040401b6e483e [file]
#!/usr/bin/env bash
if !type gpssh >/dev/null 2>&1; then
echo "[FATAL]:- gpssh not exist, script Exits!"
exit 1
fi
if !type pg_ctl >/dev/null 2>&1; then
echo "[FATAL]:- pg_ctl not exist, script Exits!"
exit 1
fi
addr=""
port=""
datadir=""
user="gpadmin"
function dohelp() {
echo "usage:"
echo " -a(require) hostname"
echo " -p(require) port"
echo " -d(require) datadir"
echo " -u(default gpadmin) user"
}
while getopts "a:p:d:u:h" optname
do
case "$optname" in
"h")
dohelp
exit 1
;;
"a")
addr="$OPTARG"
;;
"p")
port="$OPTARG"
;;
"d")
datadir="$OPTARG"
;;
"u")
user="$OPTARG"
;;
esac
done
if [[ -z $addr || -z $port || -z $datadir ]];
then
dohelp
exit -1
fi
echo "[INFO]:- addr: $addr, port: $port, datadir: $datadir"
gpssh -h $addr -u $user -e "pg_ctl -D $datadir -t 600 start -o '-c gp_role=execute -p $port'"
if [[ $? -ne 0 ]];
then
echo "[FATAL]:- pg_ctl -D $segment_datadir start failed."
exit -1
fi