Page MenuHomeDevCentral

db-treasure-import.sh
No OneTemporary

db-treasure-import.sh

#!/bin/sh
# -------------------------------------------------------------
# Import a MySQL database from the databases treasure chest
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Project: Nasqueron
# License: BSD-2-Clause
# Source file: roles/dbserver-mysql/treasure-chest/files/db-treasure-import.sh
# -------------------------------------------------------------
#
# <auto-generated>
# This file is managed by our rOPS SaltStack repository.
#
# Changes to this file may cause incorrect behavior
# and will be lost if the state is redeployed.
# </auto-generated>
set -e
DATABASES_BACKUP_PATH=/var/backups/db-treasure-chest
DATABASES_MYSQL_PATH=/var/db/mysql
# -------------------------------------------------------------
# Ensure user is root
#
# Note: POSIX shells don't always define $UID or $EUID.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if [ "$(id -u)" -ne 0 ]; then
echo "This command must be run as root." >&2
exit 1
fi
# -------------------------------------------------------------
# Parse arguments
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if [ $# -eq 0 ]; then
echo "Usage: $(basename $0) <database>" >&2
exit 1
fi
DATABASE=$1
if [ -d "$DATABASES_MYSQL_PATH/$DATABASE" ]; then
echo "Database $DATABASE seems already imported: directory exists in $DATABASES_MYSQL_PATH." >&2
exit 2
fi
if [ ! -f "$DATABASES_BACKUP_PATH/$DATABASE.sql" ]; then
echo "Database $DATABASE dump can't be found in DATABASES_BACKUP_PATH" >&2
exit 4
fi
# -------------------------------------------------------------
# Restore database
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
mysql -e "CREATE DATABASE $DATABASE"
mysql "$DATABASE" < "$DATABASES_BACKUP_PATH/$DATABASE.sql"
echo "[$(date +%FT%H:%M:%S%z)] $DATABASE restored." >> "$DATABASES_BACKUP_PATH/_restored/_restore.log"
mv "$DATABASES_BACKUP_PATH/$DATABASE.sql" "$DATABASES_BACKUP_PATH/_restored/"

File Metadata

Mime Type
text/x-shellscript
Expires
Tue, May 13, 16:58 (5 h, 14 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2573421
Default Alt Text
db-treasure-import.sh (1 KB)

Event Timeline