postgres 備份和恢復

2021-06-18 22:47:00 字數 1292 閱讀 9866

1. 開啟 cmd

2. cd c:\program files\postgresql\9.2\bin

3. 備份

僅結構 帶【drop】

pg_dump -u postgres -c -s -f c:\postgres3.sql postgres

結構和資料 帶【drop】

pg_dump -u postgres -c -f c:\postgres4.sql postgres

4.恢復

psql -u postgres -f c:\postgres4.sql p2 >log4.txt 2>&1

pg_dump 接受下面的命令列引數:

dbname

宣告將要抽取的資料庫名.dbname 預設為 user 環境變數的值.

-a只輸出資料,不輸出結構(表定義).

-c建立前刪除表定義。

-d將資料輸出為合適的插入字串.

-d將資料作為帶欄位名的插入語句輸出.

-i忽略在  pg_dump 和資料庫伺服器之間的版本差別.因為 pg_dump知道許多關於系統表的資訊,任何給定版本的 pg_dump只能和對應的資料庫伺服器版本一併使用.如果你需要跨越版本檢查時才使用這個選項(而且如果 pg_dump 失效,別說我沒警告你).

-n除非絕對必需,禁止標識周圍的雙引號.如果有保留字用於識別符號,這麼做有可能在裝載輸出的資料時導致麻煩.這是v6.4以前的 pg_dump 預設特性。

-n在標識周圍包括雙引號。這是預設。

-o為每個表都輸出物件標識(oid).

-s只輸出表結構(定義),不輸出資料.

-t table

只輸出表 table 的資料.

-u使用口令認證.提示輸入使用者名稱和口令.

-v宣告冗餘模式

-x避免輸出 acl(賦予/撤消 命令)和表的所有者關係資訊.

pg_dump 同樣接受下面的命令列引數作為聯接引數:

-h host

宣告 postmaster 在執行的機器的主機名.預設是使用本地unix主控套接字,而不是乙個ip 聯接.

-p port

宣告 postmaster 正在偵聽並等待聯接的tcp/ip埠或本地 unix 主控套接字檔案控制代碼.預設的埠號是5432,或者環境變數 pgport的值(如果存在).

-u使用口令認證,提示輸入 username 和 password.

Postgres流式備份(6)備份和恢復

定時維護,強制執行保留策略 wal檔案管理 barman如通過rpm安裝將自動新增定時配置檔案 etc cron.d barman,內容如下,設定每分鐘進行一次定時維護 m h dom mon dow user command barman x usr bin barman usr bin barm...

postgres的資料庫備份和恢復

備份和恢復 一條命令就可以解決很簡單 這是備份的命令 pg dump h 127 0.0.1 u postgres databasename databasename.bak指令解釋 下面是恢復的命令 psql h localhost u postgres d databasename databa...

postgres 連續備份

準備 main pg 建立postgres使用者,能夠免密登入到backup pg backup pg 建立postgres使用者 1 main pg修改配置,開啟歸檔模式 不開啟,產生少量wal檔案 開啟,產生完整wal檔案 mkdir home postgres archive wals hos...