linux 服务器自动备份脚本的方法(mysql、附件备份)

一、创建backup.sh脚本文件

#!/bin/sh
SOURCE_FOLDER=/data
DB_FOLDER=/data/db
BACKUP_FOLDER=/data/backup
TM=`date +%Y%m%d%H%M%S`
echo start to dump mysql database and backup files at $TM
# delete old sql backup files
cd $DB_FOLDER
rm -rf $DB_FOLDER/*.sql
#dump mysql data
/usr/bin/mysqldump -h127.0.0.1 -uroot -pcz_pims@2018 --single-transaction --master-data=2 --databases ms > ms-$TM.sql
echo dump db pims_hf as pims_hf-$TM.sql
/usr/bin/mysqldump -h127.0.0.1 -uroot -ppass --single-transaction --master-data=2 --databases ms_workflow > pims_hf_workflow-$TM.sql
echo dump db ms_workflow as pims_hf_workflow-$TM.sql
/usr/bin/mysqldump -h127.0.0.1 -uroot -ppass --single-transaction --master-data=2 --databases files > files-$TM.sql
echo dump db filesrv as files-$TM.sql
# delete backup files which 30 days before than today
find $BACKUP_FOLDER/* -type f -mtime +30 -name "*.zip" -exec rm {} \;
# compress
cd $SOURCE_FOLDER
zip -q -r $BACKUP_FOLDER/db-$TM.zip db
zip -q -r $BACKUP_FOLDER/files-new.zip files
echo zip $SOURCE_FOLDER files and backup to $BACKUP_FOLDER end
# 调用系统方式 send notice msg to 钉钉通知
curl -X POST -d "templateCode=003&content=文件备份成功,备份文件保存到此目录: $BACKUP_FOLDER" http://127.0.0.1:8080/admin/do/notify/dingding
echo -e end backup files at $TM '\n\n\n'

二、创建定时任务

1)、在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。
2)、直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务。

crontab文件格式:

*           *        *        *        *           command

minute   hour    day   month   week      command

分          时        天      月        星期      命令

例如:每周每月每天1点0分执行备份脚本,日志放在backup.log文件中

0 1 * * * /bin/sh /home/script/backup.sh >> /home/script/backup.log 2>&1

若测试脚本是否正常运行,可以手动执行测试

3)、查询当前用户定时任务。

总结

以上所述是小编给大家介绍的linux 服务器自动备份脚本的方法(mysql、附件备份),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

(0)

相关推荐

  • linux下mysql自动备份数据库与自动删除临时文件

    一.每日23:00自动删除临时文件 首先查看一下crontab的任务列表:crontab -l然后新建:crontab -e添加一行:00 03 * * * rm -rf /www/cmstest/my120/public/scripts/jpgraph/*保存退出.重启服务:  /etc/rc.d/init.d/crond restart 二.每日24:00自动备份数据库 利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的. 1.创建保存备份文件的路径/mysq

  • Linux VPS/服务器 网站及数据库自动本地备份并FTP上传备份脚本

    准备工作: 需要提前在VPS安装好lftp,lftp功能上比较强大,CentOS直接执行:yum install lftp,Debian执行:apt-get install lftp . 需要在VPS上创建/home/backup/ 目录,在FTP上创建backup目录. 如果VPS上数据库不多的话使用Godaddy的免费空间就可以(10GB空间,300GB流量),只要注册个域名就免费送. 下面将备份脚本进行部分注释: 复制代码 代码如下: #!/bin/bash #Funciont: Back

  • Linux自动备份MySQL数据库脚本代码

    在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩.需要注意的是,这段脚本仅适用数据一致性要求不高的环境. 复制代码 代码如下: #!/bin/bash mysql_pwd="password"mysql_dump="/usr/local/mysql/bin/mysqldump"cur_year=$(date +"%Y") cur_month=$(date +"%m") cur_day=$(date +&q

  • Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用户登录服务器 mkdir -p /backup/oracledata #新建Oracle数据库备份目录 chown -R oracle:oinstall /backup/oracledata -R #设置目录权限为oinstall用户组的oracle用户(用户oracle与用户组oinstall是在

  • Linux oracle数据库自动备份自动压缩脚本代码

    复制代码 代码如下: #!#backup.sh##系统名称sysname=gzsyspath=/home/oracle/databak/$sysname/v_date=$(date '+%Y%m%d%H%M%S')logfile=$syspath/backup.$v_date.logecho backup_time>>$logfiledate '+%Y-%m-%d %H:%M:%S' >> $logfile#数据库使用情况echo "backup gznxt"&

  • linux下实现ftp自动备份shell脚本

    利用here文档 复制代码 代码如下: #!/bin/sh ftp -ivn 210.29.28.124 <<EOF user yun yun2011 lcd /home/veyun cd /home/veyun/yhb get v bye EOF 解释: -i :关闭多文件传输过程中的交互提示,所以不会再有让用户输入用户名和密码的提示 -n:阻止了初始连接时的自动登录 -v:将ftp命令设置为verbose模式,从而可以在会话时看到其中的命令 在本例中使用用户名yun和密码yun2011登录

  • Linux下自动备份MySQL的方法

    Linux下可以利用crontab系统每天定时备份MySQL数据库,以下是详细步骤: 1.创建保存备份文件的路径/mysqldata #mkdir /mysqldata 2.创建/usr/sbin/bakmysql文件 #vi /usr/sbin/bakmysql 输入 rq=` date +%Y%m%d ` tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql 或者写成 rq=` date +%Y%m%d ` mysqldump –all-dat

  • linux 服务器自动备份脚本的方法(mysql、附件备份)

    一.创建backup.sh脚本文件 #!/bin/sh SOURCE_FOLDER=/data DB_FOLDER=/data/db BACKUP_FOLDER=/data/backup TM=`date +%Y%m%d%H%M%S` echo start to dump mysql database and backup files at $TM # delete old sql backup files cd $DB_FOLDER rm -rf $DB_FOLDER/*.sql #dump

  • Linux系统设置开机自动运行脚本的方法实例

    前言 大家好,我是良许. 在工作中,我们经常有个需求,那就是在系统启动之后,自动启动某个脚本或服务.在 Windows 下,我们有很多方法可以设置开机启动,但在 Linux 系统下我们需要如何操作呢? Linux 下同样可以设置开机启动,但可能需要我们敲一些命令(可能也有 UI 界面的设置方法,但我不熟,我更多是玩命令).下面我们就介绍三种简单但可行的开机启动设置方法. 方法一:修改 /etc/rc.d/rc.local 文件 /etc/rc.d/rc.local 文件会在 Linux 系统各项

  • Linux实现自动挂载autofs的方法详解

    目录 实现自动挂载-autofs autofs工具简单使用 autofs配置详细说明 自动挂载资源有两种格式 优化 Linux 系统性能 安装 Tuned 选择调整配置文件 检查系统推荐的调整配置文件 实现自动挂载-autofs autofs 服务实现自动挂载外围设备,NFS共享目录等,并在空闲5分钟后后自动卸载 相关包和文件 : 软件包:autofs 服务文件:/usr/lib/systemd/system/autofs.service 配置文件:/etc/auto.master autofs

  • 分享个简易版Linux服务器初始化Shell脚本

    该Shell脚本主要用于新安装Linux服务器系统的初始化工作,具体包括: 关闭IPv6模块 关闭SELinux 让vim显示颜色 设置系统语言编码 优化系统服务 内核参数优化等. 可以根据自己的实际情况修改,可用于生产环境.原作者是NetSeek,本人做了部分修改. 复制代码 代码如下: #!/bin/sh # desc: lsm03624 modified by www.webnginx.com #-------------------cut begin-------------------

  • linux adsl 拨号自动配置脚本的方法

    在使用动态vps服务器的时候发现一枚已经写好的自动配置拨号的shell脚本,分享一下,免去手动配置的烦恼,代码如下 #! /bin/sh PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin Log=/var/log/pppoe.log sed -i '/^GATEWAY/d' /etc/sysconfig/network-scripts/ifcfg-et

  • Linux双网卡绑定脚本的方法示例

    linux运维及配置工作中,常常会用到双网卡绑定,少数几台服务器的配置还好,如果是需要配置几十甚至上百台,难免会枯燥乏味,易于出错,我编写了这个双网卡绑定的辅助脚本,可傻瓜式地完成linux双网卡绑定工作,当然,该脚本主要还是用于小批量的系统配置,如需配置大量的服务器,可提取脚本中的bonding函数,稍作修改即可,你值得一试! 1.适用范围 该shell脚本可在以下linux系统创建多个绑定网卡,用于生产环境没问题的: Redhat 5.x CentOS 5.x Kylin 3.x KUX 2

  • 小白教程! Linux服务器上JDK安装配置方法

    本文实例为大家分享了Linux上JDK安装配置方法,供大家参考,具体内容如下 一.环境 VMware12 Pro CentOS-6.7-i386-bin-DVD1 jdk-8u151-linux-i586 二.详细安装步骤前提:需要卸载自己Linux上的jdk rpm-qa| grepjdk 会显示你所有包含jdk这个字符串的安装包 rpm-e--nodeps对应的每个包名 会卸载对应的包 之后如果java -version显示 就是卸完了. 我之前是装过jdk1.7的,所以我需要卸载 ,没装过

  • Nginx+PHP(FastCGI)搭建高并发WEB服务器(自动安装脚本)第二版

    本文是依照张宴的 Nginx 0.7.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器(第5版) 编写 原文地址 http://blog.s135.com/nginx_php_v5/ 因为编译过程和等待时间繁琐,于是就自己写了个全自动安装的shell脚本,此脚本可以随意修改,转载请注明出处. 这篇文章为这个系列的第二版,在第一版的基础上加入 1.日志切割 2.智能选择yum或者rpm安装 下载地址 注意:如果不能使用yum源,请放入系统光盘,单张dvd的,如果

  • MySQL备份脚本的写法

    前言: 数据库备份的重要性不言而喻,特别是在生产环境,任何数据的丢失都可能产生严重的后果.所以,无论什么环境,我们都应该有相应的备份策略来定时备份数据库.在 MySQL 中,比较常用的逻辑备份工具是 mysqldump,本篇文章将介绍 MySQL 定时备份的方法. 1.制定合适的备份策略 对于不同的数据库环境,我们应该考虑不同的备份策略.制定备份策略时,应考虑以下几点因素: 物理备份还是逻辑备份.这个可以由数据库大小决定,比如说小于100G用逻辑备份,大于100G用物理备份. 备份文件保留时间.

  • Oracle自动备份脚本

    废话不多说了,直接给大家贴代码了,具体代码如下所示: #!/bin/sh #****************************************************************** # File: oraclebak.sh # Creation Date: 2014/1/22 17:57:32 # Last Modified: 2014/1/22 17:57:34 # 脚本功能:oracle备份脚本 # 执行方法:1.第一次执行需要root用户执行,脚本会以询问的方式

随机推荐