MySQL中mysqldump的使用方法

本篇内容介绍了“MySQL中mysqldump的使用方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

 逻辑备份一般用于数据迁移或者数据量很小时,采用数据导出的方法。
一、备份过程
1、导出所有的数据库
mysqldump -uroot -p -q --single-transaction -A > all.sql

2、导出其中的test库
mysqldump -uroot -p -q --single-transaction test >test.sql

3、导出其中的test库的个别表
mysqldump -uroot -p -q --single-transaction test table1 table2 >test_table1_table2.sql

二、恢复过程
mysql -uroot -p <all.sql  或者登陆到mysql命令行,执行 source all.sql

三、逻辑备份全量,增量备份脚本
全量备份:

点击(此处)折叠或打开

  1. #!/bin/bash

  2. #MySQL全量备份脚本

  3. cd /backup

  4. dateDIR=`date +"%y-%m-%d"`

  5. mkdir -p $dateDIR/data

  6. path=/mysql/data

  7. for i in `mysql -uroot -pmysql -e "show databases"|grep -v "Database"`

  8. do

  9. mysqldump -uroot -pmysql --default-character-set=utf8 -q --lock-all-tables --flush-logs -R -E --triggers -B $i |gzip > /backup/$dateDIR/data/${i}_${dateDIR}.sql.gz

  10. done


  11. binlog_rm=`tail -n 1 $path/mysql-bin-3306.index | awk -F"/" '{print $4}'`

  12. mysql -uroot -pmysql -e "purge binary logs to '$binlog_rm'"


增量备份:

点击(此处)折叠或打开

  1. #!/bin/bash

  2. #MySQL全量备份脚本

  3. cd /backup

  4. dateDIR=`date +"%y-%m-%d"`

  5. mkdir -p $dateDIR/data

  6. path=/mysql/data

  7. mysqladmin -uroot -pmysql flush-logs

  8. binlog_cp=`head -n -1 $path/mysql-bin-3306.index | awk -F"/" '{print $4}'`


  9. for i in $binlog_cp

  10. do

  11. mysql -uroot -pmysql -e "system cp -p $path/$i /backup/$dateDIR/data;"

  12. done


  13. binlog_rm=`tail -n 1 $path/mysql-bin-3306.index | awk -F"/" '{print $4}'`

  14. mysql -uroot -pmysql -e "purge binary logs to '$binlog_rm'"

“MySQL中mysqldump的使用方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!