新しい環境のトラブルシューティングを行う際には、多くの場合、動作しているさまざまなコンポーネントを分離し、できる限りシンプルにそれらを独立してテストすることをおすすめします。
Looker サーバーとデータベースの間の接続をテストするには、Looker サーバーで Telnet を使用してシンプルな TCP 接続を作成します。Telnet を使用するメリットは非常にシンプルです。変更する構成ファイルがなく、認証も必要ありません。Telnet は接続を行うか、接続しないかのどちらかになります。
データベースにアクセスできることがわかったら、データベースのネイティブ クライアントや Looker などのアプリケーションを介してテストに進むことができます。
Telnet のインストール
ホストによっては、Telnet がプリインストールされている場合があります。これをテストするには、Looker サーバーで次のコマンドを実行します。
telnet ?
次のように表示されます。
usage: telnet [-l user] [-a] [-s src_addr] host-name [port]
「コマンドが見つかりません」というエラーが表示される場合は、Telnet をインストールする必要があります。
Ubuntu の場合:
sudo apt-get install telnet
Redhat/CentOS:
yum install telnet
デフォルト ポート
データベースがどのポートで実行されているかを把握しておく必要があります。次の表に、多くのプラットフォームのデフォルト ポートを示します。ただし、データベースは別のポートで実行されるように構成することもできます。データベースの管理者にお問い合わせください。
プラットフォーム | ポート |
---|---|
Amazon Redshift | 5439 |
グリーンプラム | 5432 |
Microsoft SQL Server(MSSQL) | 1433 |
MySQL | 3306 |
Oracle | 1521 |
PostgreSQL | 5432 |
Vertica | 5433 |
Telnet でデータベースに接続する
データベースへの接続をテストするには、Looker サーバーで telnet hostname port
を実行します。たとえば、MySQL をデフォルト ポートで実行していて、データベース名が mydb の場合、コマンドは telnet mydb 3306
になります。
接続が機能している場合は、次のように表示されます。
Trying 10.10.10.10...
Connected to mydb.
Escape character is '^]'.
接続が機能していない場合は、次のように表示されます。
Trying 10.10.10.10...
telnet: Unable to connect to remote host: Connection timed out
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
telnet: could not resolve mydb/telnet: Name or service not known
トラブルシューティング
Telnet チェックに失敗した場合は、次を検討してください。
- ホスト名は正しいですか?
- データベースと Looker サーバーは、ネットワーク トラフィックを許可するように構成されていますか?両方のホストにインストールされているファイアウォール ソフトウェアを確認します。
- Looker サーバーとデータベース ホストとの間のすべてのネットワークが、ネットワーク トラフィックを許可するように構成されているか。ファイアウォールとネットワークのアクセス制御リスト(ACL)を確認します。
- Looker サーバーとデータベース ホストとの間のすべてのネットワークが、ホスト間のトラフィックをルーティングするように構成されているか。
- データベース サーバーは実行中で、正しいポートでリッスンしているか、また、Looker サーバーからの接続を許可するように構成されていますか?
次のステップ
Looker サーバーからデータベース サーバーに Telnet 接続できる場合は、基本的な接続の問題を排除できます。次のステップでは、Looker データベース接続を作成します。