是的,用很少的搜索和来自 stackoverflow 的混合灵魂就知道了。这对我来说很快,所以为其他人制作了一个教程。
PostgreSQL 9.6 不提供任何自动数据库备份的内置功能。以下是自动化数据库备份的分步教程。
步骤 1. 登入进入您的数据库节点虚拟机。
步骤 2. 创建 pgpass.conf
Pgpass.conf文件是包含数据库连接详细信息的文本文件。这必须手动创建。打开命令提示符并按给定顺序键入以下命令,或将它们放在 .BAT 或 .CMD 文件中并执行
CD %appdata%
MD postgresql
CD postgresql
Echo <host>:<port_number>:<db_name>:<password> >> pgpass.conf
%应用程序数据%- 是`C:Users<Windows_loggedin_user_ID>AppDataRoaming 下的目录
聚苯乙烯: 不要把上面的路径误认为是Postgresql的安装路径。
<主持人>- 主机名将是本地主机
<端口号>– 默认为 5432,否则使用为您的 Postgresql 配置的端口号
<数据库名称>是计划备份的数据库的名称
<密码>- 数据库访问密码。
很重要的一点:以上值需要分隔或分隔冒号 (:)如上所示。
在执行上述命令时,将在C:Users<Windows_loggedin_user_ID>AppDataRoaming创建pgpass.conf文件
步骤 3. 创建备份文件夹将保存所有备份文件的文件夹。
MD C:<backup_folder_name> - Will Create a New Folder For ex MD C:RakyBackup
CD C:<backup_folder_name> - Will Take control that New Folder (C:RakyBackup)
第 4 步。创建备份脚本。归档并命名为BackupScript.Bat
使用任何文本编辑器创建一个 .BAT 文件,并将以下脚本放入其中。
@echo off
Set backupPath= C:RakyBackup
REM Gets the Current System Date into Variable datetime
For /f %%a in (‘powershell –Command “Get-Date –format dd_MMM_yyyy_HHMM”’) do set datetime=%%a
REM Backsup the DB
<path>Postgresql<ver_num>inpg_dump -h localhost -p <5432> -U postgres -F c -b -v <db_name> > %backupPath%/DB-Backup_%datetime%h.sql
步骤 5. 创建时间表打开Windows 任务计划程序.将有三个垂直面板。左侧面板将显示任务计划库.在最右侧的面板上,选择创建基本任务。给一个名字和描述它在输入文本框中,然后单击下一步。在里面扳机, 选择日常的然后单击下一步。设置开始日期和时间.点击下一步。在里面行动,再次单击下一步。面板会提示程序/脚本.点击浏览然后选择C:RakyBackupBackupScript.Bat。单击下一步,然后单击结束.
就是这样。
每天在设定的时间,BackupScript.Bat将被触发并自动备份数据库。