added mysql_db_dump script

Dumping single database
This commit is contained in:
Naum Soloveychik
2020-01-12 12:32:41 +03:00
parent 4154252a97
commit cb8ba1843a
3 changed files with 60 additions and 3 deletions

View File

@@ -1,6 +1,9 @@
# MySQL backup script # MySQL backup script
Feature rich MySQL / MariaDB backup script. Feature rich MySQL / MariaDB backup script.
Scripts
- mysql_backup.sh :: backuping mysql databases in single dump.
- mysql_db_dump.sh :: dumping single database
## Installation ## Installation
@@ -11,7 +14,7 @@ Feature rich MySQL / MariaDB backup script.
**Usage:** `mysql_backup.sh -d /backup/dir/ -n daily [-c 10 -s -z -e test@domain.org]` **Usage:** `mysql_backup.sh -d /backup/dir/ -n daily [-c 10 -s -z -e test@domain.org]`
## Options ## mysql_bakcup Options
**-d , --dir** **-d , --dir**
backup directory backup directory

View File

@@ -72,8 +72,7 @@ then
copies=10 copies=10
fi fi
if [ "${dir}" = "" ] || [ ! -d ${dir} ] ; then
if ! [ -d ${dir} ] ; then
error "Directory '${dir}' does not exists!" ; error "Directory '${dir}' does not exists!" ;
exit 1 ; exit 1 ;

55
mysql_db_dump.sh Normal file
View File

@@ -0,0 +1,55 @@
#!/bin/sh
# Dumping mysql database in current folder
# Usage: ${0} databse1 [database2 database3 database4 ...]
export PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin" ;
if [ -z "${1}" ] ; then
echo "Error: no database name given!" ;
echo
echo "Usage: ${0} databse1 [database2 database3 database4 ...]"
exit 1 ;
fi
param=" --lock-tables \
--add-drop-table \
--add-drop-trigger \
--triggers \
--add-locks \
--create-options \
--complete-insert \
--extended-insert \
--allow-keywords \
--default-character-set=utf8mb4 \
--dump-date \
--quote-names \
--comments \
--quick \
--force"
while [ "${1}" != "" ]; do
echo
echo "Starting '{$1}' database dump..." ;
filename="mysqldump.${1}.`hostname -s`.`date +\"%y%m%d.%H%M%S\"`.sql" ;
if [ -f filename ] ; then
echo "Database ${1} dump not completed! File ${filename} allready exists!"
exit 1 ;
fi
if ! mysqldump ${1} ${param} > ${filename} ; then
echo "Database ${1} dump not completed!" ;
rm ${filename} ;
else
echo "Compressing dump"
xz ${filename} ;
echo "Database ${1} dump successful completed. ('${filename}.xz')" ;
fi
shift
done
exit 0