日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

邏輯備份PostgreSQL數據

您可以使用PostgreSQL自帶的工具pg_dump將實例的數據進行邏輯備份,后續導出到本地保存。

背景信息

pg_dump是備份PostgreSQL數據庫的工具,可用于備份單個數據庫。更多詳情,請參見pg_dump。

前提條件

  • RDS PostgreSQL實例已設置白名單,允許ECS實例或本地主機的IP訪問。

  • ECS實例或本地主機已安裝和RDS PostgreSQL實例相同版本的PostgreSQL數據庫。

    說明

    本文使用CentOS 7操作系統和PostgreSQL 15版本為例進行演示。

注意事項

建議使用高權限賬號進行備份,避免出現權限不足的問題。

備份單個數據庫

  1. 登錄ECS實例或本地主機,使用如下命令備份目標數據庫。

    pg_dump -h '<hostname>' -U <username> -p <port> -Fc <dbname> > <dumpdir>

    參數

    說明

    hostname

    RDS PostgreSQL實例連接地址。

    說明

    username

    RDS PostgreSQL實例高權限賬號名稱。

    port

    RDS PostgreSQL實例端口。

    -Fc

    輸出格式。-Fc表示輸出自定義格式的存檔,這個格式適合通過pg_restore進行導入還原。更多選項的詳細說明請參見pg_dump。

    dbname

    目標數據庫名稱。

    dumpdir

    導出的備份文件路徑及名稱。

    示例

    pg_dump -h 'pgm-bpxxxxxx.pg.rds.aliyuncs.com' -U zht -p 5432 -Fc zht01 >  /tmp/testdb.dump
  2. 命令行提示Password:時,輸入PostgreSQL實例高權限賬號對應的密碼,然后按回車鍵確認。

    您可執行ll /tmp/testdb.dump命令確認備份文件是否已成功生成。

    image.png

備份指定表

  1. 登錄ECS實例或本地主機,使用如下命令備份目標數據庫的指定表。

    pg_dump -h '<hostname>' -U <username> -p <port> -t <Schema>.<table> -Fc <dbname> > <dumpdir>

    參數

    說明

    hostname

    RDS PostgreSQL實例連接地址。

    說明

    username

    RDS PostgreSQL實例高權限賬號名稱。

    port

    RDS PostgreSQL實例端口。

    Schema

    備份表所在的Schema,默認為Public,如果表所在的Schema為Public,可省略。

    table

    需要備份的表。可以用多個-t <Schema>.<table>選擇多個表。

    -Fc

    輸出格式。-Fc表示輸出自定義格式的存檔,這個格式適合通過pg_restore進行導入還原。更多選項的詳細說明請參見pg_dump。

    dbname

    目標數據庫名稱。

    dumpdir

    導出的備份文件路徑及名稱。

    示例如下:

    pg_dump -h 'pgm-bpxxxxxx.pg.rds.aliyuncs.com' -U zht -p 5432 -t zhttest0808 -Fc zht01 > /tmp/testdb2.dump
  2. 命令行提示Password:時,輸入PostgreSQL實例高權限賬號對應的密碼,然后按回車鍵確認。

    您可執行ll /tmp/testdb2.dump命令確認備份文件是否已成功生成。

    image.png

備份數據庫時排除指定表

  1. 登錄ECS實例或本地主機,使用如下命令備份目標數據庫并排除指定表。

    pg_dump -h '<hostname>' -U <username> -p <port> -T <table> -Fc <dbname> > <dumpdir>

    參數

    說明

    hostname

    RDS PostgreSQL實例連接地址。

    說明

    username

    RDS PostgreSQL實例高權限賬號名稱。

    port

    RDS PostgreSQL實例端口。

    table

    需要排除的表??梢杂枚鄠€-T <table>排除多個表。

    -Fc

    輸出格式。-Fc表示輸出自定義格式的存檔,這個格式適合通過pg_restore進行導入還原。更多選項的詳細說明請參見pg_dump

    dbname

    目標數據庫名稱。

    dumpdir

    導出的備份文件路徑及名稱。

    示例如下:

    pg_dump -h 'pgm-bpxxxxxx.pg.rds.aliyuncs.com' -U zht -p 5432 -T zhttest0808 -Fc zht01 > /tmp/testdb3.dump
  2. 命令行提示Password:時,輸入PostgreSQL實例高權限賬號對應的密碼,然后按回車鍵確認。

    您可執行ll /tmp/testdb3.dump命令確認備份文件是否已成功生成。

    image.png

備份數據庫模式(不備份數據)

  1. 登錄ECS實例或本地主機,使用如下命令備份目標數據庫模式。

    pg_dump -h '<hostname>' -U <username> -p <port> -s -Fc <dbname> > <dumpdir>

    參數

    說明

    hostname

    RDS PostgreSQL實例連接地址。

    說明

    username

    RDS PostgreSQL實例高權限賬號名稱。

    port

    RDS PostgreSQL實例端口。

    -s

    僅備份數據庫模式,不備份數據。更多選項的詳細說明請參見pg_dump。

    -Fc

    輸出格式。-Fc表示輸出自定義格式的存檔,這個格式適合通過pg_restore進行導入還原。更多選項的詳細說明請參見pg_dump。

    dbname

    目標數據庫名稱。

    dumpdir

    導出的備份文件路徑及名稱。

    示例如下:

    pg_dump -h 'pgm-bpxxxxxx.pg.rds.aliyuncs.com' -U zht -p 5432 -s -Fc zht01 > /tmp/testdb4.dump
  2. 命令行提示Password:時,輸入PostgreSQL實例高權限賬號對應的密碼,然后按回車鍵確認。

    您可執行ll /tmp/testdb4.dump命令確認備份文件是否已成功生成。

    image.png

相關文檔

如果數據庫出現異常需要恢復數據,請參見使用pg_restore恢復邏輯備份文件數據。