postgresql在windows下备份的批处理文件(修改版),提示输入密码时,能自动输入密码
2009-10-14 09:24
801 查看
在网上找到一篇文章《PostgreSQL Windows自动备份脚本》
http://blog.it580.com/1910
觉得不错,试了一下,发现批处理文件执行停止在提示输入密码那。
>pg_dump -U postgres -W database1 > c:/backup.tar
>password:
现找到自动输入密码的方法,修改如下:
------------------------------------------------------------------------
在网上查到资料,不用输入密码,可以这样设置针对某个ip进行trust
我这边提示密码主要是我这的pg_hba.conf
设了对本地要密码md5认证。
----------------------------------------------------------------------------
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 md5
-----------------------------------------------------------------------------
改成这样,本地备份就不用输入密码了(改后要重启服务)
----------------------------------------------------------------------------
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 trust
-----------------------------------------------------------------------------
http://blog.it580.com/1910
觉得不错,试了一下,发现批处理文件执行停止在提示输入密码那。
>pg_dump -U postgres -W database1 > c:/backup.tar
>password:
现找到自动输入密码的方法,修改如下:
echo off rem 功能:postgresql windows 平台 自动备份脚本 rem 在备份目录d:/backup下分月建立目录,在每月目录中保存当月的分天备份文件 rem 在备份前在命令行执行echo %date% 确保日期格式是yyyy-mm-dd,如果不是的话,请到控制面板修改区域与语言选项中修改日期格式。 rem 作者:David Pan rem 日期:2009-02-19 @set Filename=%date:~0,10%.backup @set Dirname=%date:~0,7% rem %Dirname%* 这句是去掉Dirname后面的空格 @set pgPath=C:/Program Files/PostgreSQL/8.4/bin rem 如果当天是一号则新建新月份目录 @if %date:~8,2% == 01 (md d:/backup/"%Dirname%") rem 如果没有当月目录则新建当月目录 @if not exist d:/backup/"%Dirname%" (md d:/backup/"%Dirname%") rem 执行备份任务,备份databasename数据库,请将version换成你的pgsql版本,或者根据你的pg_dump文件所在位置修改。 rem 原来的语句 rem "%pgPath%/pg_dump.exe" -i -h localhost -p 5432 -U postgres -F c -b -v -f "d:/backup/%Dirname%/%Filename%" Database1 rem 输出密码脚本,缺点很明显密码暴露 (我找到的自动输入密码的方法) echo set pws=WScript.CreateObject("WScript.Shell")>%temp%/pws.vbs echo pws.SendKeys "123{ENTER}">>%temp%/pws.vbs rem 执行脚本自动输入密码(我找到的自动输入密码的方法) wscript %temp%/pws.vbs&"%pgPath%/pg_dump.exe" -i -h localhost -p 5432 -U postgres -F c -b -v -f "d:/backup/%Dirname%/%Filename%" BenShop rem 删除脚本 del %temp%/pws.vbs rem 将备份文件打包成rar格式,并删除原始备份文件。(确保你已经安装了winrar,如果你没有安装在默认目录,请根据winrar文件的位置修改路径) @if exist d:/backup/"%Dirname%/%Filename%" ("%ProgramFiles%/winrar/winrar" a -df "d:/backup/%Dirname%/%Filename%.rar" "d:/backup/%Dirname%/%Filename%") rem 自动删除三月前的备份,根据建立日期判断 @if %date:~8,2% ==25 (for /f "skip=3" %%a in ("dir /b/ad/o:-d d:/backup") do @if exist d:/backup/%%a rd /s /q d:/backup/%%a) @echo on
------------------------------------------------------------------------
在网上查到资料,不用输入密码,可以这样设置针对某个ip进行trust
我这边提示密码主要是我这的pg_hba.conf
设了对本地要密码md5认证。
----------------------------------------------------------------------------
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 md5
-----------------------------------------------------------------------------
改成这样,本地备份就不用输入密码了(改后要重启服务)
----------------------------------------------------------------------------
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 trust
-----------------------------------------------------------------------------
相关文章推荐
- windows 下安装monogodb与设置自动备份批处理文件
- 【mysql】备份篇1:使用系统计划任务+mysqldump 定时备份mysql数据库 不用输入密码自动导出sql文件
- RHEL5下postgresql自动备份(无须手动输入密码)
- 利用scp自动输入密码进行文件远程拷贝或备份
- RHEL5下postgresql自动备份(无须手动输入密码)
- 利用scp自动输入密码进行文件远程拷贝或备份
- PostgreSQL自动备份批处理脚本(Windows版本)
- windows系统利用批处理文件自动备份数据库及文件
- 利用scp自动输入密码进行文件远程拷贝或备份
- windows cmd下输入命令,提示“不是内部或外部命令,也不是可运行的程序或批处理文件”的问题
- 利用scp自动输入密码进行文件远程拷贝或备份
- 如何用Fabric实现无密码输入提示的远程自动部署
- eweb使用WINDOWS的“备份”工具对网站内容自动备份editor for php任意文件上传漏洞
- linux 下采用scp远程传送文件,采用expect技术,支持自动输入密码
- scp 上传文件到服务器自动输入密码
- 自动备份,批处理,windows计划任务
- 安装Windows服务提示输入用户名和密码
- 利用windows脚本实现文件的自动备份
- Ubuntu10.04 挂载硬盘windows分区时提示输入密码
- 用批处理文件自动备份文件及文件夹,并自动删除n天前的文件