linux下利用shell脚本和mysqldump热备份和恢复mysql
对mifeng数据库进行每周六3:33完全热备份,并可以完全恢复!
一、先建立备份脚本
#vi /mifengbackup/backup.sh #!bin/bash
cd /mifengbackup
echo "You are in backup dir"
mv backup* /oldbackup
echo "Old dbs are moved to oldbackup folder"
File = backup-$Now.sql
mysqldump -uroot -p123456 --quick --databases database-names --flush-logs --single-transaction > $File
echo "Your database backup successfully completed"
上面脚本文件保存为backup.sh,并且系统中已经创建两个目录/oldbackup和/mifengbackup。每次执行backup.sh时都会先将/mifengbackup目录下所有名称为backup开头的文件移到/oldbackup目录。
对于具体备份sql如果不熟悉,可以看我的这篇文章:mysqldump使用大全
二、为上述脚本制定执行计划
#crontab -e
30 1 * * * /backup.sh
更多关于crontab知识,参阅:Linux定时任务Crontab命令详解
附mysqldump参数说明:MYSQLDUMP参数详解(转)写得很详细!
到了计划任务执行的时间,执行好后会给我们发一封邮件,这是给我们的提示
You have new mail in /var/spool/mail/root
根据提示查看这封邮件
[root@localhost mail]# vi root
X-Original-To: root
Delivered-To: root@localhost.localdomain
Received: by localhost.localdomain (Postfix, from userid )
id 46BD24493CA2; Sat, Dec :: - (PST)
From: "(Cron Daemon)" <root@localhost.localdomain>
To: root@localhost.localdomain
Subject: Cron <root@localhost> /backup.sh
Content-Type: text/plain; charset=UTF-
Auto-Submitted: auto-generated
Precedence: bulk
X-Cron-Env: <XDG_SESSION_ID=>
X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/>
X-Cron-Env: <LANG=en_US.UTF->
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Message-Id: <.46BD24493CA2@localhost.localdomain>
Date: Sat, Dec :: - (PST) /bin/sh: /backup.sh: No such file or directory
主要是最后一句,是错误原因,提示文件路径找不到,因为我们没有配置环境变量,所以涉及到路径的最好写绝对路径。
#vi /usr/local/mifengbackup/backup.sh #!bin/bash
cd /usr/local/mifengbackup
echo "You are in mifengbackup dir"
mv backup* /usr/local/oldbackup
echo "Old dbs are moved to oldbackup folder"
File = backup-$Now.sql
mysqldump -h177.77.177. -uroot -p123456 --quick --databases mifeng --flush-logs --single-transaction > $File
echo "Your database backup successfully completed"
三、恢复备份sql文件
cd /mysqlback
tar zxvf extmail20170515.tar.gz
mv extmail20170515.sql extmail.sql
mysql -uroot -p < extmail.sql
linux下利用shell脚本和mysqldump热备份和恢复mysql的更多相关文章
- linux下利用shell脚本实现添加crontab任务
本来直接用crontab -e 就可以打开vim,输入要执行的任务保存退出就可以添加任务直接启动运行了.但是今天组长说能不能写个shell不用打开vi就能添加到crontab的. 最先想到的是怎么在s ...
- ftp:linux下利用shell脚本添加虚拟用户并赋予权限
首先ftp配置应为虚拟用户登录模式 用户密码文本目录为/etc/vsftpd/vftpuser,代码如下: #!/bin/bash # ];then username=$ password=$ hom ...
- Linux下添加shell脚本使得nginx日志每天定时切割压缩
Linux下添加shell脚本使得nginx日志每天定时切割压缩一 简介 对于nginx的日志文件,特别是access日志,如果我们不做任何处理的话,最后这个文件将会变得非常庞大 这时,无论是出现异常 ...
- linux下实现shell脚本自动连接mongodb数据库并创建索引
在linux下创建shell脚本
- 2019.11.13课堂实验之用Linux下的shell脚本完成两文本交替输出
有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccc ...
- shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中
shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...
- windows下建立文件的换行符^M导致linux下的shell脚本执行错误的解决方式
常常在windows下编辑的文件远程传送到linux下的时候每行末尾都会出现^M.这将导致shell脚本执行错误,主要是由于dos下的编辑器和linux下的编辑器对文件末行的回车符处理不一致导致. 主 ...
- linux下的shell脚本(基本)
shell有些命令和格式不用老是容易忘,学而时习之,不亦说乎~ 先说明以下内容来自: http://c.biancheng.net/cpp/shell/ ,C语言中文网,请大家支持原作,点击链接查看. ...
- Linux 下执行Shell 脚本的方式
Shell 脚本的执行方式通常有如下三种: (1)bash script-name 或者 sh script-name:(2)path/script-name或者./script-name:(3)so ...
随机推荐
- Idea下Python开发平台的搭建
1. python的下载 https://www.python.org/downloads/ 2. idea下python插件的安装 点击File->Settings...->Plugin ...
- linkhashmap实现原理
HashMap和双向链表合二为一即是LinkedHashMap.所谓LinkedHashMap,其落脚点在HashMap,因此更准确地说,它是一个将所有Entry节点链入一个双向链表的HashMap. ...
- Python break 语句
Python break 语句 Python break语句,就像在C语言中,打破了最小封闭for或while循环. break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归 ...
- myeclipse8.6首次运行maven项目的问题解决
myeclipse8.6导入maven项目后识别为普通java项目,即项目图标上没有小M的标识.这时是无法直接运行的. 解决方法:1,打开Window --> perferences,找到mye ...
- WCF 自承载 提供源码
一.WCF 简单介绍 Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,是一套通讯接口.现在比较流行的SOA就可以通过WCF实现. ...
- 对于Ian的访谈,不少关于GAN的内容
文章链接如下: http://3g.163.com/dy/article/DD1GBSLF0511ABV6.html 里面提到胶囊网络,我找了这篇文章看了下: https://blog.csdn.ne ...
- [Todo]提升电商网站性能方面的一些资料材料
又到国庆,喷一喷12306.cn的技术架构 http://chengxu.org/p/369.html 其中用到了不少比较细节的优化技巧. 提到库存管理是电商非常难的地方.也讲了跟秒杀相关的一些内容.
- Ubuntu 字体设置:使用Windows 字体
基础知识 Sans-serif=无衬线体=黑体:并不是具体一款字体,而是一类字体,选择它其实等于选择这类字体中优先级最高的那款字体. Serif=衬线体=白体:同上 Monospace=等宽字体,意思 ...
- 手势 触摸【缩放】GestureDetector MotionEvent 案例
GestureDetector和ScaleGestureDetector示例 /** * 演示[单点触摸手势识别器] * 演示[缩放手势识别器]最简单的使用 * @author 白乾涛 */ ...
- 【版本】API NDK 系统 分辨率 统计
Android版本号 版本 API/NDK版本号 代号 发布时间 7.1.1 25 Nougat 7 ...