我可以使用帮助二进制转储文件恢复数据库 clickhouse 吗?

Posted

技术标签:

【中文标题】我可以使用帮助二进制转储文件恢复数据库 clickhouse 吗?【英文标题】:Can I restore database clickhouse with help binary dump file? 【发布时间】:2021-04-06 09:08:27 【问题描述】:

我有带有 clickhouse 数据库的 docker 容器。我有我们生产的备份。但是我尝试了很多恢复的情况。当我使用命令(在容器中):clickhouse-client --format Raw --file 21_02_04_db.backup 时,我收到错误Bad arguments: unrecognised option '--file'。好的,我尝试不使用此选项:clickhouse-client --format Raw < 21_02_04_db.backup ,但出现错误:

Code: 62. DB::Exception: Syntax error: failed at position 1 ('') (line 1, col 1): �TimDateTime�#�]��]�k�]u �]0&�] 9�]�-�]��]�I�]U��]���]yy�]���]�\�]�\�]��]B�]�j�]v)�]�d�]J��]�F�]�]�]��]t%�]t%�]���]��]F?�]�B�]��]W3�]��]E��]P��]a�. Unrecognized token: '' I use other backups but in many cases I get similar error. Maybe someone tried restore backup clickhouse with help binary data? I try many cases but I didn't search solution.

【问题讨论】:

你是如何备份数据库的——使用clickhouse-backup-tool? 【参考方案1】:

看起来像原生格式

应该是这样的

clickhouse-client -q 'insert into mytable format Native' < 21_02_04_db.backup

【讨论】:

好的,但是如果我备份了整个数据库,如果我将插入某个表,那么我将只得到一张表和该表的数据?或者我的转储会将所有数据填充到一张表中? Clickhouse 没有整个数据库的备份。

以上是关于我可以使用帮助二进制转储文件恢复数据库 clickhouse 吗?的主要内容,如果未能解决你的问题,请参考以下文章

在核心转储文件上使用 gdb 获取变量的值

如何从 mysqldump 恢复转储文件?

如何使用 kubernetes 从 mysqldump 恢复转储文件?

Oracle 11g 数据泵技术详解(expdp impdp)

将sql转储恢复到RDS的最快方法

恢复 sql 转储文件时得到 errno 150