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

> 在 NixOS 上使用 Nix 安装 ClickHouse

# 在 NixOS 上安装 ClickHouse

<div id="install-from-nix">
  # 在 NixOS 上安装 ClickHouse
</div>

> ClickHouse 可从 Nixpkgs 仓库获取，并可使用 Nix 安装在 **Linux** 和 **macOS** 上。

<Steps>
  <Step>
    ## 查看建议

    在安装 ClickHouse 之前，请先查看以下建议：

    * **Swap：** 在生产环境中禁用操作系统的交换分区或交换文件。
    * **Disk space：** 安装 ClickHouse 二进制文件至少需要 2.5 GB 磁盘空间。
    * **Network：** 对于分布式部署 (集群) ，建议至少使用 10 Gbit 网络连接。处理包含大量中间数据的分布式查询以及进行复制时，网络带宽至关重要。

    **估算存储需求**

    如需估算数据所需的磁盘空间：

    1. **估算数据量：** 抽取一部分数据作为样本，计算平均每行大小，然后乘以计划存储的总行数。
    2. **应用压缩系数：** 将样本加载到 ClickHouse 中，比较原始数据大小与存储后表的大小。例如，点击流数据通常可压缩 6–10 倍。
    3. **考虑副本：** 如果计划将数据存储在多个副本中，请将估算容量乘以副本数量。

    如需了解更详细的硬件要求，请参阅 ["容量规划与硬件建议"](/zh/guides/oss/best-practices/sizing-and-hardware-recommendations)
  </Step>

  <Step>
    ## 使用 Nix 安装 ClickHouse

    你可以使用 Nix 安装 ClickHouse，而无需将其永久添加到系统中：

    ```bash theme={null}
    # 安装最新稳定版本
    nix shell nixpkgs#clickhouse

    # 或安装 LTS 版本
    nix shell nixpkgs#clickhouse-lts
    ```

    这样，`clickhouse` 可执行文件就会在当前 shell 会话中可用。

    * `nixpkgs#clickhouse` 包提供最新稳定版本。
    * `nixpkgs#clickhouse-lts` 包提供长期支持版本。
    * 这两个包都可在 Linux 和 macOS 上使用。
  </Step>

  <Step>
    ## 永久安装

    要在系统上永久安装 ClickHouse：

    **对于 NixOS 用户**，请将以下内容添加到 `configuration.nix` 中：

    ```nix theme={null}
    environment.systemPackages = with pkgs; [
      clickhouse
    ];
    ```

    然后重建系统：

    ```bash theme={null}
    sudo nixos-rebuild switch
    ```

    **对于非 NixOS 用户**，请使用 Nix profile 安装：

    ```bash theme={null}
    # 安装最新稳定版本
    nix profile install nixpkgs#clickhouse

    # 或安装 LTS 版本
    nix profile install nixpkgs#clickhouse-lts
    ```
  </Step>

  <Step>
    ## 启动 ClickHouse server

    安装完成后，你可以启动 ClickHouse server：

    ```bash theme={null}
    clickhouse-server
    ```

    默认情况下，server 会使用基础配置启动，并监听 `localhost:9000`。

    如果要在 NixOS 上用于生产环境，你可能需要将 ClickHouse 配置为系统服务。有关可用配置选项，请参阅 [NixOS manual](https://search.nixos.org/options?query=clickhouse)。
  </Step>

  <Step>
    ## 启动 ClickHouse 客户端

    要连接到 ClickHouse server，请打开一个新的终端并运行：

    ```bash theme={null}
    clickhouse-client
    ```
  </Step>
</Steps>

<div id="about-nix-package">
  ## 关于 Nix 软件包
</div>

Nixpkgs 中的 ClickHouse 软件包包含：

* `clickhouse-server` - ClickHouse 数据库服务器
* `clickhouse-client` - 用于连接 ClickHouse 的命令行客户端
* `clickhouse-local` - 用于在本地文件上执行 SQL 查询的工具
* 其他 ClickHouse 实用程序

有关 Nixpkgs 中 ClickHouse 软件包的更多信息，请参阅：

* [Nixpkgs ClickHouse package](https://search.nixos.org/packages?query=clickhouse)
* [NixOS ClickHouse service options](https://search.nixos.org/options?query=clickhouse)
