9.3k Star!PostgreSQL 的加強版命令行客戶端

【導語】:pgcli 是針對PostgreSQL的命令行工具,對SQL語句有語法高亮顯示,而且能對輸入進行自動提示。python

簡介

pgcli是PostgreSQL的客戶端工具,支持語法高亮,支持自動提示補全命令,順嘴一提,MySQL也有相似的工具叫mycli。git

項目地址:<br/>
https://github.com/dbcli/pgcligithub

簡單使用

下載安裝

pgcli本質上是一個python庫,因此它的安裝方式和其餘python庫安裝同樣:sql

$ pip install -U pgcli
# Only on Debian based Linux (e.g. Ubuntu, Mint, etc)
$ sudo apt-get install pgcli 
# Only on macOS
$ brew install pgcli

使用

鏈接數據庫的語法爲:數據庫

$ pgcli [database_name]
或者
$ pgcli postgresql://[user[:password]@][netloc][:port][/dbname][?extra=value[&other=other-value]]

例如:app

$ pgcli local_database
$ pgcli postgres://amjith:pa$$w0rd@example.com:5432/app_db?sslmode=verify-ca&sslrootcert=/myrootcert

更詳細的用法,使用--help選項查看:less

$ pgcli --help

Usage: pgcli [OPTIONS] [DBNAME] [USERNAME]

Options:
  -h, --host TEXT         PostgreSQL數據庫所在主機地址.
  -p, --port INTEGER      PostgreSQL數據庫實例的端口.
  -U, --username TEXT     PostgreSQL數據庫用戶名.
  -u, --user TEXT         PostgreSQL數據庫用戶名.
  -W, --password          強制提示輸入密碼.
  -w, --no-password       不提示輸入密碼.
  --single-connection     只是用單一的鏈接.
  -v, --version           查看pgcli版本.
  -d, --dbname TEXT       目標鏈接的數據庫.
  --pgclirc PATH          pgclirc文件的路徑.
  -D, --dsn TEXT          使用配置到[alias_dsn]部分的DSN pgclirc文件.
  --list-dsn              配置到[alias_dsn]部分的DSN列表pgclirc文件.
  --row-limit INTEGER     設置行限制提示的閾值。使用0禁用提示.
  --less-chatty           跳過啓動時的介紹和退出時的再見.
  --prompt TEXT           提示格式(默認: "\u@\h:\d> ").
  --prompt-dsn TEXT       使用DSN別名的鏈接的提示格式(默認: "\u@\h:\d> ").
  -l, --list              列出可用的數據庫,而後退出.
  --auto-vertical-output  若是輸入內容比終端寬度寬,自動切換到垂直輸出模式.
  --warn / --no-warn      在運行危險查詢以前發出警告.

pgcli能夠讀取psql的環境變量,如PGHOST, PGPORT, PGUSER, PGPASSWORD, PGDATABASE;也使用ssl鏈接來鏈接ProstgreSQL,設置ssl相關的內容以下:工具

export PGSSLMODE="verify-full"
export PGSSLCERT="/your-path-to-certs/client.crt"
export PGSSLKEY="/your-path-to-keys/client.key"
export PGSSLROOTCERT="/your-path-to-ca/ca.crt"
pgcli -h localhost -p 5432 -U username postgres

其餘功能介紹

  • 輸入SQL關鍵字或數據庫表、列時自動提示、補全
  • 使用Pygments突出顯示語法
  • 根據上下文智能猜想目的,如post

    • SELECT * FROM <tab> 將僅顯示錶名稱。
    • SELECT * FROM users WHERE <tab> 將僅顯示列名稱。
  • 對psql反斜槓命令的原始支持
  • 優雅可視化的表格內容展現
  • 首次啓動時會自動建立一個配置文件,~/.config/pgcli/configspa

    • 該文件用於對pgcli使用的一些配置,如是否啓用自動補全功能,pgcli日誌文件路徑等。

開源前哨 平常分享熱門、有趣和實用的開源項目。參與維護 10萬+ Star 的開源技術資源庫,包括:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。
相關文章
相關標籤/搜索