在linux中用bash脚本--定期自动备份数据库重要文件

1.先编写好自己的bash脚本,给其赋予可执行权限,代码如下:

[git_backup.sh]

 1 #!/bin/bash
 2 code_dir="/home/slamgit/code"
 3 bak_code_dir="/media/ubuntu/KINGSTON/code"
 4 function code_backup(){
 5     for element in `ls $code_dir`
 6     do
 7         dir_respo=$code_dir"/"$element
 8         git clone $dir_respo $bak_code_dir"/"$element
 9     done
10 }
11
12
13 while :
14 do
15     current_date="`date +%c`"
16     echo $current_date
17     if echo $current_date | grep "23时59分59秒" ; then
18         echo "start code backup"
19         if ls /media/ubuntu/KINGSTON ; then
20             rm /media/ubuntu/KINGSTON/code/* -rf
21             code_backup
22             echo "exe code backup":$current_date >> /media/ubuntu/KINGSTON/backup.log
23         fi
24     fi
25 done

首先定义两个变量,一目了然目的是将/home/slamgit/code中的数据备份到/media/ubuntu/KINGSTON/code。

然后定义了一个函数用来执行备份操作,循环遍历数据目录中的所有数据文件,并分别执行备份操作。

最后是主循环,循环检测当前时间是否是需要备份数据的时间点,在满足条件的时刻,将备份目录下的旧备份数据删除,调用备份执行函数,将备份操作写入日志。

2.设置开机自启动脚本

在/etc/rc.local文件中,语句exit 0这一行的前面加上一句./home/ubuntu/git_backup.sh

重启系统,便设置完成。

原文地址:https://www.cnblogs.com/hiram-zhang/p/8856571.html

时间: 2024-11-01 12:13:26

在linux中用bash脚本--定期自动备份数据库重要文件的相关文章

Windows-计划任务-自动备份数据库和文件

开始->程序->附件->系统工具->计划任务 .bat文件如下: ::数据库+文件备份 @echo off ::日期时间 set yyyymmdd=%date:~0,4%%date:~5,2%%date:~8,2% set curtime=%time% IF "%curtime:~2,1%"==" " (set hh=0%curtime:~1,1%) ELSE (set hh=%curtime:~0,2%) ::配置 set SOURCE_I

在linux和windows下自动备份数据库

摘要: 详细介绍在windows和linux下自动备份数据库的过程,希望可以让新手立即上手吧! 本文档内容共分为2大部分:linux和windows Linux和windows都分为:准备工作和操作阶段. Linux的详细步骤为:1.准备文件. 2.连接linux 3.实际操作也就是写命令 windows的详细步骤为:1.准备文件. 2.编辑任务和计划程序. 所用软件:notepad++,ssh 一.linux 1.准备工作(可以在windows下执行本操作) 创建三个文件 1.1文件名:exp

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

Linux下定时任务实现mysql自动备份并上传远程ftp 1.创建保存备份文件的目录:/home/mysql_datacd /homemkdir mysql_data2.创建备份脚本文件:/home/mysql_data/mysql_databak.shcd /homecd  mysql_datatouch mysql_databak.shvim  mysql_databak.sh #!/bin/sh DUMP=/usr/bin/mysqldump#mysqldump备份文件执行路径 OUT_

设定MS SQL Server 2008定期自动备份

1.说明 SQL Server2008 本身具有定期自动备份功能,我们只需要通过简单的配置就可以实现非常简单高效的自动备份功能. 2.打开SQL Server代理服务 要实现自动备份功能,首先要保证SQL Server的"SQL Server(代理)"服务已经打开. 如果没有看到这个"SQL Server代理"节点,可通过如下方式打开 先找到开始菜单中的"Microsoft SQL Server 2008 R2",再在"配置工具&quo

SQL Server 2008如何创建定期自动备份任务(一)

我们知道,利用SQL Server 2008数据库可以实现数据库的定期自动备份.方法是用SQL SERVER 2008自带的维护计划创建一个计划对数据库进行备份,下面我们将SQL SERVER 2008定期自动备份的方法分享给大家. 首先需要启动SQL Server Agent服务,这个服务如果不启动是无法运行新建作业的,点击"开始"–"所有程序"–"Microsoft SQL Server 2008"–"启动SQL Server Ma

SQL Server 2008如何创建定期自动备份任务(二)_异地备份

准备: 局域网内的两台电脑.主电脑,备份电脑. 原理:通过数据库维护计划实现. 操作步骤: 一.在备份电脑和主电脑上中创建一个账户liuxh和密码123(自定义) 二.在备份电脑中创建备份用的文件夹backfile并将其共享给指定用户soft1_developer6. 如图: 1.选择用户 2.分配权限 以上上步骤是把文件夹开启共享.       其余步骤同SQL Server 2008如何创建定期自动备份任务,保存路径改成共享目录的文件夹目录.

【Linux】Bash脚本

1.1 变量类型 几乎所有的编程语言都有变量的概念,Bash当然也不例外.说道变量就少不了说一说类型.但与其他语言不同的是Bash属于无类型语言,如果强要说一种类型,可以认为都是字符串.说到这里,你可能会说,Bash里面也有整数类型吧,好像有整数的运算.但其是通过一些运算符,表达式或者命令将字符串视作整数处理的,其本质还是字符串. 1.2 声明变量 Bash中的变量和其他脚本语言一样,都是无需声明,直接拿来用的.所以变量的第一次出现都是伴随着初始化的. 1.3 取用变量 变量前加一个 $ 符号.

linux利用crontab执行sqldump 定时备份数据库

linux利用crontab执行sqldump 定时备份数据库 : #!/bin/bash var=`date +%Y%m%d` /usr/local/mysql/bin/mysqldump  --databases core|gzip >/apps/sqldump/bak/core${var}.gz /usr/local/mysql/bin/mysqldump  --databases access_service|gzip > /apps/sqldump/bak/access_servic

SQL Server 定时自动备份数据库

在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库,这篇文章介绍使用SQL Server 数据库代理中的作业定时自动备份数据库. 1.启动SQL Server代理服务,如下图: 绿色角标说明已启动. 2.右键“作业”,选择“新建作业”,弹出新建作业对话框,如下: 3.输入名称,所有者.类别默认不用修改,点击左侧“步骤”,在步骤面板中新建步骤,如下图: 输入步骤名(自定义)和命令. 命令代码: declare @name varchar(250) set @name='C:\My