计划任务定时备份,删除等操作:

#crontab -e

#注意 会区分用户 默认在root用户登录用的是root权限用户的计划任务,

如果想在postgres备份 应使用postgres用户权限

设置定时任务 su postgres

  • 第一步:首先用什么权限定时任务需要切换到具体如:数据库备份:postgres用户权限或者其他数据库用户权限
  • 第二步:然后再 crontab -e 下就是设置的postgres用户的定时任务

date %F 完整日期格式,等价于 %Y-%m-%d # date +%F

0 0 * * 0 /usr/bin/pg_dump -U postgres simo_dev > /opt/s_bak/simo$(date +"\%F").sql

上面的命令即是在每周日晚上 0:0点 备份数据库的定时任务:

  • 第三步:返回到root用户,su

crontab -e 输入以下定时任务

即: 1)在每周日凌晨 :30分 将sql备份的数据库转化为.zip 打包文件

2)在每周日1:00,将.sql文件删除

3)在每周日1:30,将30天之前的文件删除掉,防止文件占用太多内存

30 0 * * 0 /usr/bin/zip /opt/simo_bak/simo`date +"\%F"`.zip /opt/simo_bak/simo`date +"\%F"`.sql

00 1 * * 0 /usr/bin/rm -rf /opt/simo_bak/simo`date +"\%F"`.sql

30 1 * * 0 /usr/bin/find /opt/simo_bak -maxdepth 1 -type f -mtime +30 -exec rm -rf {} \;

也可以写成sh脚本文件方便维护~

系统计划任务

如将auto-del-30-days-ago-log.sh执行脚本加入到系统计划任务

到点自动执行 输入:

10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

解释:设置是每天凌晨0点10分执行auto-del-7-days-ago-log.sh文件进行数据清理任务

10 0 * * * 分别对应是“分 时 日 月 周 命令”。

当分为*时,表示每分钟执行一次,

时为*时,表示每小时执行一次。

注:如果没有实时备份原因定位:cd /var/log 查看cron 的文件错误记录

shell编程-定时任务(备份数据库)的更多相关文章

  1. 利用shell脚本自动化备份数据库与手动备份还原数据库操作

    1.在linux操作系统上手动备份数据库 mysqldump -h 服务器IP地址 -u root -p数据库密码 --databases 所要备份的数据库名称 > /路径/数据库.sql(自定 ...

  2. shell编程连接postgres数据库(数据备份)

    第一步:通过xshell或者其他工具连接到linux服务, 第二步:创建一个脚本:touch se.sh 第三步:输入i,代表开始输入内容 输入以下命令: 脚本如下:(sql语句可以是任何复杂的sql ...

  3. 定时任务备份数据库与windows批处理

    前言: 关于数据库备份的方法有很多,你可以在命令行执行mysqldump命令进行备份,也可以使用数据库管理工具,比如navicat进行数据库的备份. 但是以上数据库的备份都是可以单次备份,总不能要一个 ...

  4. shell脚本:备份数据库、代码上线

    备份MySQL数据库场景:一台MySQL服务器,跑着5个数据库,在没有做主从的情况下,需要对这5个库进行备份 需求:1)每天备份一次,需要备份所有的库2)把备份数据存放到/data/backup/下3 ...

  5. 记录一下~~~Linux配置定时任务备份数据库dmp文件

    1.创建备份目录: mkdir -p /dcits/sx_xmz/sx_data_bak chown -R oracle18c:oinstall /dcits/sx_xmz/sx_data_bak 2 ...

  6. shell脚本定时备份数据库

    脚本代码: 新建文件back_db.sh #!/bin/bash TODAYTIME="`date +%Y%m%d`" DBNAME="test mysql" ...

  7. SHELL脚本自动备份数据库

    #!/bin/bash db_user="root" db_passwd="dddddd " db_name="mmmmmm" cd /db ...

  8. Shell编程—定时任务

    应用:定时催收,定时下发,对新增内容入库同步, 时间:凌晨 服务器Reahat Linux: Bash HPUX:kbash? #!/bin/sh #!/bin/bash echo awk #输入重定 ...

  9. Centos下_MysqL5.7在使用mysqldump命令备份数据库报错:mysqldump: Got error: 1449: The user specified as a definer ('fk_system'@'localhost') does not exist when using LOCK TABLES

    在阿里云服务器增加一个shell脚本定时备份数据库脚本执行任务时,测试性的执行了备份命令,如下 [root@iZ2ze503xw2q1fftv5rhboZ mysql_bak]# /usr/local ...

随机推荐

  1. mockjs介绍

    官网 https://github.com/nuysoft/Mock/wiki/Getting-Started 一.为什么使用mockjs 在做开发时,当后端的接口还未完成,前端为了不影响工作效率,手 ...

  2. vue项目使用openlayers来添加地图标注,标注样式设置的简要模板

    先把代码贴出来,注释以后有时间再写(需要留意一下这里图标的引入方式,函数内相同路径无法找到图片) import sk from "../../assets/img/home/sk-activ ...

  3. 数组去重-----js 判断字符串中是否包含某个字符串indexOf

    判断obj对象是否在arr数组里面,是返回true const dealArray = (arr, obj) => { Array.prototype.S = String.fromCharCo ...

  4. springboot 自动装配

    以下内容部分来自小马哥的 <springboot 编程思想> 基础 springboot 项目 maven 依赖 <dependency> <groupId>org ...

  5. Joomla 3.0.0 - 3.4.6 RCE漏洞分析记录

    0x00  前言 今天早上看到了国内几家安全媒体发了Joomla RCE漏洞的预警,漏洞利用的EXP也在Github公开了.我大致看了一眼描述,觉得是个挺有意思的漏洞,因此有了这篇分析的文章,其实这个 ...

  6. selectpage

    官方文档地址 https://terryz.oschina.io/selectpage/docs.html

  7. python 2.7.5 获取文本关键字符所在行

    #!/usr/bin/env python #-*- coding: UTF- -*- from __future__ import print_function import time,os,sys ...

  8. C语言实现MD5校验

    根据网上资料,整理验证C程序代码. 接口函数: /****************************************************** *函数名称:Compute_data_m ...

  9. Linux系统安装常用开发软件

    vim.jdk.tomcat.mysql 安装vim(命令模式=>编辑模式=>底行模式) [root@localhost ~]# yum install vim*结束后一直确认即可,键入y ...

  10. Linux系统组成和获取命令帮助3

    命令的语法通用格式:        # COMMAND OPTIONS ARGUMENTS        COMMAND:            发起一个命令:请求内核将某个二进制程序运行为一个进程  ...