LINUX下的pg_dump的週期性備份

操作系統:CentOS的
DB:PostgreSQL9.3 OS用戶:Postgres的
一,編寫pg_dump的備份腳本:
01
#一週內每天1-7開始MON = 1
02
DOW =`日期+“%U”`
03
04
#定義變量
05
DB_INSTALL_DIR ='/ opt/PostgreSQL/9.3
06
#DB_TYPE ='PostgreSQL的
07
#DB_SERVER = '127 .0.0.1'
08
#DB_PORT = '5432'
09
DB_INSTANCE ='mydb的'
10
DB_USER ='Postgres的
11
DB_PASSWORD ='Postgres的
12
DB_STORAGE ='/家庭/ Postgres的/備份'
13
14
#指定的postgres密碼在PGPASSWORD VAR
15
#pg_dump時不提示輸入密碼
16
出口PGPASSWORD = $ DB_PASSWORD
17
18
#切換到bin目錄。
19
CD $ DB_INSTALL_DIR / BIN
20
21
#運行pg_dump的
22
/ pg_dump的-F $ DB_STORAGE / $ {DOW} mydb.sql的U $ DB_USER-F對美元DB_INSTANCE
將以上腳本保存到/家庭/ Postgres的/備份/ backup.sh。
二,設置腳本執行計劃(定時或週期性):
每個用戶都有各自不同的計劃任務列表,用各自的帳戶蘇的用戶名登錄後,
執行的crontab-L命令可查看到各任務的計劃任務情況,
執行的crontab-E進入vi的模式,可以修改自己的計劃任務,
每次添加完任務後,一定要服務的crond
之後系統會按照設置定時或者週期地執行執行腳本。
1
蘇Postgres的
2
的的crontab-l
3
的crontab-E
進入六世模式,添加相應的腳本執行計劃,如:
* / 2 **** root身份執行部件/家庭/ Postgres的/備份/ backup.sh中表示每隔2分鐘執行一次backup.sh中,即每隔2分鐘備份一次;
或者0 2 *** root身份執行部件/家庭/ Postgres的/備份/ backup.sh中表示每天的2點執行一次backup.sh中,即每天2點備份一次。
1
蘇根
2
重新啓動服務的crond
附註:
1,設置的shell腳本定期執行
通過的crontab-E 添加的內容(此處爲* / 2 **** root身份執行部件/家庭/ Postgres的/備份/ backup.sh)。
2.crontab crontab的用法:[-u用戶]文件
[-u用戶的crontab] [-E-L |-R]
(默認操作是替換,每1003.2)
-E(編輯用戶的crontab)
-L(列表用戶的crontab)
-R(刪除用戶的crontab)
-I(前提示刪除用戶的crontab)
(SELinux上下文)
3.pg_dump用法:
pg_dump的[選項] ... [DBNAME】。
一般選項:
-F, - 的文件=的FILENAME輸出文件或目錄名稱
-F, - 格式= C | D | T | p輸出文件格式(定製,目錄,焦油,
純文本(默認))
-J, - 工作= NUM使用此傾倒許多並行作業
-V, - verbose詳細模式
-V, - version輸出版本信息,然後退出
-Z, - compress壓縮= 0-9壓縮格式的壓縮級別
- 鎖等待超時超時表鎖等待超時後失敗
- , - help顯示此幫助,然後退出
選項輸出控制內容:
-A, - 數據只只轉儲數據,而不是架構
-B, - 斑點包括轉儲大對象
-C, - 清潔乾淨(降)創建數據庫對象前
-C - 創建包括命令來創建數據庫轉儲
-E, - 編碼=編碼編碼編碼數據轉儲
-N, - 架構模式轉儲命名模式()
-N, - 排除模式= SCHEMA不轉儲命名模式(S)
-O, - 的OID的包括在轉儲的OID
-O - 無所有者跳過恢復對象的所有權
純文本格式
-S, - 模式只只轉儲模式,沒有數據
-S, - 超級用戶名稱中使用純文本格式的超級用戶名
-T, - 表=錶轉儲命名錶(S)
-T, - 排除表=表不倒的命名錶(S)
-X - 無特權不轉儲權限(GRANT / REVOKE)
- 二進制升級只升級實用程序使用
- 列作爲列名的INSERT命令插入轉儲數據
- 禁用美元的報價停用美元報價,請使用SQL標準的引用
- disable-triggers的數據只能恢復期間禁止觸發器
- 排除表數據不倒=表命名錶(數據)
- 插入數據轉儲爲INSERT命令,而不是COPY
- 不要倒沒有安全標籤防僞標籤分配
- 不同步快照不使用快照同步並行作業
- 表空間不轉儲的表空間分配
- 無未記錄表數據不傾倒未記錄表數據
- 報價標識符引用的所有標識符,即使不是關鍵詞
- 部分=部分轉儲命名的段(前數據,數據或數據後)
- 串行化延遲的等待,直到轉儲可以運行無異常
- 使用設置會話授權
而不是使用SET SESSION授權命令
ALTER所有者所有權設置
連接選項:
-D, - DBNAME = DBNAME數據庫轉儲
-H, - 主機= HOSTNAME數據庫服務器主機或插座目錄
-P, - 端口= PORT數據庫服務器端口號
-U - 連接指定的數據庫用戶名= NAME
-W, - 沒有密碼永不提示密碼
-W - password強制口令提示(應該自動發生)
- 角色= ROLENAME SET ROLE轉儲前
如果沒有提供數據庫名字,那麼PGDATABASE環境變量
變量的值被使用。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章