init commit

This commit is contained in:
Vassiliy Yegorov
2020-02-17 13:12:09 +07:00
commit 5a5edbfd43
15 changed files with 512 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
#!/bin/bash
# Логирование сообщения со статусом
log() {
local res=$?
local mes=$@
case "${res}" in
0 ) mes="[ Ok ] "${mes} ;;
* ) mes="[ Fail ] "${mes} ;;
esac
echo -e ${mes}
return ${res}
}
log_error() {
false
log $@
return 1
}
# Сообщение с подтверждением
confirm() {
mes="$@"
read -p "$mes (y/n): " res
if [[ "${res}" == "y" || "${res}" == "yes" ]]; then return 0; else return 1; fi
}
+12
View File
@@ -0,0 +1,12 @@
#!/bin/bash
db_backup() {
cd /tmp
mkdir 1/
mongodump -v --host="${DBHOST}" --port=27017 --out=/tmp/1
cd /tmp/1
tar zcfv ../mongo_backup.tgz .
cd ..
mv mongo_backup.tgz ${ARCHIVE}
rm -rf /tmp/1
}
+50
View File
@@ -0,0 +1,50 @@
#!/usr/bin/env bash
# TODO:
# - Проверка существования БД
db_connect() {
export DB_CONNECTION="-h ${DB_HOST} -u ${DB_USER} ${DB_NAME}"
cat > ~/.my.cnf << EOF
[mysql]
user=${DB_USER}
password=${DB_PASS}
[mysqldump]
user=${DB_USER}
password=${DB_PASS}
EOF
chmod 600 ~/.my.cnf
}
db_drop() {
[[ -z "${DB_CONNECTION}" ]] && db_connect
mysql ${DB_CONNECTION} -e "drop database ${DB_NAME}"
}
db_backup() {
[[ -z "${DB_CONNECTION}" ]] && db_connect
mysqldump --routines ${DB_CONNECTION} > ${ARCHIVE}
}
db_restore() {
[[ -z "${DB_CONNECTION}" ]] && db_connect
mysql ${DB_CONNECTION} < ${ARCHIVE}
}
db_create() {
# [[ -z "${DB_CONNECTION}" ]] && db_connect
mysql -h ${DB_HOST} -u ${DB_USER} -e "create database if not exist ${DB_NAME} charset utf8"
}
db_isExist() {
[[ -z "${DB_CONNECTION}" ]] && db_connect
false
}
+49
View File
@@ -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}
}