win 英文系统 postgresql备份
@echo off
:: 设置变量
SET PGPATH=C:\Program Files\PostgreSQL\16\bin
SET BACKUPDIR=D:\odoo_daily_backup\data
SET DBNAME=1232
SET PGUSER=123
SET PGPASSWORD=123
for /f %%i in ('powershell -Command "Get-Date -Format yyyyMMdd"') do set Ymd=%%i
:: 构建备份文件名
SET BACKUPFILE=%BACKUPDIR%\app02_odoo_%Ymd%.dump
:: 创建备份目录(如果不存在)
IF NOT EXIST "%BACKUPDIR%" MKDIR "%BACKUPDIR%"
:: 执行 pg_dump 命令进行备份
"%PGPATH%\pg_dump.exe" -U "%PGUSER%" -F c -b -v -f "%BACKUPFILE%" "%DBNAME%"
:: 检查备份是否成功
IF %ERRORLEVEL% NEQ 0 (
echo 备份失败!
EXIT /B %ERRORLEVEL%
) ELSE (
echo 备份成功!备份文件保存在 %BACKUPFILE%
)
EXIT /B 0
浙公网安备 33010602011771号