init commit
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# TODO:
|
||||
# - Проверка существования БД
|
||||
|
||||
DB_CONNECTION=
|
||||
|
||||
db_connect() {
|
||||
export DB_CONNECTION="-h ${DBHOST} -d ${DBTABLE} -U ${DBUSER}"
|
||||
|
||||
echo "${DBHOST}:5432:${DBTABLE}:${DBUSER}:${DBPASS}" > ~/.pgpass
|
||||
#cat ~/.pgpass
|
||||
chmod 600 ~/.pgpass
|
||||
}
|
||||
|
||||
db_drop() {
|
||||
[[ -z "${DB_CONNECTION}" ]] && db_connect
|
||||
|
||||
# psql ${DB_CONNECTION} -c "drop schema public cascade"
|
||||
PGSQL_ARGS="--clean"
|
||||
}
|
||||
|
||||
db_create() {
|
||||
# [[ -z "${DB_CONNECTION}" ]] && db_connect
|
||||
|
||||
echo "SELECT 'CREATE DATABASE ${DBTABLE}' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = '${DBTABLE}')\gexec" | psql -h ${DBHOST} -U ${DBUSER}
|
||||
|
||||
# psql ${DB_CONNECTION} -c "create schema public"
|
||||
}
|
||||
|
||||
db_isExist() {
|
||||
[[ -z "${DB_CONNECTION}" ]] && db_connect
|
||||
|
||||
false
|
||||
}
|
||||
|
||||
db_backup() {
|
||||
[[ -z "${DB_CONNECTION}" ]] && db_connect
|
||||
|
||||
pg_dump -F c -O -b ${DB_CONNECTION} -f ${ARCHIVE}
|
||||
}
|
||||
|
||||
db_restore() {
|
||||
[[ -z "${DB_CONNECTION}" ]] && db_connect
|
||||
|
||||
local log_file=${ARCHIVE%.*}.log
|
||||
echo "[ Info ] pg_restore log file: ${log_file}"
|
||||
pg_restore --no-owner ${PGSQL_ARGS} ${DB_CONNECTION} ${ARCHIVE} > ${log_file}
|
||||
}
|
||||
Reference in New Issue
Block a user