MySQL数据库中的自动备份破坏后的建立


  本文标签:MySQL数据库

  此文章主要介绍的是在MySQL数据库中的自动备份与MySQL数据库遭到破坏之后的恢复中建立数据库备份所需条件,其中包括对自动备份脚本的建立,MySQL数据库自动备份脚本的正确运行与数据库备份脚本每天自动运行  。

  [1] 建立自动备份脚本

  在这里,为了使MySQL数据库备份和恢复的符合我们的实际要求,用一段符合要求的Shell脚本来实现整个备份过程的自动化  。

  [root@CentOS ']# vi mysql-backup.sh ← 建立数据库自动备份脚本,如下:

  

  1. #!/bin/bash   
  2. PATH=/usr/local/sbin:/usr/bin:/bin   
  3. # The Directory of Backup   
  4. BACKDIR=/backup/mysql   
  5. # The Password of MySQL   
  6. ROOTPASS

  此处请将星号替换成MySQL的root密码

  1. # Remake the Directory of Backup   
  2. rm -rf $BACKDIR   
  3. mkdir -p $BACKDIR   
  4. # Get the Name of Database   
  5. DBLIST=`ls -p /var/lib/mysql | grep / | tr -d /`   
  6. # Backup with Database   
  7. for dbname in $DBLIST   
  8. do   
  9. mysqlhotcopy $dbname -u root -p $ROOTPASS $BACKDIR | logger -t mysqlhotcopy   
  10. done 

  [2] 运行MySQL数据库自动备份脚本

  [root@CentOS ']# chmod 700 mysql-backup.sh 改变脚本属性,让其只能让root用户执行

  [root@CentOS ']# ./mysql-backup.sh 运行脚本

  

  [root@CentOS ']# ls -l /backup/mysql/ 确认一下是否备份成功

  

  total 8

  

  drwxr-x--- 2 mysql mysql 4096 Sep 1 16:54 mysql 已成功备份到/backup/mysql目录中

  

  [3] 让数据库备份脚本每天自动运行

  [root@sample ']# crontab -e ← 编辑自动运行规则(然后会出现编辑窗口,操作同vi)

  00 03 * * * /root/mysql-backup.sh 添加这一行到文件中,让数据库备份每天凌晨3点进行

  测试自动备份正常运转与否(备份恢复的方法)

  这里,以通过实际操作的过程来介绍问题出现后的恢复方法  。