PostgreSQL外掛

不一樣的天空w發表於2022-03-23

PostgreSQL外掛簡介

PostgreSQL外掛彙總

PostgreSQL外掛 PostgreSQL外掛.txt


監控: 

pg_stat_statements 提供一種方法追蹤一個伺服器所執行的所有 SQL 語句的執行統計資訊,可以用於統計資料庫的資源開銷,分析TOP SQL。

system_stats 監控系統的cpu、磁碟、IO、記憶體、網路、程式、作業系統資訊

pg_stat_kcache 可以觀察單條SQL花費多少cpu等

pg_stat_monitor pg_stat_statements和pg_stat_kcache的結合體,用於監控 postgresql 的效能

pgpro_stats 等待事件統計、取樣配置、自動化監控

pgsentinel、pgsampler: 類Oracle ASH


命令列: 

pg_top,類top工具

pgcenter: 全能監控工具

pg_activity: 命令列top工具

pg_sysstat: 相對簡陋


SQL: 

pg_hint_plan: hint功能

pg_query: 高亮,識別風險SQL

pg_plan_advsr: 懶人優化

hypopg: 類似MySQL虛擬索引

sr_plan: 儲存、篡改、固定 執行計劃,Oracle相容

pg_parallizator: 並行建立索引


JOB: 

pg_timetable 高階作業排程程式

pg_cron 定時任務

pg_agent


連線池: 

pgbouncer 輕量級連線池工具

pgagroal PostgreSQL 的原生協議連線池,具有高效能、 限制使用者和資料庫連線的數量、支援預填充、刪除貢獻連線、連線驗證等特點。

odyssey 內建PostgreSQL多執行緒連線池Odyssey


巡檢: 

pgmetrics,GO寫的一款PostgreSQL 多版本、健康監控指標採集、報告開源軟體。https: //github.com/rapidloop/pgmetrics,結合pgdash,可以實現被監控PG例項的視覺化,指標值變更告警等

Percona-Toolkit Percona公司開發用於管理MySQL的工具


分散式架構: 

citus Postgres的開源擴充套件,將Postgres轉換成一個分散式資料庫,在叢集的多個節點上分發資料和查詢,具有像分片、分散式SQL引擎、複製表和分散式表等特性。

pg_shard PostgreSQL的sharding extension。可以用於Shards、Replicates tables和高可用

plproxy 能在Pg中實現資料水平分庫的軟體


FDW外部訪問(Foreign data wrappers): 

oracle_fdw Oracle_fdw 是一種postgresql外部表外掛,可以讀取到Oracle上面的資料。是一種非常方便且常見的pg與Oracle的同步資料的方法

mysql_fdw

mongo_fdw

sqlserver_fdw

file_fdw

等等

https: //wiki.postgresql.org/wiki/Foreign_data_wrappers


PG備份恢復: 

pg_probackup PG資料庫叢集備份和恢復的工具

pg_dumpall 備份一個資料庫叢集中的所有資訊和資料,使用psql來從pg_dumpall建立的備份檔案中恢復資料庫。

pg_dump 備份資料庫叢集中的某個資料庫的資料,它不會匯出角色和表空間相關的資訊,因為這些資訊是整個資料庫叢集共用的,不屬於某個單獨的資料庫。pg_dump建立的備份檔案可以被工具psql識別。因此可以使用psql來讀取pg_dump建立的備份檔案,實現恢復資料庫。

冷備份: 將資料庫停下來,然後把資料庫的PGDATA目錄拷貝下來就可以了。PostgreSQL把與資料庫例項有關的配置檔案和資料檔案都放在PGDATA目錄下,所以做冷備份很簡單。

熱備份: 熱備份稱之為線上備份,有兩種熱備份方法,1、使用資料庫的PIRT方法進行熱備份。PIRT的原理--時間點恢復(Point In Time Recovery)。2、使用檔案系統或裝置級別的快照功能完成備份。因為使用了快照,所以也能讓備份出來的資料與原資料庫一致。


Other: 

pg_buffercache: 實時檢測共享緩衝區

pgstattuple: 行級別的統計

pg_filedump:  過pg_filedump工具恢復被誤刪除的資料行的

pg_waldump: 將WAL以人可以讀的格式輸出。主要用於除錯或教育目的

pg_walminer: 從PostgreSQL的WAL(write ahead logs)日誌中解析出執行的SQL語句的工具,並能生成出對應的undo SQL語句。

pg_fix: 觀察檔案、日誌,修改日誌

pgtrashcan: 垃圾回收站

pg_timeout: 空閒會話超時,pg14引入idle_session_timeout引數

pgcrypto: 資料加密模組

pg_audit: 顆粒度較大的,審計沒有細化到行級別,要做行級別的審計,還是需要用觸發器

pg_log_userqueries: 模組審計使用者級或資料庫級的資料庫操作,弊端是顆粒度太大。

pgreplay: 審計

pageinspect: 內窺資料庫BLOCK的內容

passwordcheck: PostgreSQL自帶了一個外掛passwordcheck可以滿足簡單的密碼複雜度測驗, 防止使用過短, 或者與包含使用者名稱的密碼

pg_freespacemap: 觀察資料庫 表或索引的每個頁面和對應的空閒空間對映(FSM)的內容

pgrowlocks: 提供一個顯示指定的表的行鎖定資訊的函式

pg_trgm: 模糊查詢, 相似文字查詢

pg_visibility: 觀察資料庫block的vm標籤值(all visibility, frozen, dirty等)

pg_prewarm、pg_fincore: 資料預熱

tablefunc: 行列轉換,connect by

auto_explain、pg_show_plans: 檢視 postgresql 當前執行語句的執行計劃

zhparser、pg_jieba: 中文分詞

pg_trgm、pg_bigm(沒有3個分詞限制)、pgroonga:模糊查詢

pg_similarity、cube、rum: 相似查詢

pg_pathman、pg_partman: PostgreSQL 高效能表分割槽外掛。支援 HASH 分割槽、RANGE 分割槽以及自動擴容分割槽。可通過內建函式掛載、摘除和分割槽

pg_qualstats: 基於pg_qualstats和hypopg的自動索引調優

pg_wait_sampling: postgresql的一個extension,用於採集sql的等待事件

citext: 大小寫

pg_query_state: 觀察SQL執行過程中動態變化的資訊,包括hit, run tim, loop, memory開銷等等

session_exec: 實現使用者密碼驗證失敗幾次後自動鎖定

postgis: PostgreSQL 關聯式資料庫的空間操作擴充套件。它為 PostgreSQL 提供了儲存、查詢和修改空間關係的能力

pg_readonly: 設為只讀,類似transaction_read_only

pg_tt: 全域性臨時表

pg_dropbuffer、pg_dropcache: 刪除cache和buffer

set_user、pg_permissions、pg_restrict: ACL訪問控制列表,許可權進一步加強

diskquota: 類Oracle profile,不過只能限制磁碟

pg_prioritize: 程式優先順序排程

sql_firewall: SQL防火牆

auth_delay: 防破解、安全

timescaledb: 時序資料庫

md5hash、gzip(wget http: //api.pgxn.org/dist/gzip/1.0.0/gzip-1.0.0.zip )、pgzstd: 加密壓縮

ddlx、pgddl: 獲取DDL

uuid-ossp: uuid生成

pipelindb: 流式計算

orafce: oracle相容、package一些內建函式等

pg_roaringbitmap: 精準營銷

pg_repack、pg_sequeeze: 凍結、重建、垃圾回收

AWR: pg_awr、pg_profile

邏輯複製、cdc相關: wal2json、wal2mongo、decoder_raw、pglogical、decoderbufs

zedstore, 行列混合儲存

undam、zheap: undo引擎

pgpool: 讀寫分離、負載均衡


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31397003/viewspace-2883483/,如需轉載,請註明出處,否則將追究法律責任。

相關文章