热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Lunix环境下MySQL数据库的自动备份脚本_MySQL

Lunix环境下MySQL数据库的自动备份脚本
可以将这个脚本放进crontab,每天凌晨执行一次,自动备份

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

  #Setting
  #设置数据库名,数据库登录名,密码,备份路径,日志路径,数据文件位置,及备份方式
  #默认情况下备份方式是tar,还可以是mysqldump,mysqldotcopy
  #默认情况下,用root(空)登录mysql数据库,备份至/root/dbxxxxx.tgz
  #!/bin/bash
  #This is a ShellScript For Auto DB Backup
  #Powered by aspbiz
  #Setting
  DBName=mysql
  DBUser=root
  DBPasswd=
  BackupPath=/root/
  LogFile=/root/db.log
  DBPath=/var/lib/mysql/
  #BackupMethod=mysqldump
  #BackupMethod=mysqlhotcopy
  #BackupMethod=tar
  #Setting End
  NewFile="$BackupPath"db$(date +%y%m%d).tgz
  DumpFile="$BackupPath"db$(date +%y%m%d)
  OldFile="$BackupPath"db$(date +%y%m%d --date=’5 days ago’).tgz
  echo "-------------------------------------------" >> $LogFile
  echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile
  echo "--------------------------" >> $LogFile
  #delete Old File
  if [ -f $OldFile ]
  then
  rm -f $OldFile >> $LogFile 2>&1
  echo "[$OldFile]delete Old File Success!" >> $LogFile
  else
  echo "[$OldFile]No Old Backup File!" >> $LogFile
  fi
  if [ -f $NewFile ]
  then
  echo "[$NewFile]The Backup File is exists,Can’t Backup!" >> $LogFile
  else
  case $BackupMethod in
  mysqldump)
  if [ -z $DBPasswd ]
  then
  mysqldump -u $DBUser --opt $DBName > $DumpFile
  else
  mysqldump -u $DBUser -p$DBPasswd --opt $DBName1 > $DumpFile
  fif
  tar czvf $NewFile $DumpFile >> $LogFile 2>&1
  echo "[$NewFile]Backup Success!" >> $LogFile
  rm -rf $DumpFile
  ;;
  mysqlhotcopy)
  rm -rf $DumpFile
  mkdir $DumpFile
  if [ -z $DBPasswwd ]
  then
  mysqlhotceopy -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>&
  echo "[$NewFile]Backup Success!" >> $Log1File
  rm -rf $DumpFile
  ;;
  *)
  /etc/init.d/mysqld stop >/dev/null 2>&1
  tar czvf $NewFile $DBPath$DBName >> $LogFlile 2>&1
  /etc/init.d/mysqld start >/dev/null 2>&1
  echo "[$NewFille]Backup Success!" >> $LogFile
  ;;
  esac
  fi
  echo "-------------------------------------------" >> $LogFile

推荐阅读
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 本文介绍了在MacOS系统上安装MySQL的步骤,并详细说明了如何设置MySQL服务的开机启动和如何修改MySQL的密码。通过下载MySQL的macos版本并按照提示一步一步安装,在系统偏好设置中可以找到MySQL的图标进行设置。同时,还介绍了通过终端命令来修改MySQL的密码的具体操作步骤。 ... [详细]
  • mysql自动打开文件_让docker中的mysql启动时自动执行sql文件
    本文提要本文目的不仅仅是创建一个MySQL的镜像,而是在其基础上再实现启动过程中自动导入数据及数据库用户的权限设置,并且在新创建出来的容器里自动启动My ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
author-avatar
手机用户2702935421_666
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有