【问题标题】:how to backup postgresql database automatically on daily basis?如何每天自动备份postgresql数据库?
【发布时间】:2018-08-02 18:47:55
【问题描述】:

我只想知道如何每天自动备份postgresql数据库?

有人可以和我分享一下完整的过程吗 我是 postgres 的新手,想学习数据库备份,我知道如何手动完成,但是有什么方法可以让我每天安排数据库备份过程。?

【问题讨论】:

    标签: windows postgresql database-backups


    【解决方案1】:

    您可以执行以下操作:创建文件backupDB.sh

    Windows 版本

    @echo off
    For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
    set BACKUP_FILE=BackupDB_%datestr%.bck
    SET PGPASSWORD=<PassWord>
    echo on
    pg_dump -h <HostName> -p 5432 -U <UserName> -F c -b -v -f %BACKUP_FILE% <DATABASENAME>
    

    然后使用 Windows 任务计划程序

    Linux 版本

    #!/bin/bash
    date=$(date '+%Y-%m-%d')
    PGPASSWORD="**_PASSWORD_**" pg_dump --host 127.0.0.1 --port 5432 -U **_USERNAME_** --format custom --blobs --verbose --file "DB_backup_$date.bck" **_DBNAME_**
    

    要每天运行 - 假设在 1:00 - 您可以使用 cron

    crontab -e
    

    contab 条目:

    0 1 * * *   ./backupDB.sh
    

    希望对你有帮助

    【讨论】:

    • 嘿,感谢您的帮助,运行这些后会回复您,我认为它适用于 ubuntu,但我正在处理窗口。我必须做的任何重大更改才能在窗口中运行它?我将创建一个上面的批处理文件并通过窗口任务调度程序安排一个任务。这种方法行得通吗?
    • 然后每天将 pg_dump 备份到云端或异地​​
    • 更新答案,添加了windows脚本版本
    猜你喜欢
    • 2018-10-25
    • 2015-08-20
    • 2016-07-26
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 2019-07-17
    • 1970-01-01
    • 2019-07-25
    相关资源
    最近更新 更多