PostgreSQL数据库备份及备份中遇到的问题

PostgreSQL数据库备份方法:
创建一个*.bat文件,将

@echo on
for /f "tokens=1-4 delims=- " %%i in ("%date%") do (
set year=%%i
set month=%%j
set day=%%k
set dow=%%l
)
set datestr=%year%_%month%_%day%
echo datestr is %datestr%

set BACKUP_FILE=C:\MyResBackUp\DataBaseBackUp/myresdb_%datestr%.backup
echo backup file name is %BACKUP_FILE%
SET PGPASSWORD=******
echo on
bin\pg_dump -i -h 192.168.1.132 -p 5432 -U postgres -F c -b -v -f %BACKUP_FILE% myresdb


写入文件中,-U为数据库用户名称,-h为数据库地址,-p为端口号,mydb为数据库名称,PGPASSWORD为数据库密码,BACKUP_FILE为数据库备份的存放路径。

1.备份文件大小为0KB问题。当点击执行bat文件时确实能在备份路径下找到备份的文件不过大小为0KB,这是因为PostgreSQL所指定的备份执行文件pg_dump在C:\Program Files\PostgreSQL\9.2\bin 下,简单的解决方法是将C:\Program Files\PostgreSQL\9.2\bin文件复制一份到*.bat所在系统盘下。

2.进行异地备份数据库,一直提示要输入密码问题,当输入数据库密码后备份成功,产生这个问题的主要原因是没有该数据库执行权限,那如何做到不需要输入密码,就能进行异地备份?这里提供一种解决方法

首先建个pgpass.conf文件(文件名可以自己定),文件中写入192.168.1.100:5432:mydb:postgres:123456(这是数据库密码)将文件到该路径C:\Program Files\PostgreSQL\9.2\pgpass.conf

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值