postgre資料庫備份與恢復

2021-08-07 14:01:41 字數 2423 閱讀 5157

1.輸入備份命令

/opt/postgresql/pg96/bin/pg_dump -h ip位址 -u 使用者名稱 -w -d 資料庫名 -n 模式名 > /data/backup.dmp

2.輸入資料庫密碼:password,開始匯出資料庫資料

3.輸入恢復命令

/opt/postgresql/pg96/bin/psql -h ip位址 -u 使用者名稱 -d 資料庫名 -n 模式名 < /data/backup.dmp

1.編寫備份指令碼pgsql_backup.sh

#!/bin/sh

export pgpassword="password"

/opt/postgresql/pg96/bin/pg_dump -h ip位址 -u 使用者名稱 -w -d 資料庫名 -n 模式 > /usr/local/databackup/datafile/data_"$(date -d -1day +%y%m%d)".dmp

exit

2.配置crontab定時,每日1點執行

0 1 * * * sh /usr/local/databackup/data_backup.sh > /usr/local/databackup/data_backup.log &

一般選項:

-f, --file=filename output file or directory name

-f, --format=c|d|t|p output file format (custom, directory, tar, plain text)

-v, --verbose 詳細模式

-z, --compress=0-9 被壓縮格式的壓縮級別

--lock-wait-timeout=timeout 在等待表鎖超時後操作失敗

--help 顯示此幫助資訊, 然後退出

--versoin 輸出版本資訊, 然後退出

控制輸出內容選項:

-a, --data-only 只轉儲資料,不包括模式

-b, --blobs 在轉儲中包括大物件

-c, --clean 在重新建立之前,先清除(刪除)資料庫物件

-c, --create 在轉儲中包括命令,以便建立資料庫

-e, --encoding=encoding 轉儲以encoding形式編碼的資料

-n, --schema=schema 只轉儲指定名稱的模式

-n, --exclude-schema=schema 不轉儲已命名的模式

-o, --oids 在轉儲中包括 oid

-o, --no-owner 在明文格式中, 忽略恢復物件所屬者

-s, --schema-only 只轉儲模式, 不包括資料

-s, --superuser=name 在轉儲中, 指定的超級使用者名稱

-t, --table=table 只轉儲指定名稱的表

-t, --exclude-table=table 只轉儲指定名稱的表

-x, --no-privileges 不要轉儲許可權 (grant/revoke)

--binary-upgrade 只能由公升級工具使用

--column-inserts 以帶有列名的insert命令形式轉儲資料

--disable-dollar-quoting 取消美元 (符號) 引號, 使用 sql 標準引號

--disable-triggers 在只恢復資料的過程中禁用觸發器

--inserts 以insert命令,而不是copy命令的形式轉儲資料

--no-security-labels do not dump security label assignments

--no-tablespaces 不轉儲表空間分配資訊

--no-unlogged-table-data do not dump unlogged table data

--quote-all-identifiers quote all identifiers, even if not key words

--serializable-deferrable wait until the dump can run without anomalies

--use-set-session-authorization

使用 session authorization 命令代替alter owner 命令來設定所有權

聯接選項:

-h, --host=主機名 資料庫伺服器的主機名或套接字目錄

-p, --port=埠號 資料庫伺服器的埠號

-u, --username=名字 以指定的資料庫使用者聯接

-w, --no-password 永遠不提示輸入口令

-w, --password 強制口令提示 (自動)

--role=rolename do set role before dump

如果沒有提供資料庫名字, 那麼使用 pgdatabase 環境變數的數值.

資料庫備份與恢復

主要 段 資料庫的備份和實時進度顯示 public bool backupdb string servername,string username,string password,string strdbname,string strfilename,progressbar pgbmain catc...

資料庫備份與恢復

unit ustore inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls,ibservices type tfrestore class tform ibb...

資料庫備份與恢復

對於絕大多數企業來講,失去資料就相當於失去商機 失去產品 失去客戶,甚至會造成公司倒閉,那麼,在所有的資料中,最核心的資料又是哪些呢?這恐怕要屬資料庫中的資料了,當然,並不是說其他資料不重要,只是這一部分更具代表性。既然資料庫中的資料地位這麼高,那麼資料庫備份與恢復的重要性就不言而喻了。1 mysq...