下面是一个完整的 ClickHouse 安装和配置流程,包括安装 ClickHouse、配置服务、设置密码和远程登录以及修改数据目录。
安装 ClickHouse
-
安装 YUM 工具包:
sudo yum install -y yum-utils
-
添加 ClickHouse YUM 仓库:
sudo yum-config-manager --add-repo https://packages.clickhouse.com/rpm/clickhouse.repo
-
安装 ClickHouse 服务器和客户端:
sudo yum install -y clickhouse-server clickhouse-client
-
启用并启动 ClickHouse 服务:
sudo systemctl enable clickhouse-server sudo systemctl start clickhouse-server sudo systemctl status clickhouse-server
-
连接到 ClickHouse 客户端(如果未设置密码):
clickhouse-client
配置 ClickHouse
配置默认用户密码(这是明文的配置步骤,下面有密文的配置步骤)
要将 ClickHouse 中的 default
用户密码设置为 AAAaaa
,请按照以下步骤操作:
-
打开 ClickHouse 配置文件。这通常在
/etc/clickhouse-server/users.xml
或/etc/clickhouse-server/users.d/
目录下。 -
找到
<users>
部分下的<default>
用户配置。 -
在
<default>
部分中,找到<password>
标签。如果该标签不存在,您需要添加它。 -
将
<password>
标签的内容更改为新密码AAAaaa
。例如:<default> <!-- 其他设置 --> <password>AAAaaa</password> <!-- 其他设置 --> </default>
-
保存并关闭配置文件。
-
重启 ClickHouse 服务以应用更改。在大多数 Linux 发行版上,可以使用以下命令重启服务:
sudo service clickhouse-server restart
完成这些步骤后,您应该能够使用新密码 AAAaaa
登录 default
用户。请确保在进行这些更改时具有适当的系统访问权限,并在修改配置文件之前进行备份。
- 默认用户用密码登录:
clickhouse-client --password
- 其它用户连接数据库:
- 使用默认用户名
default
和配置的密码XXXXXX
连接到 ClickHouse 客户端。clickhouse-client --user default --password XXXXX
- 配置远程登录:
- 编辑
/etc/clickhouse-server/config.xml
文件。sudo nano /etc/clickhouse-server/config.xml
- 找到并取消注释(或添加)以下行以允许远程连接:
<listen_host>0.0.0.0</listen_host>
你是对的,创建新数据目录的步骤确实是必要的。以下是修改 ClickHouse 数据目录时包含创建新目录的完整流程:
修改数据目录
-
停止 ClickHouse 服务:
- 停止 ClickHouse 服务以确保在移动数据时不会发生损坏。
sudo systemctl stop clickhouse-server
- 停止 ClickHouse 服务以确保在移动数据时不会发生损坏。
-
创建新的数据目录:
- 如果新目录
/app/clickhouse
还不存在,你需要先创建它。sudo mkdir -p /app/clickhouse sudo mkdir -p /app/clickhouse/tmp
- 如果新目录
-
编辑配置文件:
- 修改
/etc/clickhouse-server/config.xml
文件中的数据目录设置。sudo nano /etc/clickhouse-server/config.xml
- 找到
<path>
和<tmp_path>
标签,并更改为新的目录路径:<!-- Path to data directory, with trailing slash. --> <path>/app/clickhouse/</path> <tmp_path>/app/clickhouse/tmp/</tmp_path>
- 在 nano 中,按
Ctrl + O
保存更改,然后按Ctrl + X
退出。
- 修改
-
移动现有数据(如果适用):
- 将数据从默认目录
/var/lib/clickhouse/
移动到新目录/app/clickhouse/
。sudo mv /var/lib/clickhouse/* /app/clickhouse/
- 将数据从默认目录
-
设置正确的权限:
- 确保新目录具有正确的权限,以便 ClickHouse 可以访问。
sudo chown -R clickhouse:clickhouse /app/clickhouse sudo chmod -R 700 /app/clickhouse
- 确保新目录具有正确的权限,以便 ClickHouse 可以访问。
-
重启 ClickHouse 服务:
- 重启 ClickHouse 服务,并检查是否一切正常。
sudo systemctl start clickhouse-server
- 重启 ClickHouse 服务,并检查是否一切正常。
通过以上步骤,你可以成功地将 ClickHouse 的数据目录更改为 /app/clickhouse
。如果在过程中遇到任何问题,或者需要进一步的帮助,请随时告诉我。
验证配置
- 在完成配置后,验证 ClickHouse 是否正常运行,新的数据目录和远程登录是否设置成功。
这个流程涵盖了从安装到配置的完整步骤,包括基本的服务管理、安全设置和目录配置。如果有任何疑问或需要进一步的帮助,请随时告知。
默认用户密码配置
在 ClickHouse 中设置用户密码,而不使用明文密码,通常意味着使用哈希来存储密码。这样可以增加安全性,因为即使配置文件被查看,密码本身也不会被暴露。
要设置 default
用户的密码为 AAAaaa
的哈希,你需要先生成该密码的 SHA256 哈希,然后将其添加到 ClickHouse 的用户配置文件中。以下是步骤:
生成 SHA256 密码哈希
- 在命令行中生成哈希:
- 你可以使用
echo
和sha256sum
命令来生成密码的 SHA256 哈希。echo -n 'AAAaaa' | sha256sum
- 这将输出一串哈希值,看起来像
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
。
- 你可以使用
配置 ClickHouse 用户密码
感谢您分享了关于如何修改 ClickHouse 默认密码的方法。文章内容概括了三种不同方式来设置密码:明文密码、SHA256 哈希密码和双重 SHA1 哈希密码。以下是这些方法的简要概述和操作步骤:
1. 明文密码
- 编辑
/etc/clickhouse-server/users.xml
文件。 - 在相应的用户配置下添加
<password>
标签并设置密码值。<password>123456789</password>
2. SHA256 密码
- 使用 OpenSSL 生成密码的 SHA256 哈希。
echo -n 123456789 | openssl dgst -sha256
- 在
users.xml
文件中,将<password_sha256_hex>
标签的值设置为生成的哈希值。之前的<password>
标签需要注释掉<password_sha256_hex>15e2b0d3c33891ebb0f1ef609ec419420c20e320ce94c65fbc8c3312448eb225</password_sha256_hex>
3. 双重 SHA1 密码
- 使用 OpenSSL 生成密码的双重 SHA1 哈希。
echo -n 123456789 | openssl dgst -sha1 -binary | openssl dgst -sha1
- 在
users.xml
文件中,设置<password_double_sha1_hex>
标签的值为生成的哈希值。之前的<password>
标签需要注释掉<password_double_sha1_hex>cc67043c7bcff5eea5566bd9b1f3c74fd9a5cf5d</password_double_sha1_hex>
重启服务和测试登录
- 完成密码设置后,需要重启 ClickHouse 服务以应用更改。
systemctl restart clickhouse-server
- 测试登录以验证密码是否正确设置。
clickhouse-client --password
这些步骤提供了灵活的选择来设置 ClickHouse 用户密码,以满足不同安全需求。请确保在操作过程中妥善处理和保护密码信息,尤其是当使用明文密码时。如果您有任何疑问或需要进一步的帮助,请随时告诉我。