init commit
This commit is contained in:
@@ -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
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
@@ -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