使用mysqldump该如何备份数据库
本文主要给大家介绍使用mysqldump该如何备份数据库,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下使用mysqldump该如何备份数据库吧。
MySQL单个数据库备份:
mysqldump --force --opt --single-transaction --lock-tables=false --skip-events --user=root --password=xxxx --routines --databases testdb > singledb.sql
MySQL所有数据库备份:
mysqldump --force --opt --single-transaction --lock-tables=false --skip-events --user=root --password=xxxx --routines --all-databases > all_databases.sql
MySQL数据库还原:
mysql -u root -predhat dbname < /mnt/dbname.sql
MySQL数据库备份的Shell脚本:
# mkdir /backups/db_backup/
# vi /backups/mysqlbackup.sh
#!/bin/bash
export path2=/backups/db_backup
date1=`date +%y%m%d_%H%M%S`
/usr/bin/find /backups/db_backup/* -type d -mtime +30 -exec rm -r {} \; 2> /dev/null
cd $path2/
mkdir $date1
USER="root"
PASSWORD="redhat123"
OUTPUTDIR="$path2/$date1"
MYSQLDUMP="/usr/bin/mysqldump"
MYSQL="/usr/bin/mysql"
HOST="localhost"
databases=`$MYSQL --user=$USER --password=$PASSWORD --host=$HOST \
-e "SHOW DATABASES;" | tr -d "| " | grep -v Database`
echo "` for db in $databases; do
echo $db
if [ "$db" = "performance_schema" ] ; then
$MYSQLDUMP --force --opt --single-transaction --lock-tables=false --skip-events --user=$USER --password=$PASSWORD --host=$HOST --routines \
--databases $db | gzip > "$OUTPUTDIR/$db.gz"
else
$MYSQLDUMP --force --opt --single-transaction --lock-tables=false --events --user=$USER --password=$PASSWORD --host=$HOST --routines \
--databases $db | gzip > "$OUTPUTDIR/$db.gz"
fi
done `"
:wq
在crontab里配置调度:
#The script will run every night at 12 A.M
#crontab -e
0 0 * * * /backups/mysqlbackup.sh > /dev/null
看完以上关于使用mysqldump该如何备份数据库,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的数据库栏目的。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341