如何才能实现MySQL的自动备份

2016-02-19 17:37 2 1 收藏

每个人都希望每天都是开心的,不要因为一些琐事扰乱了心情还,闲暇的时间怎么打发,关注图老师可以让你学习更多的好东西,下面为大家推荐如何才能实现MySQL的自动备份,赶紧看过来吧!

【 tulaoshi.com - 编程语言 】

  MySql自动备份是非常关键的,特别是对于DBA来说。这里主要用代码来说明这个问题,希望对各位有所帮助。可以将这个脚本放进crontab,每天凌晨执行一次,自动备份。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  这个脚本每天最多只执行一次,而且只保留最近五天的备份在服务器上。

  代码:

  

#!/bin/bash#This is a ShellScript For Auto DB Backup#Powered by aspbiz#2004-09 

  #Setting#设置数据库名,数据库登录名,密码,备份路径,日志路径,数据文件位置,以及备份方式#默认情况下备份方式是tar,还可以是mysqldump,mysqldotcopy#默认情况下,用root(空)登录mysql数据库,备份至/root/dbxxxxx.tgzDBName=mysqlDBUser=rootDBPasswd=BackupPath=/root/LogFile=/root/db.logDBPath=/var/lib/mysql/#BackupMethod=mysqldump#BackupMethod=mysqlhotcopy#BackupMethod=tar#Setting End

  NewFile="$BackupPath"db$(date +%y%m%d).tgzDumpFile="$BackupPath"db$(date +%y%m%d)OldFile="$BackupPath"db$(date +%y%m%d --date='5 days ago').tgz

  echo "-------------------------------------------" $LogFileecho $(date +"%y-%m-%d %H:%M:%S") $LogFileecho "--------------------------" $LogFile#Delete Old Fileif [ -f $OldFile ]then  rm -f $OldFile $LogFile 2&1  echo "[$OldFile]Delete Old File Success!" $LogFileelse  echo "[$OldFile]No Old Backup File!" $LogFilefi

  if [ -f $NewFile ]then  echo "[$NewFile]The Backup File is exists,Can't Backup!" $LogFileelse  case $BackupMethod in  mysqldump)   if [ -z $DBPasswd ]   then     mysqldump -u $DBUser --opt $DBName $DumpFile   else     mysqldump -u $DBUser -p$DBPasswd --opt $DBName $DumpFile   fi   tar czvf $NewFile $DumpFile $LogFile 2&1   echo "[$NewFile]Backup Success!" $LogFile   rm -rf $DumpFile   ;;  mysqlhotcopy)   rm -rf $DumpFile   mkdir $DumpFile   if [ -z $DBPasswd ]   then     mysqlhotcopy -u $DBUser $DBName $DumpFile $LogFile 2&1   else     mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile $LogFile 2&1   fi   tar czvf $NewFile $DumpFile $LogFile 2&1   echo "[$NewFile]Backup Success!" $LogFile   rm -rf $DumpFile   ;;  *)   /etc/init.d/mysqld stop /dev/null 2&1   tar czvf $NewFile $DBPath$DBName $LogFile 2&1   /etc/init.d/mysqld start /dev/null 2&1   echo "[$NewFile]Backup Success!" $LogFile   ;;  esacfi

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  echo "-------------------------------------------" $LogFile

来源:https://www.tulaoshi.com/n/20160219/1615680.html

延伸阅读
如何利用SSH(Shell)来备份和恢复MySQL数据库的方法 例如: 数据库参数为:: MySQL地址:mysql.dh.net MySQL名称:mysql_dbname MySQL用户:mysql_dbuser MySQL密码:mysql_dbpass 我要把数据库备份为bak.sql 步骤: 同样,使用windows系统自己带的telnet或者去下载一个putty来,登陆以后,一路cd到自己觉得合适的目录下(确认当前目录可写). 输...
标签: PHP
原文:http://blog.csdn.net/wapweb/archive/2006/05/05/709179.aspx 笔者是一个中小Linux网站的管理员,系统构架是:RHEL 4.0 + PHP 4.3 + Mysql 4.03 +Apache 1.23。日均IP访问量在200次,一个典型的Linux小型网站。由于是小型网站,所以没有经费使用磁带机进行系统备份,使...
标签: MySQL mysql数据库
适用对象: MySQL DB管理员. 适用条件: 对 Linux 环境有基础的管理及操作能力. 文章附注: 本篇文章为自由文件,欢迎非商业性质转载,并请注明出处! 商业性质转载请来信告知! 特别注意: 1.本篇文章提供之程式及设定*不一定*符合您的环境, 请依您的系统环境适当地修改程式及设定. 2.在执行任何具破坏性的动作及行为前, 请确认您已作好完整可...
讨论 MySQL 的备份和恢复机制,以及如何维护数据表,包括最主要的两种表类型:MyISAM 和 Innodb,文中设计的 MySQL 版本为 5.0.22。 本文介绍的是使用MySQL自带免费备份工具备份,当然你可以选择一些更方便的第三方工具进行备份和恢复MySql数据库。 目前 MySQL 支持的免费备份工具有:mysqldump、mysqlhotcopy,还可以用 SQL 语...
摘要 mysql从3.23.15版本以后提供数据库复制功能。利用该功能可以实现两个数据库同步,主从模式,互相备份模式的功能。(2004-02-12 10:45:10) By lanf mysql从3.23.15版本以后提供数据库复制功能。利用该功能可以实现两个数据库同步,主从模式,互相备份模式的功能。 数据库同步复制功能的设置都在mysql的设置文件中体现。mysql...

经验教程

864

收藏

7
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部