New step to debloat postgres database
This commit is contained in:
@@ -6,6 +6,7 @@ toolDeps+=" jq" # used as helper for api access
|
|||||||
toolDepsRaspi="ilibopenjp2-7 libtiff5"
|
toolDepsRaspi="ilibopenjp2-7 libtiff5"
|
||||||
toolUser="synapse"
|
toolUser="synapse"
|
||||||
toolGroup="synapse"
|
toolGroup="synapse"
|
||||||
|
toolServiceName="matrix-synapse"
|
||||||
synapseHashTool="env/bin/hash_password"
|
synapseHashTool="env/bin/hash_password"
|
||||||
toolUrlLocal="http://localhost:8008"
|
toolUrlLocal="http://localhost:8008"
|
||||||
# Filled by configuration
|
# Filled by configuration
|
||||||
@@ -121,10 +122,10 @@ step_6() {
|
|||||||
local localService=`eval "echo \"$toolService\""`
|
local localService=`eval "echo \"$toolService\""`
|
||||||
addConf -c "$localService" "$toolServiceLoc"
|
addConf -c "$localService" "$toolServiceLoc"
|
||||||
exe systemctl daemon-reload
|
exe systemctl daemon-reload
|
||||||
exe systemctl enable matrix-synapse.service
|
exe systemctl enable ${toolServiceName}.service
|
||||||
exe service matrix-synapse start
|
exe service ${toolServiceName} start
|
||||||
}
|
}
|
||||||
toolServiceLoc="/etc/systemd/system/matrix-synapse.service"
|
toolServiceLoc="/etc/systemd/system/${toolServiceName}.service"
|
||||||
toolService="[Unit]
|
toolService="[Unit]
|
||||||
Description=Matrix Synapse service
|
Description=Matrix Synapse service
|
||||||
After=network.target postgresql.service
|
After=network.target postgresql.service
|
||||||
@@ -169,10 +170,10 @@ step_10() {
|
|||||||
step version
|
step version
|
||||||
}
|
}
|
||||||
|
|
||||||
step_12_info() { echo "Restart $toolName systemd service"; }
|
step_12_info() { echo "Restart $toolName systemd service"; echo; }
|
||||||
step_12_alias() { ALIAS="restart"; }
|
step_12_alias() { ALIAS="restart"; }
|
||||||
step_12() {
|
step_12() {
|
||||||
exe service matrix-synapse restart
|
exe service ${toolServiceName} restart
|
||||||
}
|
}
|
||||||
|
|
||||||
step_14_info() { echo "Show $toolName version running at [IP]:8008"; }
|
step_14_info() { echo "Show $toolName version running at [IP]:8008"; }
|
||||||
@@ -411,18 +412,48 @@ postDataDeleteRoom()
|
|||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
step_30_info() { echo "Drop postgres database for $toolName"; }
|
step_30_info() { echo "Debloat postgres [DATABASE]"; echo; }
|
||||||
step_30_alias() { ALIAS="dropdb"; }
|
step_30_alias() { ALIAS="debloat"; }
|
||||||
step_30() {
|
step_30() {
|
||||||
|
shift
|
||||||
|
local pgVerboseReId=" (VERBOSE) "
|
||||||
|
local pgVerboseVac=" VERBOSE"
|
||||||
|
|
||||||
|
if [ $VERBOSE == 0 ]; then
|
||||||
|
pgVerboseReId=" "
|
||||||
|
pgVerboseVac=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z $1 ]; then
|
||||||
|
readDatabaseInfos
|
||||||
|
else
|
||||||
|
postgresDb="$1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo " [I] Stopping ${toolServiceName}"
|
||||||
|
exe service ${toolServiceName} stop
|
||||||
|
endReturn -o $? "Couldn't stop ${toolServiceName}. Stopping debloat."
|
||||||
|
|
||||||
|
exe cd ~postgres
|
||||||
|
exe su -c "psql -d ${postgresDb} -c \"REINDEX${pgVerboseReId}DATABASE ${postgresDb};\"" - postgres
|
||||||
|
exe su -c "psql -c \"VACUUM FULL${pgVerboseVac};\"" - postgres
|
||||||
|
|
||||||
|
echo -e "\n [I] Starting ${toolServiceName}"
|
||||||
|
exe service ${toolServiceName} start
|
||||||
|
}
|
||||||
|
|
||||||
|
step_50_info() { echo "Drop postgres database for $toolName"; }
|
||||||
|
step_50_alias() { ALIAS="dropdb"; }
|
||||||
|
step_50() {
|
||||||
readDatabaseInfos
|
readDatabaseInfos
|
||||||
|
|
||||||
exe cd ~postgres
|
exe cd ~postgres
|
||||||
exe su -c "psql -c \"DROP DATABASE ${postgresDb};\"" - postgres
|
exe su -c "psql -c \"DROP DATABASE ${postgresDb};\"" - postgres
|
||||||
}
|
}
|
||||||
|
|
||||||
step_32_info() { echo "Backup postgres database"; }
|
step_52_info() { echo "Backup postgres database"; }
|
||||||
step_32_alias() { ALIAS="backupdb"; }
|
step_52_alias() { ALIAS="backupdb"; }
|
||||||
step_32() {
|
step_52() {
|
||||||
local DELYEAR=$(($(date +%Y)-2))
|
local DELYEAR=$(($(date +%Y)-2))
|
||||||
if [ ! -s ~/.pgpass ] ; then
|
if [ ! -s ~/.pgpass ] ; then
|
||||||
echo " [I] For unattended backup please define ~/.pgpass containing credentials"
|
echo " [I] For unattended backup please define ~/.pgpass containing credentials"
|
||||||
@@ -435,9 +466,9 @@ step_32() {
|
|||||||
toolDbBackupFolder=/root/backupdb
|
toolDbBackupFolder=/root/backupdb
|
||||||
|
|
||||||
|
|
||||||
step_34_info() { echo "Postgres database restore"; }
|
step_54_info() { echo "Postgres database restore"; }
|
||||||
step_34_alias() { ALIAS="restoredb"; }
|
step_54_alias() { ALIAS="restoredb"; }
|
||||||
step_34() {
|
step_54() {
|
||||||
echo " [I] Postgres database restore procedure"
|
echo " [I] Postgres database restore procedure"
|
||||||
echo "1. Create a empty postgres database first (step 4)"
|
echo "1. Create a empty postgres database first (step 4)"
|
||||||
echo "2. psql -h <host> -U <database user> -d <database name> -W -f <sql dump file>"
|
echo "2. psql -h <host> -U <database user> -d <database name> -W -f <sql dump file>"
|
||||||
|
Reference in New Issue
Block a user