Linux下定时任务实现mysql自动备份并上传远程ftp

1、创建保存备份文件的目录:/home/mysql_data

cd /home

mkdir mysql_data

2、创建备份脚本文件:/home/mysql_data/mysql_databak.sh

cd /home

cd  mysql_data

touch mysql_databak.sh

vim  mysql_databak.sh

#!/bin/sh

DUMP=/usr/bin/mysqldump#mysqldump备份文件执行路径

OUT_DIR=/home/mysql_data#备份存放路径

LINUX_USER=root#系统用户名

DB_NAME=pw85#要备份的数据库名字

DB_USER=root#数据库账号 注意:非root用户要用备份参数 --skip-lock-tables,否则可能会报错

DB_PASS=123456#数据库密码

DAYS=7#DAYS=7代表删除7天前的备份,即只保留最近7天的备份

cd$OUT_DIR #进入备份存放目录

DATE=‘date +%Y_%m_%d‘#获取当前系统时间

OUT_SQL="$DATE.sql"#备份数据库的文件名

TAR_SQL="mysqldata_bak_$DATE.tar.gz"#最终保存的数据库备份文件名

$DUMP-u$DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R--skip-lock-tables> $OUT_SQL #备份

tar-czf $TAR_SQL ./$OUT_SQL #压缩为.tar.gz格式

rm$OUT_SQL #删除.sql格式的备份文件

chown$LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL #更改备份数据库文件的所有者

find$OUT_DIR -name "mysqldata_bak*" -type f -mtime +$DAYS -exec rm {} \;#删除7天前的备份文件(注意:{} \;中间有空格)

deldate=’date -d -7day +%Y_%m_%d’ #删除ftp服务器空间7天前的备份

ftp-n<

open192.168.1.1 21 #打开ftp服务器。21为ftp端口

useradmin 123456 #用户名、密码

binary#设置二进制传输

cdmysqlbak #进入ftp目录(注意:这个目录必须真实存在)

lcd/home/mysql_data #列出本地目录

prompt

mputmysqldata_bak_$date.tar.gz mysqldata_bak_$date.tar.gz #上传目录中的文件

mdeletemysqldata_bak_$deldate.tar.gz mysqldata_bak_$deldate.tar.gz #删除ftp空间7天前的备份

close#关闭

bye! #退出

3、修改文件属性,使其可执行

chmod +x /home/mysql_data/mysql_databak.sh

4、修改/etc/crontab   #添加计划任务

vi/etc/crontab     #在下面添加

30 1 * * * root /home/mysql_data/mysql_databak.sh   #表示每天凌晨1点30执行备份

5、重新启动crond使设置生效

/etc/rc.d/init.d/crond restart

chkconfig crond on #设为开机启动

service crond start #启动

mysql定时备份并上传ftp_Linux下定时任务实现mysql自动备份并上传远程ftp相关推荐

  1. mysql远程定时任务_Linux下定时任务实现mysql自动备份并上传远程ftp

    Linux下定时任务实现mysql自动备份并上传远程ftp 1.创建保存备份文件的目录:/home/mysql_data cd /home mkdir mysql_data 2.创建备份脚本文件:/h ...

  2. linux mysql 备份 恢复_[转]linux下如何备份与恢复mysql数据库。

    数据库备份是非常重要的.如果定期做好备份,这样就可以在发生系统崩溃时恢复数据到最后一次正常的状态,把损失减小到最少. 一. 用命令实现备份 MySQLl提供了一个mysqldump命令,我们可以用它进 ...

  3. mac下php mysql数据库文件怎么打开_Mac环境下php操作mysql数据库的方法分享

    今天在mac上搭建好了php的环境,我们就把php操作mysql数据库的方法分享给大家,有需要的小伙伴参考下. Mac本地环境搭建 在Mac系统,我们可以使用MAMP Pro 软件来搭建本地服务器.安 ...

  4. mysql 5.1.73.tgz下载_Linux下安装python,mysql

    1.python下载 请在终端输入如下命令: cd /home wget http://cdn.npm.taobao.org/dist/python/3.6.5/Python-3.6.5.tgz 说明 ...

  5. Html做文章查看上一篇下一篇功能,SDCMS文章添加上一篇、下一篇

    SDCMS是一款小型ASP内容管理系统管理开源程序,虽然是小型的,但是主要功能都俱备.在细节方面,该款开源程序没有对内置标签进行统一的管理,不方便日后功能的修改,如果需要修改或者添加,需要去官方网站上 ...

  6. linux 备份并压缩文件,Linux下文件的压缩和备份.doc

    Linux下文件的压缩和备份 Linux下文件的压缩和备份文/ heiyeluren 文件的备份和压缩是管理员遇到的首要问题,我刚学Linux,总结一下书上和网络上的方法.(本文章基于Redhat9) ...

  7. php安装依赖于mysql吗_PHP_老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略,一、首先安装MySql: 对于MySql - phpStudy...

    老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略 一.首先安装MySql:对于MySql来讲在整个过程中是相对独立的安装,并且我的ubuntu在以前做开发的时候就已经安装了MySq ...

  8. linux mysql插入中文乱码_解决Linux下Tomcat向MySQL插入数据中文乱码问题

    一.问题 在windows上面使用eclipse开发的项目在windows上面运行一切正常,部署到腾讯云时出现向MySQL数据库中插入数据是中文乱码 二.解决办法 1.尝试一 直接在linux上面使用 ...

  9. yum mysql的安装目录在哪_linux下yum安装 mysql 及详细配置及修改mysql默认目录

    linux下yum安装 mysql 及详细配置及修改mysql默认目录. 一.[root@sample ~]# yum -y install mysql-server ← 安装MySQL -..略 I ...

最新文章

  1. 深度学习中的图像分割:方法和应用
  2. 关于Java里面File类创建txt文件重复???
  3. 【Java】6.7 内部类
  4. Cloud.com今天正式上线了
  5. iphone固件降级_我在iPhone上装了个安卓
  6. wordpress php执行短代码_PHP 8.0发布日期和PHP中JIT的状态
  7. Scala与Java混编译:java日志不打印的问题
  8. node服务的监控预警系统架构 1
  9. 事务和锁机制是什么关系
  10. 【SimpleITK】医疗影像分割结果评价指标计算
  11. CAD 卸载工具,完美彻底卸载清除干净cad各种残留注册表和文件
  12. 听写英语单词的小程序
  13. 如何使Tello无人机能够通过Python进行条形码扫描?
  14. 高中数学解题技巧:平面解析几何-圆锥曲线的综合问题
  15. 收藏!!!不同品牌笔记本/台式机进入BIOS按键
  16. UVALive 6678 Judging Troubles
  17. 迎接2012新赛季——HDOJ系列热身赛(4)部分结题报告
  18. 微型计算机期末考试a卷,微机原理与接口技术期末试卷A
  19. Windows 7安装软件时无法将注册值写入注册表的处理方法
  20. win7平台下QT软件的打包与发布(部署与安装)

热门文章

  1. 2022年春季学期课程基本信息总汇
  2. 当周期信号的频率趋向无穷时,它将消失
  3. 相机成像与校正原理:将外部世界进行降维
  4. Apriltag : 用于视觉系统标定图标tag36H11
  5. 深度学习平台你知道多少?
  6. 睡醒了,有精神了,简单讲讲这几天的故事了
  7. 如何搭建VUE开发环境
  8. php 计算两点时间距离,PHP计算地球上两点之间的距离(示例详解)
  9. java编写类骑士游历_java课程设计骑士游历程序的开发
  10. android朋友圈图片背景图片,做个很哇塞的女孩背景图朋友圈