postgresql在windows下備份的批次檔(修改版),提示輸入密碼時,能自動輸入密碼

來源:互聯網
上載者:User

在網上找到一篇文章《PostgreSQL Windows自動備份指令碼》

http://blog.it580.com/1910

 

 

覺得不錯,試了一下,發現批次檔執行停止在提示輸入密碼那。

>pg_dump -U postgres -W  database1 > c:/backup.tar
>password:

 

現找到自動輸入密碼的方法,修改如下:

 

echo off<br />rem 功能:postgresql windows 平台 自動備份指令碼<br />rem 在備份目錄d:/backup下分月建立目錄,在每月目錄中儲存當月的分天備份檔案<br />rem 在備份前在命令列執行echo %date% 確保日期格式是yyyy-mm-dd,如果不是的話,請到控制台修改地區與語言選項中修改日期格式。<br />rem 作者:David Pan<br />rem 日期:2009-02-19 </p><p>@set Filename=%date:~0,10%.backup<br />@set Dirname=%date:~0,7%</p><p>rem %Dirname%* 這句是去掉Dirname後面的空格</p><p>@set pgPath=C:/Program Files/PostgreSQL/8.4/bin</p><p>rem 如果當天是一號則建立新月份目錄<br />@if %date:~8,2% == 01 (md d:/backup/"%Dirname%") </p><p>rem 如果沒有當月目錄則建立當月目錄<br />@if not exist d:/backup/"%Dirname%" (md d:/backup/"%Dirname%") </p><p>rem 執行備份任務,備份databasename資料庫,請將version換成你的pgsql版本,或者根據你的pg_dump檔案所在位置修改。<br />rem 原來的語句<br />rem "%pgPath%/pg_dump.exe" -i -h localhost -p 5432 -U postgres -F c -b -v -f "d:/backup/%Dirname%/%Filename%" Database1 </p><p>rem 輸出密碼指令碼,缺點很明顯密碼暴露 (我找到的自動輸入密碼的方法)<br />echo set pws=WScript.CreateObject("WScript.Shell")>%temp%/pws.vbs<br />echo pws.SendKeys "123{ENTER}">>%temp%/pws.vbs</p><p>rem 執行指令碼自動輸入密碼(我找到的自動輸入密碼的方法)<br />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</p><p>rem 刪除指令碼<br />del %temp%/pws.vbs</p><p>rem 將備份檔案打包成rar格式,並刪除原始備份檔案。(確保你已經安裝了winrar,如果你沒有安裝在預設目錄,請根據winrar檔案的位置修改路徑)<br />@if exist d:/backup/"%Dirname%/%Filename%" ("%ProgramFiles%/winrar/winrar" a -df "d:/backup/%Dirname%/%Filename%.rar" "d:/backup/%Dirname%/%Filename%") </p><p>rem 自動刪除三月前的備份,根據建立日期判斷<br />@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) </p><p>@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

 

-----------------------------------------------------------------------------

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.