方案
以一天一次的频率,在每天凌晨2:00备份生产环境数据库至文件服务器。为保证备份文件不过多占用文件服务器空间,备份文件以tgz压缩包格式保存且只保存7天的备份文件。另外每次备份都保存备份日志,一旦出现备份不成功等意外情况保证有据可查。
实现思路
在文件服务器上,编写备份shell脚本,以mysqldump方式远程备份正式环境mysql中的生产数据库,压缩备份好的sql文件,再删除源文件。然后文件试服务器上设置定时任务,每天2:00执行该脚本。一旦正式环境数据库出现异常,则解压最近的备份压缩包,然后在测试服务器使用备份sql远程对正式环境数据库进行还原。脚本内容如下
#! /bin/bash #备份文件存放目录,自行修改 BakDir=/home/mysql/backup #备份日志文件,自行修改 LogFile=/home/mysql/bak.log Date=`date +%Y%m%d` Begin=`date +"%Y年%m月%d日 %H:%M:%S"` cd $BakDir DumpFile=$Date.sql GZDumpFile=$Date.sql.tgz #可使用whereis命令查看本地mysqldump全路径进行替换 #修改-u -p -h后的数据用户名、密码、服务器地址,以及将mysql替换为要备份数据库名 /usr/bin/mysqldump -uroot -proot -hlocalhost mysql --quick >$DumpFile #替换tar全路径 /usr/bin/tar -zvcf $GZDumpFile $Date.sql #替换rm全路径 /usr/bin/rm $DumpFile End=`date +"%Y年%m月%d日 %H:%M:%S"` echo 开始:$Begin 结束:$End $GZDumpFile succ >>$LogFile filenum=`find $BakDir -name "*.sql.tgz*" | wc -l` if [ $filenum -gt 7 ]; then filenum=`find $BakDir -mtime +7 -name "*.sql.tgz*" -exec rm -f {} \;` fi
操作
1. 在测试服务器上新建存放备份文件和日志文件的目录
2.根据注释修改backup.sh的相应数值,将backup.sh复制到测试服务器上。(修改完后需手动执行backup.sh验证修改是否正确,正确情况下会产生一个bak.log日志文件及tgz备份文件)
3.在测试服务器上设置定时任务
①crontab -e 进入任务编辑器
②编辑内容 0 2 * * * /home/mysql/backup.sh(后面修改为测试服务器上backup.sh文件的路径)
③保存编辑任务退出
④ systemctl restart crond 重启定时任务服务
4. 为防止出现测试服务器重启定时任务不启动,导致shell脚本失效的情况,需保证定时任务服务在开机启动项中
①systemctl list-unit-files | grep enable查看是否有crond.service服务
②如果没有则执行命令 systemctl enable crond 将定时任务加到开机启动项中
5. 当出现需要还原数据库的情况时
① 解压备份压缩文件 tar -zxvf FileName.sql.tgz(最新备份文件名)
② 使用备份文件还原数据 mysql -uroot -proot -hlocalhost jeeplus_dj <20191021.sql(解压后备份文件,修改前面对应参数)
一切操作完成后,可通过修改定时任务执行时间及备份文件名称快速生成多个备份文件,进行验证。这种操作较繁琐。也可在操作完成后几天关注备份生成情况及备份日志验证操作正确性。
相关推荐
"Mysql数据库备份方案研究" 在当今社会中,数据库中的数据是一个项目中最重要的部分。如果数据有损失,那将对整个项目,甚至是整个公司,产生致命的打击。因此,备份数据库中的数据就是重中之重。MySQL数据库备份的...
MySQL数据库备份方案.docx
MySQL数据库备份方案.pdf
### MySQL数据库备份与恢复:深度解析与实践指南 在当今数据驱动的世界中,数据库的稳定性和数据的安全性显得尤为重要。MySQL作为全球最流行的开源关系型数据库管理系统之一,其备份和恢复策略是确保数据安全和系统...
综上所述,研究MySQL数据库的备份方案,不仅可以保障企业数据安全,还能提高系统的稳定性和可靠性。通过对`mysqldump`、`mydumper`等工具的深入理解和应用,可以定制出满足不同业务需求的高效备份和恢复策略,为企业...
总的来说,"mysql数据库备份工具"是一个实用的解决方案,帮助用户轻松、安全地管理和维护MySQL数据库的备份工作。通过自动化和优化的备份流程,它降低了数据丢失的风险,确保了业务的连续性。在使用过程中,用户应...
MySQL 数据库备份加密方案 MySQL 数据库备份加密方案是指使用 GPG 加密 MySQL 数据库备份,以保护敏感数据的安全。本方案介绍了使用 GPG 加密 MySQL 数据库备份的方法和步骤。 什么是 GPG GPG(GNU Privacy Guard...
总的来说,这个C#编写的MYSQL数据库备份恢复工具结合了C#的GUI编程能力与MySQL的数据管理功能,为用户提供了一种便捷的数据库维护方案。理解并掌握其工作原理,有助于提升对C#编程和数据库管理的理解,对于开发者来...
总结来说,"windows备份mysql数据库bat脚本.rar"提供了一个高效且灵活的MySQL数据库备份方案,结合了`mysqldump`工具和批处理脚本,实现了自动化备份和历史数据管理。企业可以根据自身需求调整脚本参数,以满足特定...
本文将详细介绍一个名为“mysql数据库备份程序”的工具,以及如何利用它来高效地备份MySQL数据库。 这个备份程序的核心文件是`bak.php`,它是一个PHP脚本,专门设计用于简化MySQL数据库的备份过程。PHP是一种广泛...
《易语言MYSQL数据库备份还原器》是一款专为易语言编程环境设计的实用工具,它能够帮助用户方便地对MYSQL数据库进行备份与恢复操作。这款软件的核心功能包括数据库的备份和还原,以及目录复制,旨在提高数据库管理的...
总的来说,"mysql数据库备份.rar"提供了一种便捷的解决方案,通过PHP自动化MySQL数据库的备份和清理过程。对于任何依赖MySQL存储关键数据的网站或应用程序,定期执行这样的备份操作都是维护数据安全的重要环节。
总的来说,"Mysql数据库备份还原工具"是一个方便的解决方案,它降低了对MySQL数据库进行备份和还原的技术门槛。对于那些希望简化数据库管理流程的用户,特别是小型企业和个人开发者,这是一个非常实用的工具。通过它...
数据库备份是防止数据丢失的关键步骤。无论是系统故障、硬件损坏、恶意攻击还是人为错误,都有可能导致数据丢失。定期备份可以确保在灾难发生时,能够快速恢复到正常状态,降低业务中断的影响。 二、MySQL备份类型 ...
MySQL数据库是广泛应用于...综上所述,"MySql数据库备份工具"结合了各种备份策略和技术,提供了全面的数据保护方案。通过合理利用这些功能,用户可以确保其MySQL数据库的安全,防止数据丢失,同时保持系统的高效运行。
5. **备份与恢复**:备份文件如"50183 MySQL数据库原理及应用(第2版)(微课版)-教学用数据库(Mysql数据库备份文件)",提供了数据库灾难恢复的能力。通过mysqldump工具,我们可以创建数据库的完整或增量备份,并...
本文将详细介绍如何编写一个在Linux环境下,每天凌晨3点自动执行的MySQL数据库备份脚本,以及如何配置Linux的定时任务来执行这个脚本。 首先,我们来看`DB_backup.sh`这个脚本文件。它通常包含以下核心部分: 1. *...
为了使用`mysqlhotcopy`,首先需要安装DBD-mysql Perl模块以支持该脚本与MySQL数据库的连接。然后可以通过设置Crontab任务来定期执行备份脚本,例如每天凌晨3点自动备份数据库。 ##### 3. 使用`mysqldump`备份...
Mysql 数据库备份实践指南 本篇文章将详细介绍 Mysql 数据库备份的方法和步骤,从基础的 mysqldump 命令到备份多个数据库和所有数据库的操作,还有直接复制整个数据库项目和使用 mysqlhotcopy 工具快速备份的方法。...
《MonkeyOnline》数据库备份方案是针对游戏数据安全的重要策略,旨在确保数据的高可用性和灾难恢复能力。方案采用主从复制、完整备份和增量备份三种方式相结合,以达到最佳的备份效果。 首先,主从复制是实时在线热...