MySQL、MariaDB、Perconaなどの一般的なデータベースサーバーの場合、データベースの表示、テーブルの表示、テーブルからのユーザーの一覧表示などのタスクに対して、さまざまなコマンドを実行する必要があります。 MyCLIを使用すると、このようなコマンドを簡単に実行できます。 MyCLIは、prompt_toolkitライブラリとPythonを使用して構築されたコマンドラインインターフェイス(CLI)であり、構文の強調表示とオートコンプリートを提供します。
上/下矢印キーを使用して、前のコマンドを一覧表示するようにMyCLIを構成することもできます。したがって、前のコマンドを再度入力することを心配する必要はありません。 MyCLIには、使用する必要のあるそのような機能が多数あります。
MyCLIの機能
- Pygmentsを使用した構文の強調表示がサポートされています。
- SSL接続がサポートされています。
- データベースにSQLキーワード、列、テーブル、ビューを入力すると、この場合はオートコンプリートが利用できます。
- 複数行のクエリがサポートされています
- インストール時に〜/.myclircに構成ファイルを自動的に作成します。
- SQLステートメントとテーブルレンダリングのタイミングがサポートされています。
- デフォルトでは、スマートコンプリーションが有効になっており、状況依存のコンプリーションの提案を提供します。
- SELECT * FROMを押してからタブを押すと、テーブル名が表示されます。
- SELECT * FROM users WHEREをクリックし、Tabキーを押すと、列名が表示されます。
- すべてのクエリとその結果ログはファイルに保存されます。デフォルトでは、この機能は無効になっています。
- 表形式のデータのカラフルな印刷。
- \fsエイリアスを使用したお気に入りのクエリの保存をサポートします。 \fsエイリアスを使用してクエリを再実行できます。
この記事では、MyCLIをUbuntu 20.04サーバーにインストールし、その使用例をいくつかの例で説明します。 mysqlサーバーを使用していますが、MariaDBまたはPerconaで自動的に機能します。
Ubuntu20.04LTSサーバーへのMyCLIのインストール
MyCLIをUbuntu20.04LTSサーバーにインストールするには、次のようにコマンドを実行できます。
$ sudo apt update
$ sudo apt install mycli -y
上記のコマンドを使用すると、mycliが完全にインストールされ、使用できるようになります。
MyCLIのユースケース
ここでは、人気のあるデータベースサーバーMySQLに対してMyCLIコマンドを使用します。コマンドと構文を簡単に実行できるMyCLI機能を使用して、いくつかのコマンドを実行してみましょう。
# mycli -u root -p database_name
ここでは、必要なものの1つを簡単に選択できる構文を完成させるためのオプションを確認できます。
MyCLIのオートコンプリート機能
このような機能を表示するコマンドを実行する別の例を以下に示します。
MyCLIにはオートコンプリート機能があるため、SELECT * Fと入力するだけで構文を完了するためのオプションが表示され、必要なオプションの1つを簡単に選択できるFROMなどのオプションが表示されます。
MyCLIのスマートコンプリート機能
また、スマートコンプリーション機能を示すために、以下に示す別の例を示します。
ここでは、WHEREの後にスペースを押しました。これは、関連するテーブルのオプションを示しています。この例では、テーブルpma__table__infoの列オプションが表示されています。
MyCLIのエイリアスサポート機能
この機能は多くの点で役立ちます。テーブル名がエイリアス化された後でも、列の補完は機能します。詳細については、以下の例をご覧ください。
結論
上記の手順でインストールするだけで、このようなオートコンプリート、スマートコンプリート、エイリアスサポート、およびMyCLIのその他の多くの機能を楽しむことができます。ありがとうございます!