如何解决clickhouse-backup 命令的身份验证
我有一个 clickhouse 实例正在运行,我在其中安装了 clickhouse-backup。我已经连接到它并且使用这样的自定义用户运行 clickhouse-client 没有问题:
clickhouse-client -u fred --password 12345
但是当我执行 clickhouse-backup tables
时,我得到
can't connect to clickhouse: code: 516,message: default: Authentication Failed: password is incorrect or there is no user with such name.
如何以自定义用户“fred”的身份运行命令 clickhouse-backup tables
?
解决方法
它需要在 config.yml 文件中定义这些凭据:
..
clickhouse:
username: fred # CLICKHOUSE_USERNAME
password: 12345 # CLICKHOUSE_PASSWORD
..
默认配置文件位于/etc/clickhouse-backup/config.yml。
要定义自定义位置,请在 --config 参数中传递它。
作为替代方法,可以通过环境变量传递所需的参数。考虑将 clickhouse-backup 作为 docker-container 运行:
# generate a backup plan
sudo docker run --rm -it --network host -v "/var/lib/clickhouse:/var/lib/clickhouse" \
-e CLICKHOUSE_FREEZE_BY_PART=true \
-e CLICKHOUSE_USERNAME=user \
-e CLICKHOUSE_PASSWORD=passw \
\
alexakulov/clickhouse-backup:latest create --tables="db.table1_local" "table1 [shard-01]"
# start a backup process
sudo docker run --rm -it --network host -v "/var/lib/clickhouse:/var/lib/clickhouse" \
-e CLICKHOUSE_USERNAME=user \
-e CLICKHOUSE_PASSWORD=passw \
-e REMOTE_STORAGE=gcs \
-e GCS_BUCKET=gcs-clickhouse-backup-bucket \
-e GCS_CREDENTIALS_JSON='_credentials_json_' \
\
alexakulov/clickhouse-backup:latest upload "table1 [shard-01]"
# remove the local copy of backup
sudo docker run --rm -it --network host -v "/var/lib/clickhouse:/var/lib/clickhouse" \
\
alexakulov/clickhouse-backup:latest delete local "table1 [shard-01]"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。