> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-postgresql-tls-support.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# トラブルシューティング

> インストール時のトラブルシューティングガイド

<div id="installation">
  ## インストール
</div>

<div id="cant-import-gpg-keys-from-keyserverubuntucom-with-apt-key">
  ### apt-key で keyserver.ubuntu.com から GPG キーをインポートできない
</div>

[Advanced package tool (APT)](https://manpages.debian.org/bookworm/apt/apt-key.8.en.html) の `apt-key` 機能は非推奨です。代わりに `gpg` コマンドを使用してください。詳しくは、[インストールガイド](/ja/get-started/setup/install) を参照してください。

<div id="cant-import-gpg-keys-from-keyserverubuntucom-with-gpg">
  ### `gpg` で keyserver.ubuntu.com から GPGキーをインポートできない場合
</div>

1. `gpg` がインストールされているか確認します。

```shell theme={null}
sudo apt-get install gnupg
```

<div id="cant-get-deb-packages-from-clickhouse-repository-with-apt-get">
  ### apt-get で ClickHouse リポジトリから deb パッケージを取得できない場合
</div>

1. ファイアウォールの設定を確認してください。
2. 何らかの理由でリポジトリにアクセスできない場合は、[インストールガイド](/ja/get-started/setup/install) に記載されている手順でパッケージをダウンロードし、`sudo dpkg -i <packages>` コマンドで手動インストールしてください。`tzdata` パッケージも必要です。

<div id="cant-update-deb-packages-from-clickhouse-repository-with-apt-get">
  ### apt-get で ClickHouse リポジトリの deb パッケージを更新できない
</div>

この問題は、GPG キーが変更されたときに発生することがあります。

リポジトリの設定を更新するには、[セットアップ](/ja/get-started/setup/self-managed/debian-ubuntu) ページの手順に従ってください。

<div id="you-get-different-warnings-with-apt-get-update">
  ### `apt-get update` 実行時に異なる警告が表示される
</div>

表示される警告メッセージは、以下のいずれかです。

```shell theme={null}
N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'https://packages.clickhouse.com/deb stable InRelease' doesn't support architecture 'i386'
```

```shell theme={null}
E: Failed to fetch https://packages.clickhouse.com/deb/dists/stable/main/binary-amd64/Packages.gz  File has unexpected size (30451 != 28154). Mirror sync in progress?
```

```shell theme={null}
E: Repository 'https://packages.clickhouse.com/deb stable InRelease' changed its 'Origin' value from 'Artifactory' to 'ClickHouse'
E: Repository 'https://packages.clickhouse.com/deb stable InRelease' changed its 'Label' value from 'Artifactory' to 'ClickHouse'
N: Repository 'https://packages.clickhouse.com/deb stable InRelease' changed its 'Suite' value from 'stable' to ''
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
```

```shell theme={null}
Err:11 https://packages.clickhouse.com/deb stable InRelease
400  Bad Request [IP: 172.66.40.249 443]
```

上記の問題を解決するには、以下のスクリプトを使用してください。

```shell theme={null}
sudo rm /var/lib/apt/lists/packages.clickhouse.com_* /var/lib/dpkg/arch /var/lib/apt/lists/partial/packages.clickhouse.com_*
sudo apt-get clean
sudo apt-get autoclean
```

<div id="cant-get-packages-with-yum-because-of-wrong-signature">
  ### 署名が正しくないため、Yum でパッケージを取得できない
</div>

想定される問題: cache に問題があり、2022-09 の GPG キー更新後に壊れている可能性があります。

解決策として、Yum の cache と lib ディレクトリを削除します。

```shell theme={null}
sudo find /var/lib/yum/repos/ /var/cache/yum/ -name 'clickhouse-*' -type d -exec rm -rf {} +
sudo rm -f /etc/yum.repos.d/clickhouse.repo
```

その後、[インストールガイド](/ja/get-started/setup/self-managed/redhat)に従ってください

<div id="connecting-to-the-server">
  ## サーバーへの接続
</div>

考えられる原因:

* サーバーが起動していません。
* 想定外の設定パラメータ、または誤った設定パラメータが指定されています。

<div id="server-is-not-running">
  ### サーバーが起動していません
</div>

<div id="check-if-server-is-running">
  #### サーバーが起動しているか確認する
</div>

```shell theme={null}
sudo service clickhouse-server status
```

サーバーが起動していない場合は、次のコマンドで起動します。

```shell theme={null}
sudo service clickhouse-server start
```

<div id="check-the-logs">
  #### ログを確認する
</div>

`clickhouse-server` のメインログは、デフォルトでは `/var/log/clickhouse-server/clickhouse-server.log` にあります。

サーバーが正常に起動した場合は、次の文字列が表示されるはずです。

* `<Information> Application: starting up.` — サーバーが起動しました。
* `<Information> Application: Ready for connections.` — サーバーは稼働しており、接続を受け付ける準備ができています。

`clickhouse-server` の起動が設定エラーで失敗した場合は、エラーの説明とともに `<Error>` という文字列が表示されるはずです。たとえば:

```plaintext theme={null}
2019.01.11 15:23:25.549505 [ 45 ] {} <Error> ExternalDictionaries: Failed reloading 'event2id' external dictionary: Poco::Exception. Code: 1000, e.code() = 111, e.displayText() = Connection refused, e.what() = Connection refused
```

ファイルの末尾にエラーが表示されていない場合は、次の文字列を起点にファイル全体を確認してください:

```plaintext theme={null}
<Information> Application: starting up.
```

サーバー上で `clickhouse-server` の2つ目のインスタンスを起動しようとすると、次のログが表示されます。

```plaintext theme={null}
2019.01.11 15:25:11.151730 [ 1 ] {} <Information> : Starting ClickHouse 19.1.0 with revision 54413
2019.01.11 15:25:11.154578 [ 1 ] {} <Information> Application: starting up
2019.01.11 15:25:11.156361 [ 1 ] {} <Information> StatusFile: Status file ./status already exists - unclean restart. Contents:
PID: 8510
Started at: 2019-01-11 15:24:23
Revision: 54413

2019.01.11 15:25:11.156673 [ 1 ] {} <Error> Application: DB::Exception: Cannot lock file ./status. Another server instance in same directory is already running.
2019.01.11 15:25:11.156682 [ 1 ] {} <Information> Application: shutting down
2019.01.11 15:25:11.156686 [ 1 ] {} <Debug> Application: Uninitializing subsystem: Logging Subsystem
2019.01.11 15:25:11.156716 [ 2 ] {} <Information> BaseDaemon: Stop SignalListener thread
```

<div id="see-systemd-logs">
  #### system.d のログを確認する
</div>

`clickhouse-server` のログに有用な情報が見つからない場合、またはログがまったくない場合は、次のコマンドで `system.d` のログを確認できます。

```shell theme={null}
sudo journalctl -u clickhouse-server
```

<div id="start-clickhouse-server-in-interactive-mode">
  #### clickhouse-serverを対話型モードで起動する
</div>

```shell theme={null}
sudo -u clickhouse /usr/bin/clickhouse-server --config-file /etc/clickhouse-server/config.xml
```

このコマンドは、自動起動スクリプトの標準パラメータを使用して、server を対話型アプリケーションとして起動します。このモードでは、`clickhouse-server` がすべてのイベントメッセージをコンソールに出力します。

<div id="configuration-parameters">
  ### 設定パラメータ
</div>

確認事項:

1. Docker の設定:

   * IPv6 ネットワーク上の Docker で ClickHouse を実行している場合は、`network=host` が設定されていることを確認してください。

2. エンドポイントの設定。
   * [listen\_host](/ja/reference/settings/server-settings/settings#listen_host) と [tcp\_port](/ja/reference/settings/server-settings/settings#tcp_port) の設定を確認してください。
   * ClickHouse server はデフォルトで localhost からの接続のみを受け付けます。

3. HTTP プロトコルの設定:

   * HTTP API のプロトコル設定を確認してください。

4. セキュア接続の設定。

   * 次を確認してください。
     * [tcp\_port\_secure](/ja/reference/settings/server-settings/settings#tcp_port_secure) の設定。
     * [SSL certificates](/ja/reference/settings/server-settings/settings#openssl) の設定。
   * 接続時には適切なパラメータを使用してください。たとえば、`clickhouse_client` では `port_secure` パラメータを使用します。

5. ユーザー設定:

   * ユーザー名またはパスワードが誤っている可能性があります。

<div id="query-processing">
  ## クエリ処理
</div>

ClickHouseがクエリを処理できない場合は、エラーの説明がクライアントに送信されます。`clickhouse-client` では、コンソールにエラーの説明が表示されます。HTTPインターフェイスを使用している場合、ClickHouse はレスポンス本文にエラーの説明を返します。例えば:

```shell theme={null}
$ curl 'http://localhost:8123/' --data-binary "SELECT a"
Code: 47, e.displayText() = DB::Exception: Unknown identifier: a. Note that there are no tables (FROM clause) in your query, context: required_names: 'a' source_tables: table_aliases: private_aliases: column_aliases: public_columns: 'a' masked_columns: array_join_columns: source_columns: , e.what() = DB::Exception
```

`stack-trace` パラメータを指定して `clickhouse-client` を起動すると、ClickHouse はエラーの説明とともにサーバーのスタックトレースを返します。

接続が切断されたというメッセージが表示されることがあります。その場合は、クエリを再実行できます。クエリを実行するたびに接続が切断される場合は、サーバーログにエラーがないか確認してください。

<div id="efficiency-of-query-processing">
  ## クエリ処理の効率
</div>

ClickHouse の動作が遅すぎると感じる場合は、クエリによるサーバーリソースやネットワークへの負荷をプロファイリングする必要があります。

クエリのプロファイリングには、`clickhouse-benchmark` ユーティリティを使用できます。これにより、1 秒あたりに処理されるクエリ数、1 秒あたりに処理される行数、およびクエリの処理時間のパーセンタイルを確認できます。
