3分钟快速安装 ClickHouse、配置服务、设置密码和远程登录以及修改数据目录

下面是一个完整的 ClickHouse 安装和配置流程,包括安装 ClickHouse、配置服务、设置密码和远程登录以及修改数据目录。

安装 ClickHouse

  1. 安装 YUM 工具包

    bash 复制代码
    sudo yum install -y yum-utils
  2. 添加 ClickHouse YUM 仓库

    bash 复制代码
    sudo yum-config-manager --add-repo https://packages.clickhouse.com/rpm/clickhouse.repo
  3. 安装 ClickHouse 服务器和客户端

    bash 复制代码
    sudo yum install -y clickhouse-server clickhouse-client
  4. 启用并启动 ClickHouse 服务

    bash 复制代码
    sudo systemctl enable clickhouse-server
    sudo systemctl start clickhouse-server
    sudo systemctl status clickhouse-server
  5. 连接到 ClickHouse 客户端(如果未设置密码):

    bash 复制代码
    clickhouse-client

配置 ClickHouse

配置默认用户密码(这是明文的配置步骤,下面有密文的配置步骤)

要将 ClickHouse 中的 default 用户密码设置为 AAAaaa,请按照以下步骤操作:

  1. 打开 ClickHouse 配置文件。这通常在 /etc/clickhouse-server/users.xml/etc/clickhouse-server/users.d/ 目录下。

  2. 找到 <users> 部分下的 <default> 用户配置。

  3. <default> 部分中,找到 <password> 标签。如果该标签不存在,您需要添加它。

  4. <password> 标签的内容更改为新密码 AAAaaa。例如:

    xml 复制代码
    <default>
        <!-- 其他设置 -->
        <password>AAAaaa</password>
        <!-- 其他设置 -->
    </default>
  5. 保存并关闭配置文件。

  6. 重启 ClickHouse 服务以应用更改。在大多数 Linux 发行版上,可以使用以下命令重启服务:

    sudo service clickhouse-server restart
    

完成这些步骤后,您应该能够使用新密码 AAAaaa 登录 default 用户。请确保在进行这些更改时具有适当的系统访问权限,并在修改配置文件之前进行备份。

  1. 默认用户用密码登录

    bash 复制代码
    clickhouse-client --password
  2. 其它用户连接数据库

  • 使用默认用户名 default 和配置的密码 XXXXXX 连接到 ClickHouse 客户端。

    bash 复制代码
    clickhouse-client --user default --password XXXXX
  1. 配置远程登录
  • 编辑 /etc/clickhouse-server/config.xml 文件。

    bash 复制代码
    sudo nano /etc/clickhouse-server/config.xml
  • 找到并取消注释(或添加)以下行以允许远程连接:

    xml 复制代码
    <listen_host>0.0.0.0</listen_host>

你是对的,创建新数据目录的步骤确实是必要的。以下是修改 ClickHouse 数据目录时包含创建新目录的完整流程:

修改数据目录

  1. 停止 ClickHouse 服务

    • 停止 ClickHouse 服务以确保在移动数据时不会发生损坏。

      bash 复制代码
      sudo systemctl stop clickhouse-server
  2. 创建新的数据目录

    • 如果新目录 /app/clickhouse 还不存在,你需要先创建它。

      bash 复制代码
      sudo mkdir -p /app/clickhouse
      sudo mkdir -p /app/clickhouse/tmp
  3. 编辑配置文件

    • 修改 /etc/clickhouse-server/config.xml 文件中的数据目录设置。

      bash 复制代码
      sudo nano /etc/clickhouse-server/config.xml
    • 找到 <path><tmp_path> 标签,并更改为新的目录路径:

      xml 复制代码
      <!-- Path to data directory, with trailing slash. -->
      <path>/app/clickhouse/</path>
      <tmp_path>/app/clickhouse/tmp/</tmp_path>
    • 在 nano 中,按 Ctrl + O 保存更改,然后按 Ctrl + X 退出。

  4. 移动现有数据(如果适用):

    • 将数据从默认目录 /var/lib/clickhouse/ 移动到新目录 /app/clickhouse/

      bash 复制代码
      sudo mv /var/lib/clickhouse/* /app/clickhouse/
  5. 设置正确的权限

    • 确保新目录具有正确的权限,以便 ClickHouse 可以访问。

      bash 复制代码
      sudo chown -R clickhouse:clickhouse /app/clickhouse
      sudo chmod -R 700 /app/clickhouse
  6. 重启 ClickHouse 服务

    • 重启 ClickHouse 服务,并检查是否一切正常。

      bash 复制代码
      sudo systemctl start clickhouse-server

通过以上步骤,你可以成功地将 ClickHouse 的数据目录更改为 /app/clickhouse。如果在过程中遇到任何问题,或者需要进一步的帮助,请随时告诉我。

验证配置

  • 在完成配置后,验证 ClickHouse 是否正常运行,新的数据目录和远程登录是否设置成功。

这个流程涵盖了从安装到配置的完整步骤,包括基本的服务管理、安全设置和目录配置。如果有任何疑问或需要进一步的帮助,请随时告知。

默认用户密码配置

在 ClickHouse 中设置用户密码,而不使用明文密码,通常意味着使用哈希来存储密码。这样可以增加安全性,因为即使配置文件被查看,密码本身也不会被暴露。

要设置 default 用户的密码为 AAAaaa 的哈希,你需要先生成该密码的 SHA256 哈希,然后将其添加到 ClickHouse 的用户配置文件中。以下是步骤:

生成 SHA256 密码哈希

  1. 在命令行中生成哈希
    • 你可以使用 echosha256sum 命令来生成密码的 SHA256 哈希。

      bash 复制代码
      echo -n 'AAAaaa' | sha256sum
    • 这将输出一串哈希值,看起来像 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8

配置 ClickHouse 用户密码

感谢您分享了关于如何修改 ClickHouse 默认密码的方法。文章内容概括了三种不同方式来设置密码:明文密码、SHA256 哈希密码和双重 SHA1 哈希密码。以下是这些方法的简要概述和操作步骤:

1. 明文密码

  • 编辑 /etc/clickhouse-server/users.xml 文件。

  • 在相应的用户配置下添加 <password> 标签并设置密码值。

    xml 复制代码
    <password>123456789</password>

2. SHA256 密码

  • 使用 OpenSSL 生成密码的 SHA256 哈希。

    bash 复制代码
    echo -n 123456789 | openssl dgst -sha256
  • users.xml 文件中,将 <password_sha256_hex> 标签的值设置为生成的哈希值。之前的 <password> 标签需要注释掉

    xml 复制代码
    <password_sha256_hex>15e2b0d3c33891ebb0f1ef609ec419420c20e320ce94c65fbc8c3312448eb225</password_sha256_hex>

3. 双重 SHA1 密码

  • 使用 OpenSSL 生成密码的双重 SHA1 哈希。

    bash 复制代码
    echo -n 123456789 | openssl dgst -sha1 -binary | openssl dgst -sha1
  • users.xml 文件中,设置 <password_double_sha1_hex> 标签的值为生成的哈希值。之前的 <password> 标签需要注释掉

    xml 复制代码
    <password_double_sha1_hex>cc67043c7bcff5eea5566bd9b1f3c74fd9a5cf5d</password_double_sha1_hex>

重启服务和测试登录

  • 完成密码设置后,需要重启 ClickHouse 服务以应用更改。

    bash 复制代码
    systemctl restart clickhouse-server
  • 测试登录以验证密码是否正确设置。

    bash 复制代码
    clickhouse-client --password

这些步骤提供了灵活的选择来设置 ClickHouse 用户密码,以满足不同安全需求。请确保在操作过程中妥善处理和保护密码信息,尤其是当使用明文密码时。如果您有任何疑问或需要进一步的帮助,请随时告诉我。

相关推荐
gengjianchun3 天前
clickhouse 安装配置
服务器·网络·clickhouse
东皋长歌3 天前
ClickHouse安装
clickhouse
大嘴吧Lucy3 天前
实战攻略 | ClickHouse优化之FINAL查询加速
数据库·mysql·clickhouse
东皋长歌3 天前
SpringBoot+ClickHouse集成
clickhouse·springboot
从未完美过3 天前
ClickHouse集成Mysql表引擎跨服务器读表说明
服务器·mysql·clickhouse
华为云开发者联盟5 天前
华为云开源时序数据库openGemini:使用列存引擎解决时序高基数问题
clickhouse·时序数据库·高基数·opengemini
偏振万花筒6 天前
【BUG分析】clickhouse表final成功,但存在数据未合并
clickhouse·bug
爱折腾的小码农6 天前
宝塔使用clickhouse踩坑
clickhouse
激流丶6 天前
【Clikhouse 探秘】ClickHouse 物化视图:加速大数据分析的新利器
java·clickhouse·数据挖掘·数据分析·物化视图
程序员阿明6 天前
clickhouse配置用户角色与权限
java·数据库·clickhouse