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

Centos实战MySQL定时全量备份(1)

usrbinmysqldump-uroot-p123456--lock-all-tables--flush-logstesthomebackup.sql如上一段代码所示ÿ

/usr/bin/mysqldump -uroot -p123456 --lock-all-tables --flush-logs test > /home/backup.sql

如上一段代码所示,其功能是将 test 数据库全量备份。其中

MySQL 用户名为:root 

密码为:123456

备份的文件路径为:/home (当然这个路径也是可以按照个人意愿修改的。)

备份的文件名为:backup.sql

参数 —flush-logs:使用一个新的日志文件来记录接下来的日志

参数 —lock-all-tables:锁定所有数据库

以下为我使用的数据库备份脚本文件:

本文件功能不是很复杂,首先是各种变量赋值。然后备份数据库,接着是进入到备份文件所在的目录,再将备份文件压缩。

其中倒数第三行是使用 nodejs 将备份的数据库文件上传到七牛云中,这里就不在过多的阐述了,与本文主题不符,想看具体实现可以查看 GitHub 源码。其中相应的变量改成自己的值即可拿过来使用。

#!/bin/bash
#在使用之前,请提前创建以下各个目录
#获取当前时间
date_now
=$(date "+%Y%m%d-%H%M%S")
backUpFolder
=/app
username
="root"
password
="123456"
db_name
="dbname"
#定义备份文件名
fileName
="${db_name}_${date_now}.sql"
#定义备份文件目录
backUpFileName
="${backUpFolder}/${fileName}"
echo
"starting backup mysql ${db_name} at ${date_now}."
/usr/bin/mysqldump -u${username} -p${password} --lock-all-tables --flush-logs ${db_name} > ${backUpFileName}
#进入到备份文件目录
cd ${backUpFolder}
#压缩备份文件
tar zcvf ${fileName}.tar.gz ${fileName}# use nodejs to upload backup file other place
#NODE_ENV
=$backUpFolder@$backUpFileName node /home/tasks/upload.js
date_end
=$(date "+%Y%m%d-%H%M%S")
echo
"finish backup mysql database ${db_name} at ${date_end}."

恢复全量备份

mysql -h localhost -uroot -p123456 或者
mysql> source /app/bakdup.sql

定时备份

输入如下命令,进入 crontab 定时任务编辑界面:

crontab -e

添加如下命令,其意思为:

每分钟执行一次备份脚本:* * * * * sh /app/mysqlBackup.sh
每五分钟执行 :
*/5 * * * * sh /app/mysqlBackup.sh
每小时执行:
0 * * * * sh /app/mysqlBackup.sh
每天执行:
0 0 * * * sh /app/mysqlBackup.sh
每周执行:
0 0 * * 0 sh /app/mysqlBackup.sh
每月执行:
0 0 1 * * sh /app/mysqlBackup.sh
每年执行:
0 0 1 1 * sh /app/mysqlBackup.sh

 

转:https://www.cnblogs.com/aqicheng/p/11009140.html



推荐阅读
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • Windows7 64位系统安装PLSQL Developer的步骤和注意事项
    本文介绍了在Windows7 64位系统上安装PLSQL Developer的步骤和注意事项。首先下载并安装PLSQL Developer,注意不要安装在默认目录下。然后下载Windows 32位的oracle instant client,并解压到指定路径。最后,按照自己的喜好对解压后的文件进行命名和压缩。 ... [详细]
  • 图像因存在错误而无法显示 ... [详细]
  • 本文介绍了关系型数据库和NoSQL数据库的概念和特点,列举了主流的关系型数据库和NoSQL数据库,同时描述了它们在新闻、电商抢购信息和微博热点信息等场景中的应用。此外,还提供了MySQL配置文件的相关内容。 ... [详细]
  • AFNetwork框架(零)使用NSURLSession进行网络请求
    本文介绍了AFNetwork框架中使用NSURLSession进行网络请求的方法,包括NSURLSession的配置、请求的创建和执行等步骤。同时还介绍了NSURLSessionDelegate和NSURLSessionConfiguration的相关内容。通过本文可以了解到AFNetwork框架中使用NSURLSession进行网络请求的基本流程和注意事项。 ... [详细]
  • 本文介绍了使用FormData对象上传文件同时附带其他参数的方法。通过创建一个表单,将文件和参数添加到FormData对象中,然后使用ajax发送POST请求进行文件上传。在发送请求时,需要设置processData为false,告诉jquery不要处理发送的数据;同时设置contentType为false,告诉jquery不要设置content-Type请求头。 ... [详细]
  • 在tp5项目中引入ueditor编辑器并实例化后插入图片出现目录创建失败问题在查看网络上各种解决方案之后总结如下:根据官网提示主要是因为图片保存的路径无权限导致,官方文档链接:ht ... [详细]
  • 校园表白墙微信小程序,校园小情书、告白墙、论坛,大学表白墙搭建教程
    小程序的名字必须和你微信注册的名称一模一样在后台注册好小程序。mp.wx-union.cn后台域名https。mp.wx-union.cn ... [详细]
  • fileuploadJS@sectionscripts{<scriptsrc~Contentjsfileuploadvendorjquery.ui.widget.js ... [详细]
  • 用ESP32与Python实现物联网(IoT)火焰检测报警系统
    下图是本案例除硬件连线外的3步导学开发过程,每个步骤中实现的功能请参考图中的说明。在硬件连线完成之后我们建议您先使用“一分钟上云体验”功能预先体验本案例的实际运行效果 ... [详细]
  • Java大文件HTTP断点续传到服务器该怎么做?
    最近由于笔者所在的研发集团产品需要,需要支持高性能的大文件http上传,并且要求支持http断点续传。这里在简要归纳一下,方便记忆 ... [详细]
  • 这篇文章给大家介绍怎么从源码启动和编译IoTSharp ,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。IoTSharp项目是 ... [详细]
  • 开发笔记:UEditor调用上传图片上传文件等模块
    1、引入ue相关文件,写好初始代码为了更好的封装整一个单独的插件,这里我们要做到示例化ue后隐藏网页中的编辑窗口,并移除焦点。 ... [详细]
  • 原文转自:http:blog.csdn.netchinasoftosgarticledetails7903045UploadAction.java:packagecr ... [详细]
  • UEditor可以如何直接复制word的图文内容到编辑器中
    这种方法是servlet,编写好在web.xml里配置servlet-class和servlet-mapping即可使用后台(服务端)j ... [详细]
author-avatar
Im边夫人
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有