データベースを操作するのに DBeaver などの GUI ツールももちろん使うんですが、コマンドラインでささっとチェックしたい場合もありますよね。
そんな時は MySQL(or MariaDB) なら mysql コマンド、 PostgreSQL なら psql コマンドをよく使うと思うんですが、 SQL が複数行になったり、結果の列数が多くなったりすると視認性も悪くなり、機能不足は否めません。
そんな時は dbcli を使いましょう!
もちろん Windows でも Mac でも Linux でも使えます。
- MySQL は mycli
- PostgreSQL は pgcli
- SQLite3 は litecli
- Microsoft SQL Server は mssql-cli
- Athena や VerticaDB でも使えます
自動補完
SQL キーワードと連携した補完
テーブル名に対応したカラム名も補完可能
エイリアスにも対応
シンタックスハイライト
結果表示
~/.bashrc
# 結果の折り返しを無効にする
export LESS="-XFR"
# 結界の折り返しを有効にする
export LESS="-SRXF"
結果表示には less コマンドのオプションが利用可能です。列が画面幅を越えてしまった場合は左右の矢印キーで表示可能です。
複数行モード
複数行の長大な SQL も快適に扱えます。
インストール方法
python が入っていれば、 pip コマンドで簡単にインストールできます。
## mycli
pip install mycli
## pgcli
pip install pgcli
## litecli
pip install litecli
Mac の方は homebrew でもインストールできます。
brew tap dbcli/tap
## mycli
brew install mycli
## pgcli
brew install pgcli
## litecli
brew install litecli
使用方法
起動オプションは mysql コマンドや psql コマンドと互換です。
## mycli
mycli -u <my_user> -h <my_host.com> -p<my_password> <my_database>
### DSN での指定もできます
mycli mysql://my_user@my_host.com:3306/my_database
## pgcli
pgcli -U <pg_user> -h <pg_host> <pg_database>
## litecli
litecli <lite_database>
信頼のオープンソース
GitHub で活発に開発されています。
GUI ダルいという方はぜひ!