阅读模式:

crontab+shell脚本实现定时备份mysql数据库

查看:8703  回复:2  类型:  来源:php自学网  标签 mysql linux centos shell

为了防止操作失误或者系统软件出现崩溃导致的mysql数据库数据的丢失,通过每天定时备份数据库的数据,当数据库出现问题的时候可以方便的恢复数据。
linux crontab + shell 定时备份数据库的实现:


1.创建shell脚本

cd /usr/local/


2.建立shell脚本目录

mkdir shell
cd shell


3.建立shell脚本

        通过mysqldump命令备份数据库数据到指定的目录

vim mysqldump.sh
#! /bin/bash
echo "mysqldump start ..."
mysqldump -uroot test > /usr/local/nginx/html/mysqldump/DB_`date +%Y_%m_%d_%H_%M_%s`.sql
#导出数据库结构mysqldump -uroot -d 数据库名> test.sql
#导出表结构mysqldump -uroot -d 数据库名 表名> test.sql
echo "mysqldump success ok !"


        mysqldump(mysql备份命令) -uroot(指定用户名) -p123456(密码) test(指定数据库) > /usr/local/nginx/html/mysqldump/DB_`date +%Y_%m_%d_%H_%M_%s`.sql(指定数据库备份到的[网战目录]路径和带日期的文件名)

4.保存文件退出,运行脚本

chmod +x mysqldump.sh #给脚本执行权限
./mysqldump.sh


        *运行脚本可能会报警告的错误,因为在脚本中使用了明文密码,但不影响脚本的执行。
        mysqldump: [Warning] Using a password on the command line interface can be insecure.
        解决方法:http://zixuephp.net/article-292.html

5.执行定时命令,运行脚本

crontab -e
0 */2 * * * /usr/local/shell/mysqldump.sh  #每天每两小时运行一次备份shell脚本文件一次

        保存脚本,查看定时命令的运行信息

crontab -l

        当数据库文件备份一段时,备份的文件越来越多,会占用一定的磁盘空间,这时可以清理一些几天前或一星期前的文件来节省空间,shell脚本批量删除几天前文件操作:http://zixuephp.net/article-323.html

分享到:
2 0

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

最新评论:
BinGe  发表于 2017-08-14 17:14:45  中国四川成都
沙发
回复
站长 2017-08-14 23:11 中国广东深圳
回复
回复:[主题]
表情:
 提交评论
清空

发布评论:


登录:
  表情:
评论话题
推荐阅读:
纯干货,程序员面试的超实用技巧   阅读:5104网站局部小图片优化-base64编码图片   阅读:21456linux php7编译安装mongodb扩展   阅读:10138centos 7 忘记root密码   阅读:5840mysql5.7主从同步中binlog同步模式详解   阅读:9252csv文件一键导入数据到mysql数据库   阅读:7757centos 7 添加 redis 3.2.9 开机启动脚本   阅读:10604centos 7 安装 redis 3.2.9   阅读:7621Mysql在大型网站的应用架构演变   阅读:5447企业让你去面试,可能不是真的招人   阅读:6801解决 nginx 413 request entity too large   阅读:5385session与cookie的区别   阅读:4903给 centos 7 安装桌面环境   阅读:18077web项目高并发量网站解决方案   阅读:5422php翻转字符串   阅读:4466shell发送邮件脚本   阅读:10237linux教程,鸟哥私房菜(pdf全集)   阅读:11470mysql数据库性能的基本优化   阅读:5243mysql 为什么添加索引可以提高访问速度   阅读:7073爱编程,也爱健康   阅读:5235php打印三角形   阅读:12923栈和堆的区别   阅读:5960面试的时候和你谈理想,是理想or入坑?   阅读:12245mysql5.7主从同步配置   阅读:7869linux rarcrack破解rar、zip和7z压缩包简单密码的工具   阅读:19519给 centos 7 安装桌面环境   阅读:18077封装php redis缓存操作类   阅读:10452php 读取和设置redis的键值   阅读:8308phpexcel 超简单从excel表格一键导入数据到数据库教程   阅读:13496shell脚本统计当前服务器并发连接数   阅读:8918centos 7搭建zabbix3.4   阅读:7603网站性能优化-页面静态缓存   阅读:6302mysql共享锁和排他锁详解   阅读:8553php+redis实现消息队列   阅读:17007爱编程,也爱健康   阅读:5235nginx安装redis模块   阅读:7602centos 7.2 添加php7 的 php-fpm 开机启动   阅读:26813浅谈javascript的函数节流   阅读:5583centos 7 修改系统屏幕分辨率   阅读:50082php 统计网页打开耗时和脚本运行内存   阅读:7754给网站添加一键qq登录的功能   阅读:8635shell脚本批量删除几天前的文件   阅读:11862php+redis实现消息队列   阅读:17007centos 7搭建zabbix3.4   阅读:7603最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:34508centos 7 设置 nginx-1.11.10 开机启动   阅读:9027给php7安装redis扩展库   阅读:9436html5 离线缓存的使用   阅读:5093mysql5.7开启sql日志的配置   阅读:10780php 生成图片,给图片加水印   阅读:7492