java - 如何将 RocksDB 数据移动到新目录?
问题描述
我正在尝试将 RocksDB 数据备份到新目录。
目前我所有的数据都在/mnt/my_rocksdb_dir
我正在尝试将数据移动到/mnt/my_rocksdb_dir2
然而,简单地将目录复制到一个新目录是行不通的,因为在读取旧文件时,rocksdb 本身会遇到异常
/mnt/my_rocksdb_dir2/LOCK: Permission denied
at org.rocksdb.RocksDB.open(Native Method)
新的LOCK文件/mnt/my_rocksdb_dir2/LOCK
有root权限,旧的有用户权限
备份rocksdb数据的正确方法是什么?
解决方案
rockdb 有实用程序(实用程序/backupable_db.h)。您可以使用 c/c++ 编程来备份rockdb。
检查这个例子/教程。您可以简单地使用示例中的模板并设置备份位置。
推荐阅读
- apache-spark - Spark的最后几个任务挂起并且进展非常缓慢
- c - 按下修饰键时获取修改后的键码(字符)
- typescript - 使用扩展语法应用更新时如何处理空/未定义属性?
- webpack - 为什么迁移到 Webpack 5 后 Karma 测试会失败?
- vba - 如何从动态起点填写选择?
- tomcat - 未找到允许使用 OpenSSL 的 Apache Tomcat Native 库
- node.js - 将 JSON 从前端发送到后端的正确方法是什么?
- javascript - 在 D3.js 中透视数据
- java - 使用 Mapstruct 和 Lambda Java 8 修复无限循环
- sql - 如何计算postgis中的相邻多边形