Clickhouse-disks
一个为 ClickHouse 磁盘提供类似文件系统操作的工具。它可以在交互式和非交互式模式下工作。
程序级选项
--config-file, -C-- ClickHouse 配置文件的路径,默认为/etc/clickhouse-server/config.xml。--save-logs-- 将调用命令的进度记录到/var/log/clickhouse-server/clickhouse-disks.log。--log-level-- 记录哪种类型的事件,默认为none。--disk-- 用于mkdir, move, read, write, remove命令的磁盘。默认为default。--query, -q-- 可以执行的单个查询,无需启动交互式模式--help, -h-- 打印所有选项和命令及其描述
延迟初始化
配置中可用的所有磁盘都会延迟初始化。这意味着只有在某个命令中使用某个磁盘时,才会初始化该磁盘对应的对象。这样做是为了使该工具更加健壮,并避免触碰在配置中描述但用户未使用的磁盘,这些磁盘在初始化期间可能会失败。但是,应该在 clickhouse-disks 启动时初始化一个磁盘。该磁盘通过命令行参数 --disk 指定(默认值为 default)。
默认磁盘
启动后,有两个未在配置中指定的磁盘可用作初始化。
-
local磁盘:此磁盘旨在模拟启动clickhouse-disks工具的本地文件系统。其初始路径是从启动clickhouse-disks的目录,并挂载到文件系统的根目录。 -
default磁盘:此磁盘挂载到配置中clickhouse/path参数指定的本地文件系统目录(默认值为/var/lib/clickhouse)。其初始路径设置为/。
Clickhouse-disks 状态
对于添加的每个磁盘,该工具都会存储当前目录(如通常的文件系统)。用户可以更改当前目录并在磁盘之间切换。
状态反映在提示符中:“disk_name:path_name”
命令
在这些文档文件中,所有必需的位置参数都称为 <parameter>,命名参数称为 [--parameter value]。所有位置参数都可以以相应的名称作为命名参数提及。
cd (change-dir, change_dir) [--disk disk] <path>将目录更改为磁盘disk(默认值为当前磁盘)上的路径path。不会切换磁盘。copy (cp) [--disk-from disk_1] [--disk-to disk_2] <path-from> <path-to>。递归地将数据从磁盘disk_1(默认值为当前磁盘(非交互式模式下的参数disk))上的path-from复制到磁盘disk_2(默认值为当前磁盘(非交互式模式下的参数disk))上的path-to。current_disk_with_path (current, current_disk, current_path)以格式打印当前状态:Disk: "current_disk" Path: "current path on current disk"help [<command>]打印关于命令command的帮助消息。如果未指定command,则打印关于所有命令的信息。move (mv) <path-from> <path-to>。在当前磁盘内将文件或目录从path-from移动到path-to。remove (rm, delete) <path>。在当前磁盘上递归删除path。link (ln) <path-from> <path-to>。在当前磁盘上从path-from创建到path-to的硬链接。list (ls) [--recursive] <path>列出当前磁盘上path上的文件。默认情况下不递归。list-disks (list_disks, ls-disks, ls_disks)。列出磁盘名称。mkdir [--recursive] <path>在当前磁盘上。创建目录。默认情况下不递归。read (r) <path-from> [--path-to path]从path-from读取文件到path(如果未提供,则输出到stdout)。switch-disk [--path path] <disk>切换到路径path上的磁盘disk(如果未指定path,则默认值为磁盘disk上的先前路径)。write (w) [--path-from path] <path-to>。将文件从path(如果未提供path,则从stdin,输入必须以 Ctrl+D 结束)写入到path-to。