44 lines
1.7 KiB
Bash
Executable file
44 lines
1.7 KiB
Bash
Executable file
#!/bin/bash
|
|
# Many ways of backuping MySQL/MariaDB databases.
|
|
|
|
# Dump with all databases in one file.
|
|
# mysqldump --defaults-extra-file=/etc/mysql/debian.cnf \
|
|
# --opt --all-databases --force --events | gzip --best > /home/backup/mysql.bak.gz
|
|
|
|
# Dump des BDD en .sql.gz
|
|
# mkdir -p /home/mysqldump/
|
|
# for i in $(mysql -e 'show databases' -s --skip-column-names | egrep -v "^(Database|information_schema|performance_schema)"); do
|
|
# mysqldump --force --events $i | gzip --best > /home/mysqldump/${i}.sql.gz
|
|
# done
|
|
|
|
# for i in $(echo SHOW DATABASES | mysql | egrep -v "^(Database|information_schema|performance_schema)" ); \
|
|
# do mkdir -p /home/mysqldump/$i ; chown -R mysql /home/mysqldump ; \
|
|
# mysqldump --defaults-extra-file=/etc/mysql/debian.cnf --force -Q --opt --events --skip-comments -T \
|
|
# /home/mysqldump/$i $i; done
|
|
|
|
# Dump par base
|
|
# mkdir -p -m 700 /home/mysqldump/BASE
|
|
# chown -R mysql /home/mysqldump/
|
|
# mysqldump --defaults-extra-file=/etc/mysql/debian.cnf --force -Q \
|
|
# --opt --events --skip-comments -T /home/mysqldump/BASE BASE
|
|
|
|
# mkdir -p /home/mysqlhotcopy/
|
|
# mysqlhotcopy BASE /home/mysqlhotcopy/
|
|
|
|
# Dump instanceS MySQL
|
|
#
|
|
## Recherche du mot de passe mysqladmin
|
|
#mysqladminpasswd=`cat /root/.my.cnf |grep -m1 'password = .*' |cut -d" " -f3`
|
|
#
|
|
## Determination des instances MySQL disponibles sur le serveur (hors 3306)
|
|
#grep -E "^port\s*=\s*\d*" /etc/mysql/my.cnf |while read instance; do
|
|
# instance=$(echo $instance |tr -d '\t')
|
|
# instance=${instance// /}
|
|
# instance=${instance//port=/}
|
|
# if [ "$instance" != "3306" ]
|
|
# then
|
|
# mysqldump -P $instance --opt --all-databases -u mysqladmin -p$mysqladminpasswd > /home/backup/mysql.$instance.bak
|
|
# fi
|
|
#done
|
|
|
|
exit 0 |