【发布时间】:2021-03-26 04:32:48
【问题描述】:
我通过 docker-compose 在容器中创建了 ClickHouse DB 的实例:
version: '3'
services:
ch:
image: yandex/clickhouse-server
restart: on-failure
volumes:
- '/mnt/c/DevTools/source/storm/clickhouse_setup/data/ch:/var/lib/clickhouse/'
- './ch_configs:/etc/clickhouse-server/'
ports:
- 9000:9000
- 8123:8123
ulimits:
nofile: 262144
client:
image: yandex/clickhouse-client
volumes:
- './client-config.xml:/etc/clickhouse-client/config.xml'
我可以访问它并找到我创建的数据库,但是当我运行时
INSERT INTO simple_people (id, first_name, last_name) VALUES(1,'david','lo')
我收到以下回复:
Query id: 46ef1af8-5728-425e-87f5-511f7e0e79d1
Received exception from server (version 20.12.3):
Code: 1000. DB::Exception: Received from ch:9000. DB::Exception: Access to file denied: insufficient permissions: /var/lib/clickhouse/data/registry/simple_people/tmp_insert_1_2_2_0.
1 rows in set. Elapsed: 0.068 sec.
如何获得 INSERT INTO 权限?
注意事项:
我运行没有问题:
SELECT * FROM simple_people
我在 WSL:Ubuntu-20.04
【问题讨论】:
-
您好,请不要张贴您的代码图片。您可以在代码块前后使用 3 个反引号将代码插入帖子中。
-
尝试为当前用户授予对包含数据的文件夹的写入权限:chmod -R u=rw ./data/ch。
-
@vladimir 感谢您的意见。我运行命令 chmod -R u=rw ./data/ch 没有问题,但它仍然不允许我访问该文件。
标签: docker docker-compose clickhouse