clickhouse sha256 函数

MYSQL中的sha256函数返回64位字符串。
mysql> select sha2('a',256);
+------------------------------------------------------------------+
| sha2('a',256)                                                           |
+------------------------------------------------------------------+
| ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb |
+------------------------------------------------------------------+

clickhouse中SHA256函数默认返回的是个32位的字符串,与MYSQL中的sha256函数返回结果并不相同。
SELECT
    length(SHA256('a')) AS len,
    SHA256('a') AS hex_str;
┌─len─┬─sha256_str──┐
│  32     │ ʗ1M|Nr          │
└────┴──────────┘


如果想得到与MYSQL中的sha256函数相同的结果,需要做个转换。
SELECT lower(hex(SHA256('a'))) AS sha256_str;
┌─sha256_str───────────────────────────────────────────────────────┐
│ ca978112ca1bbdcafac231b39a23dc4da786eff8147c4e72b9807785afee48bb                                      │
└───────────────────────────────────────────────────────────────┘

### 查看或管理 ClickHouse 的密码设置 #### 配置文件位置 ClickHouse 中与用户认证有关的信息存储在 `/etc/clickhouse-server/users.xml` 文件中。此文件包含了所有用户的定义及其权限设定[^1]。 #### 密码配置方式 对于 `default` 用户以及其他自定义创建的账户,可以采用两种方式进行密码保护: - **明文形式**:直接输入未加密的文字作为密码。 - **SHA256 哈希值**:通过计算 SHA256 散列函数得到固定长度字符串表示的哈希值来代替实际密码[^3]。 #### 修改现有用户的密码 为了更改某个特定用户的密码,可以通过编辑上述提到的 XML 文件实现。需要注意的是,在修改完成后应当重启 ClickHouse 服务使新参数生效。如果是在 Docker 容器内运行,则需先进入容器内部再执行相应命令[^4]: ```bash sudo docker exec -it ck-server bash ``` 之后打开并编辑 `/etc/clickhouse-server/users.xml` 来更新所需字段的内容。 #### 启用远程连接时的安全措施 当允许来自其他主机的访问请求时,除了调整本地配置外还需要确保防火墙规则适当开放端口,并且建议启用网络层面上的身份验证机制以增强安全性。这通常涉及到对 `/etc/clickhouse-server/config.xml` 的改动[^2]。 #### 使用 SQL 命令行工具操作 另外还可以利用官方提供的客户端程序来进行更便捷的操作而不必手动改写配置文档。例如添加新的带密码的用户账号可通过如下指令完成: ```sql CREATE USER 'newuser' IDENTIFIED WITH sha256_password BY 'yourpassword'; GRANT ALL ON *.* TO 'newuser'; ``` 以上语句会基于给定的名字建立一个新的具有指定散列算法加密后的密码的新用户,并赋予其全面的数据表级权限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值