メインコンテンツまでスキップ
メインコンテンツまでスキップ

PostgreSQL インターフェース

ClickHouseはPostgreSQLワイヤプロトコルをサポートしており、Postgresクライアントを使用してClickHouseに接続することができます。言い換えれば、ClickHouseはPostgreSQLインスタンスのように振る舞うことができ、ClickHouseによって直接サポートされていないPostgreSQLクライアントアプリケーション(例えば、Amazon Redshift)をClickHouseに接続することが可能です。

PostgreSQLワイヤプロトコルを有効にするには、サーバーの設定ファイルにpostgresql_port設定を追加します。例えば、config.dフォルダー内の新しいXMLファイルにポートを定義することができます:

ClickHouseサーバーを起動し、次のようなPostgreSQL互換プロトコルをリッスン中と記載されたログメッセージを探します:

psqlをClickHouseに接続する

以下のコマンドは、PostgreSQLクライアントpsqlをClickHouseに接続する方法を示しています:

例えば:

注記

psqlクライアントはパスワードによるログインを必要とするため、パスワードなしでdefaultユーザーを使用して接続することはできません。defaultユーザーにパスワードを設定するか、他のユーザーとしてログインしてください。

psqlクライアントはパスワードを要求します:

これで完了です!あなたは今、ClickHouseに接続されたPostgreSQLクライアントを持ち、すべてのコマンドとクエリはClickHouse上で実行されます。

注記

PostgreSQLプロトコルは現在、プレーンテキストのパスワードのみをサポートしています。

SSLの使用

ClickHouseインスタンスにSSL/TLSが構成されている場合、postgresql_portは同じ設定を使用します(ポートは安全なクライアントと非安全なクライアントの両方で共有されます)。

各クライアントはSSLを使用して接続する方法が異なります。以下のコマンドは、証明書とキーを渡してpsqlをClickHouseに安全に接続する方法を示しています:

詳細については、PostgreSQLのドキュメントを参照してください。