PostgreSQL 常用工具

作者: 不剪發(fā)的Tony老師
畢業(yè)于北京航空航天大學(xué),十多年數(shù)據(jù)庫管理與開發(fā)經(jīng)驗,目前在一家全球性的金融公司從事數(shù)據(jù)庫架構(gòu)設(shè)計。CSDN學(xué)院簽約講師以及GitChat專欄作者。csdn上的博客收藏于以下地址:https://tonydong.blog.csdn.net

文章目錄

        管理/開發(fā)工具
        備份與恢復(fù)
        集群和復(fù)制
        驅(qū)動和接口
        PostgreSQL 衍生版
        PostgreSQL 擴展插件
        外部數(shù)據(jù)庫
        存儲過程相關(guān)

管理/開發(fā)工具

    pgAdmin4,基于 Web 的 PostgreSQL 圖形管理和開發(fā)工具。
    OmniDB,基于 Web 的數(shù)據(jù)庫管理和開發(fā)工具,支持 PostgreSQL、MySQL/MariaDB、Oracle 等。
    phpPgAdmin,基于 Web 的 PostgreSQL 圖形管理工具。
    TeamPostgreSQL,基于 Web 的 PostgreSQL 圖形管理和開發(fā)工具。
    pgAgent,PostgreSQL 后臺作業(yè)調(diào)度代理程序。
    PGC,一個命令行工具,用于 PostgreSQL 和相關(guān)項目的安裝、更新和管理。
    pg_partman,PostgreSQL 分區(qū)管理工具。
    pgAudit,為 PostgreSQL 提供詳細(xì)的會話/對象操作審計日志。
    pg_cron,基于 cron 的后臺作業(yè)調(diào)度程序。
    Ora2Pg,Oracle/MySQL 到 PostgreSQL 遷移的免費工具。
    pgloader,支持各種數(shù)據(jù)源到 PostgreSQL 的數(shù)據(jù)加載和遷移。
    ERBuilder,Windows 平臺數(shù)據(jù)庫建模工具,支持各種主流的數(shù)據(jù)庫。
    pgModeler,PostgreSQL 數(shù)據(jù)庫建模工具,支持跨平臺。
    pgFormatter,SQL 語法格式化工具。
    pgBadger,PostgreSQL 日志分析工具。
    pgCluu,PostgreSQL 數(shù)據(jù)庫性能監(jiān)控和審計工具。
    PostgreStats,PostgreSQL 可視化監(jiān)控工具。

備份與恢復(fù)

    Barman,PostgreSQL 備份恢復(fù)管理器。
    pgBackRest,一個簡單可靠的備份恢復(fù)工具。
    pg_bulkload,數(shù)據(jù)批量加載工具。

集群和復(fù)制

    Postgres-BDR,分布式 PostgreSQL 多主集群方案。
    pglogical,PostgreSQL 邏輯復(fù)制插件。
    Patroni,PostgreSQL HA 模板,支持 ZooKeeper、etcd、Consul 以及 Kubernetes。
    spilo,PostgreSQL HA 集群 Docker 鏡像。
    Bucardo,支持多主和多從節(jié)點的異步復(fù)制系統(tǒng)。
    pg_chameleon,從 MySQL 到 PostgreSQL 的復(fù)制系統(tǒng)。
    pglogical,PostgreSQL 邏輯復(fù)制。
    Pgpool-II,管理 PostgreSQL 集群的中間件。
    repmgr,PostgreSQL 集群復(fù)制和故障切換管理工具。
    Slony-I,支持 PostgreSQL 一主多從以及級聯(lián)復(fù)制。
    SQL Relay,數(shù)據(jù)庫連接管理方案。

驅(qū)動和接口

    PyGreSQL,Python 連接 PostgreSQL 數(shù)據(jù)庫的模塊。
    DBD::Pg,Perl DBI 模塊的 PostgreSQL 數(shù)據(jù)庫驅(qū)動。
    libpqxx,C++ 連接 PostgreSQL 的官方接口。
    PgJDBC,PostgreSQL JDBC 官方驅(qū)動。
    psqlODBC,PostgreSQL ODBC 官方驅(qū)動。
    psycopg,Python 連接 PostgreSQL 的驅(qū)動。

PostgreSQL 衍生版

    TimescaleDB,基于 PostgreSQL 的時間序列數(shù)據(jù)庫。
    Postgres-XL,基于 PostgreSQL 的 MPP 數(shù)據(jù)庫。
    AgensGraph,基于 PostgreSQL 的圖形數(shù)據(jù)庫管理系統(tǒng)。
    Greenplum,基于 PostgreSQL 的 MPP 分析平臺。

PostgreSQL 擴展插件

    PostGIS,PostgreSQL 空間數(shù)據(jù)庫擴展。
    Orafce,提供 Oracle 兼容的函數(shù)和程序包。
    https://pgxn.org/ ,提供了各種 PostgreSQL 插件和擴展包。
    HypoPG,PostgreSQL 虛擬索引插件。
    pg_qualstats,統(tǒng)計 WHERE 和 JOIN 中的謂詞,提供索引建議。
    pg_track_settings,記錄 PostgreSQL 配置參數(shù)的變更。
    PipelineDB,處理時間序列數(shù)據(jù)流。

外部數(shù)據(jù)庫

    CassandraFDW,連接 Apache Cassandra 的 FDW。
    AthenaFDW,連接 Amazon Athena 的 FDW。
    mysql_fdw,連接 MySQL 數(shù)據(jù)庫的 FDW。
    cstore_fdw,PostgreSQL 列式存儲插件。
    oracle_fdw,連接 Oracle 數(shù)據(jù)庫的 FDW。
    tds_fdw,連接 Sybase 和 Microsoft SQL Server 的 FDW。

存儲過程相關(guān)

PostgreSQL 默認(rèn)支持以下過程語言:PL/pgSQL、PL/Tcl、PL/Perl 和 PL/Python。

    plProfiler,PL/pgSQL 性能分析工具,可以分析存儲過程和函數(shù)消耗的時間和運行次數(shù)。
    plDebugger,PL/pgSQL 存儲程序調(diào)式工具,支持?jǐn)帱c調(diào)試。
    PG_HINT_PLAN,通過 hint 控制查詢的執(zhí)行計劃。
    PL/Java,Java 存儲過程。
    PL/R,R 存儲過程。

最后,給出一個 GitHub 上關(guān)于 PostgreSQL 的優(yōu)秀資源列表。該項目列出了許多與 PostgreSQL 相關(guān)的軟件、工具、驅(qū)動以及在線資源。