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

> MacOS に ClickHouse をインストールする

# tgz アーカイブを使用して ClickHouse をインストールする

<div id="install-clickhouse-using-tgz-archives">
  # `tgz` アーカイブを使用して ClickHouse をインストールする
</div>

> `deb` または `rpm` パッケージをインストールできない Linux ディストリビューションでは、公式の事前コンパイル済み `tgz` アーカイブを使用することを推奨します。

<Steps>
  <Step>
    ## 推奨事項を確認する

    ClickHouse をインストールする前に、次の推奨事項を確認してください。

    * **スワップ:** 本番環境では、オペレーティングシステムのスワップファイルを無効にしてください。
    * **ディスク容量:** ClickHouse バイナリのインストールには、少なくとも 2.5 GB のディスク容量が必要です。
    * **ネットワーク:** 分散デプロイメント (クラスター構成) では、少なくとも 10 Gbit のネットワーク接続を使用してください。大量の中間データを伴う分散クエリの処理やレプリケーションでは、ネットワーク帯域幅が重要です。

    **ストレージ要件の見積もり**

    データに必要なディスク容量を見積もるには:

    1. **データ量を見積もる:** データのサンプルを取得して平均的な行サイズを計算し、それに保存予定の行数を掛けます。
    2. **圧縮係数を適用する:** サンプルを ClickHouse にロードし、元のデータサイズと保存後のテーブルサイズを比較します。たとえば、クリックストリームデータは通常 6～10 倍に圧縮されます。
    3. **レプリカを考慮する:** 複数のレプリカにデータを保存する予定がある場合は、見積もり容量にレプリカ数を掛けます。

    より詳細なハードウェア要件については、["サイジングとハードウェアの推奨事項"](/ja/guides/oss/best-practices/sizing-and-hardware-recommendations) を参照してください。
  </Step>

  <Step>
    ## 最新の stable バージョンをダウンロードしてインストールする

    必要なバージョンは、リポジトリ [https://packages.clickhouse.com/tgz/](https://packages.clickhouse.com/tgz/) から `curl` または `wget` を使ってダウンロードできます。
    その後、ダウンロードしたアーカイブを展開し、インストールスクリプトを使ってインストールします。

    以下は、最新の stable バージョンをインストールする例です。

    <Note>
      本番環境では、最新の `stable` バージョンを使用することを推奨します。
      リリース番号は、この [GitHub page](https://github.com/ClickHouse/ClickHouse/tags)
      で、接尾辞 `-stable` が付いたものとして確認できます。
    </Note>
  </Step>

  <Step>
    ## 最新の ClickHouse バージョンを取得する

    GitHub から最新の ClickHouse バージョンを取得し、`LATEST_VERSION` 変数に保存します。

    ```bash theme={null}
    LATEST_VERSION=$(curl -s https://raw.githubusercontent.com/ClickHouse/ClickHouse/master/utils/list-versions/version_date.tsv | \
        grep -Eo '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' | sort -V -r | head -n 1)
    export LATEST_VERSION
    ```
  </Step>

  <Step>
    ## システムアーキテクチャを検出する

    システムアーキテクチャを検出し、それに応じて `ARCH` 変数を設定します。

    ```bash theme={null}
    case $(uname -m) in
      x86_64) ARCH=amd64 ;;         # Intel/AMD 64 ビットプロセッサ向け
      aarch64) ARCH=arm64 ;;        # ARM 64 ビットプロセッサ向け
      *) echo "Unknown architecture $(uname -m)"; exit 1 ;; # サポートされていないアーキテクチャの場合は終了
    esac
    ```
  </Step>

  <Step>
    ## 各 ClickHouse コンポーネントの tarball をダウンロードする

    各 ClickHouse コンポーネントの tarball をダウンロードします。このループでは、まずアーキテクチャ固有の
    パッケージを試し、利用できない場合は汎用パッケージにフォールバックします。

    ```bash theme={null}
    for PKG in clickhouse-common-static clickhouse-common-static-dbg clickhouse-server clickhouse-client clickhouse-keeper
    do
      curl -fO "https://packages.clickhouse.com/tgz/stable/$PKG-$LATEST_VERSION-${ARCH}.tgz" \
        || curl -fO "https://packages.clickhouse.com/tgz/stable/$PKG-$LATEST_VERSION.tgz"
    done
    ```
  </Step>

  <Step>
    ## パッケージを展開してインストールする

    以下のパッケージを展開してインストールするには、次のコマンドを実行します。

    * `clickhouse-common-static`

    ```bash theme={null}
    # clickhouse-common-static パッケージを展開してインストール
    tar -xzvf "clickhouse-common-static-$LATEST_VERSION-${ARCH}.tgz" \
      || tar -xzvf "clickhouse-common-static-$LATEST_VERSION.tgz"
    sudo "clickhouse-common-static-$LATEST_VERSION/install/doinst.sh"
    ```

    * `clickhouse-common-static-dbg`

    ```bash theme={null}
    # デバッグシンボルパッケージを展開してインストール
    tar -xzvf "clickhouse-common-static-dbg-$LATEST_VERSION-${ARCH}.tgz" \
      || tar -xzvf "clickhouse-common-static-dbg-$LATEST_VERSION.tgz"
    sudo "clickhouse-common-static-dbg-$LATEST_VERSION/install/doinst.sh"
    ```

    * `clickhouse-server`

    ```bash theme={null}
    # 設定を含むサーバーパッケージを展開してインストール
    tar -xzvf "clickhouse-server-$LATEST_VERSION-${ARCH}.tgz" \
      || tar -xzvf "clickhouse-server-$LATEST_VERSION.tgz"
    sudo "clickhouse-server-$LATEST_VERSION/install/doinst.sh" configure
    sudo /etc/init.d/clickhouse-server start  # サーバーを起動
    ```

    * `clickhouse-client`

    ```bash theme={null}
    # クライアントパッケージを展開してインストール
    tar -xzvf "clickhouse-client-$LATEST_VERSION-${ARCH}.tgz" \
      || tar -xzvf "clickhouse-client-$LATEST_VERSION.tgz"
    sudo "clickhouse-client-$LATEST_VERSION/install/doinst.sh"
    ```
  </Step>
</Steps>
