首页 > 数据库 >PostgreSQL定时备份策略

PostgreSQL定时备份策略

时间:2023-03-07 13:13:32浏览次数:43  
标签:SET PostgreSQL postgres %% 备份 pg 定时 SVPATH%

::适用于windows系统

:://///////////////////////////////////////////////////////////////////////////
::在pg服务器上创建备份脚本bakup.bat,以pg数据库为例
::然后在windows控制面板|管理工具|任务计划程序,创建定时备份任务

@ECHO OFF
@setlocal enableextensions
@cd /d "%~dp0"

::pg_dump命令需要密码时自动调用
set PGPASSWORD=postgres
::盘符后面两个\报错就使用一个\
SET PGPATH=D:\\Software\PostgreSQL\9.6\bin\
SET SVPATH=D:\\pgbak\
SET PRJDB=postgres
SET PRJDB2=common
::设置文件名称中时间,如2022-05-27
FOR /F "TOKENS=1,2,3 DELIMS=/ " %%i IN ('DATE /T') DO SET d=%%i-%%j-%%k
::FOR /F "TOKENS=1,2,3 DELIMS=/ " %%i IN ('TIME /T') DO SET t=%%i-%%j-%%k
 
SET DBDUMP=%PRJDB%_%d%.bak
SET DBDUMP2=%PRJDB2%_%d%.bak
@ECHO OFF
pg_dump -h localhost -U postgres --format=c -n public %PRJDB% > %SVPATH%%DBDUMP%
pg_dump -h localhost -U postgres --format=c %PRJDB2% > %SVPATH%%DBDUMP2%
echo Backup Taken Complete %SVPATH%%DBDUMP%

::自动删除30天以前的备份文件,@file文件名称,@path文件全路径
forfiles /p %SVPATH% /d -30 /c "cmd /c echo deleting @file ... && del /f @path"


:://///////////////////////////////////////////////////////////////////////////
::在pg服务器上创建定时拷贝文件到远程共享目录脚本bak_to_z .bat
::远程电脑共享文件夹,在pg服务器上右键映射网络驱动器为z盘符
::然后在windows控制面板|管理工具|任务计划程序,创建定时拷贝任务
xcopy /s/e/d "D:\pgbak\*.*" "Z:\"


:://///////////////////////////////////////////////////////////////////////////
::远程电脑创建定时删除30天前文件脚本delelte_pgbak.bat
::然后在windows控制面板|管理工具|任务计划程序,创建定时删除任务
forfiles /p "D:\pgbak" /d -30 /c "cmd /c echo deleting @file ... && del /f @path"

标签:SET,PostgreSQL,postgres,%%,备份,pg,定时,SVPATH%
From: https://www.cnblogs.com/publiter/p/17187713.html

相关文章

  • Linux备份与恢复使用技巧
    在日常的Linux系统运维中,备份和恢复是非常重要的操作,能够有效避免数据丢失和系统故障导致的影响。本文将介绍一些关于Linux系统备份和恢复的实用技巧,帮助管理员更好地管理......
  • Python3定时器任务代码
    使用threading写的一个定时器任务demo:importtimeimportsysimportsignalimportdatetimeimportthreading#定时器defschedule_update():t=threading.T......
  • postgresql + mybatis传入时间参数的问题
    在使用mybatis传入日期参数进行动态时间判断的时候,如果传入参数为String,使用mybatis时,在mapper中以下几种写法是错误的<iftest="query.beginDate!=nullandquer......
  • postgreSQL 查询表结构
    SELECTDISTINCTC.relnameAStabname,obj_description(C.oid)ASCOMMENTFROM(SELECTDISTINCTtablename,schemanameFROMpg_tablesWHEREPOSITION('_2'IN......
  • MySQL:定时备份数据和定期清理数据
    定时备份和删除脚本脚本中的变量需要改为自己的数据库信息#!/bin/bash#完成数据库的定时备份#备份的路径BACKUP=/data/backup#当前的时间作为文件名DATETIME=$(date+%Y%m%d......
  • 银河麒麟v10 sp1 安装 PostgreSQL 11.16
    一、安装环境   操作系统:银河麒麟v10 sp3 x86_64   内核版本:   PostgreSQL版本:11.16二、安装过程2.1下载源码包创建目录mkdir-p/tools/postgresql......
  • PostgreSQL技术大讲堂 - Part 9:pg_hba.conf配置
     PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同......
  • 企业微信邮箱定时发送邮件,但无法撤回
      企业微信邮箱定时发送邮件,设置为第二天发送,等到了第二天,在自助查询的时候可以看到发信时间为昨天设置定时发送的时间,而且在这里点撤回键也无法撤回。需要在邮件里面......
  • PostgreSQL基础知识
    1.PostgreSQL日常命令#常用SQL查看当前用户:SELECTcurrent_user;查看所有用户:SELECT*FROMpg_user;查看所有数据库:SELECT*FROMpg_database;修改库的所有......
  • MySQL数据库备份恢复
    拓扑图:推荐步骤:使用MySQLdump对数据库数据库中表一个数据库多个表所有数据库进行备份模拟数据丢失恢复备份的数据 配置MySQL数据库开启二进制日志功能配置二进制日志切割......