postgresql自动备份


bak_dir="/home/backupfiles/db" #备份路径
pg_dir="/usr/local/pgsql/bin" #pgsql路径
date_dir=`date +%Y/%m/%d`
dbname="数据库名字"
PGPASSWORD="超级用户postgres的密码"
export PGPASSWORD > /dev/null 2>&1
mkdir -p ${bak_dir}/${date_dir} > /dev/null 2>&1
chmod 777 ${bak_dir}/${date_dir} > /dev/null 2>&1
su postgres -c "${pg_dir}/pg_dump ${dbname} > ${bak_dir}/${date_dir}/${dbname}".dump
cd ${bak_dir}/${date_dir}
tar czf ${dbname}.tar ${dbname}.dump
gzip ${dbname}.tar
rm -rf ${bak_dir}/${date_dir}/${dbname}.dump

上面保存/usr/sbin/dbbackupcron.sh

vi /etc/crontab

10 08 * * * /usr/sbin/dbbackupcron.sh #每天8:10自动备份

postgresql自动备份,布布扣,bubuko.com

时间: 2024-12-14 09:06:12

postgresql自动备份的相关文章

Linux配置postgresql自动备份

1.pg_dump数据库备份命令 /usr/pgsql-9.3/bin/pg_dump -F c -O -U dotop -h 127.0.0.1 -p 5432 -f /data/erp_data/db_backup/geyt_20170214_09_37_55.sql geyt 2.Linux配置postgresql自动备份 说明:使用系统用户dotop来备份dbuser(数据库用户)的数据库demo 1)创建系统用户dotop adduser dotop 2)创建数据库用户dbuser,创

windows postgresql定时备份 无需手动输入密码

PostgreSQL 自动备份,并删除10天前的备份文件的windows脚本. 第一步,创建脚本,命名back.bat文件 @ECHO OFF @setlocal enableextensions @cd /d "%~dp0" set PGPASSWORD=password SET PGPATH=D:\postgresql\bin\ SET SVPATH=d:\zoobackup\ SET PRJDB=gzzoo SET DBUSR=postgres FOR /F "TOKE

PostgreSQL 定时备份

postgresql定时备份需求:每天凌晨4点按日期执行自动备份,生产.dump文件.备份文件保存15天.#vim /var/lib/pgsql/backup.sh #!/bin/bash cur_time=$(date '+%Y-%m-%d') ifteendays_time=$(date -d -15days '+%Y-%m-%d') rm -rf /var/lib/pgsql/pgsql-backup.$fifteendays_time.dump echo "Starting Backup

PostgreSQL 数据库备份

PostgreSQL 数据库备份 pg_dump 一.备份还原 注意:命令在pg_dump目录下进行 1.备份test数据库 pg_dump -h 127.0.0.1 -p 5432 -U username -c -f db_back.sql test 2.还原数据到test2数据库 psql -U postgres -f /db_back.sql test2 二.命令详解 基本命令 pg_dump [OPTION]... [DBNAME] 注:数据库名放最后,不指定默认是系统变量PGDATAB

linux 自动备份脚本

首先我在/root/backup 目录下建立一个文件夹, #mkdir /root/backup/mysqlbackup 以后在每天五点钟,就会有一个文件保存在这里. 接着新建文件 #vim /root/mysqlautobak 输入: filename=` date +%Y%m%d ` mysqldump --all-databases -uroot -p(mysql密码)> /root/backup/mysqlbackup/mysql$file.sql 保存退出! 让它可以执行 #chomd

每日自动备份JENKINS_HOME至SVN

每日自动备份JENKINS_HOME至版本控制系统SVN Jenkins是一个可扩展的开源的持续集成工具,也是当下最流行的持续集成工具. Jenkins主要功能 易于安装(Easy installation) 易于配置(Easy configuration) 变更集支持(Change set support) 永久链接(Permanent links) RSS/Email/IM集成(RSS/E-mail/IM Integration) 事后标签(After-the-fact tagging) J

批处理实现每日自动备份和清除数据库文件

说明 利用任务计划,每天指定时间执行批处理文件: 1.实现自动Copy数据库备份文件至另一台主机上 2.自动删除指定天数的备份文件 1.批处理文件代码 CopyDB2Lan (factory).bat ************************* 代码开始处 *************************  @echo off color 0e cls title Copy DB 到 镜像主机下 (by [email protected])... set desthost=\\172.

SQL Server 数据库定时自动备份【转】

在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求管理员每天守到晚上1点去备份数据库.要实现数据库的定时自动备份,最常用的方式就是使用SQL Server代理中的作业.启动SQL Server Agent服务,然后在其中新建作业,作业中添加1个备份步骤,类型是T-SQL脚本,然后在命令中输入如下SQL语句,该语句实现了对数据库TestDB1的完整备份,备份文件在C盘Backup文件夹中,文件名就是T

Bat脚本学习-6:Oracle自动备份还原脚本

这次注释没写多少,先跳过一些吧 ::2.数据库过期备份删除 echo. echo. echo 二.正在清除过期的备份文件-- REM wscript.echo是vbs语法,相当于alert REM >是特殊字符,所以放在 for 命令里面需要使用转义符号^>,包括^&也是转义的& REM //Nologo屏弊输出:Prevent logo display: No banner will be shown at execution time for /f "tokens