如何手动运行一致性检查?
如果您跳过 neo4j-backup 的一致性检查步骤,或想确认数据存储是否完整,可以对离线存储运行该工具。
$ java -cp 'lib/*:system/lib/*' org.neo4j.consistency.ConsistencyCheckTool /tmp/graph.db
在 Windows 环境下,语法大致如下:
$ java -cp "lib/*;system/lib/*" org.neo4j.consistency.ConsistencyCheckTool c:\tmp\graph.db
在上述每个示例中,将 /tmp/graph.db 或 c:\tmp\graph.db 替换为实际的 Neo 数据库路径。
若要调整检查以跳过索引(最耗时的修改),只需在 conf/neo4j.properties(2.x)或 conf/neo4j.conf(3.x)中添加以下行,并在命令行中将其传递给工具。
consistency_check_indexes=false
现在使用传入的配置文件运行命令。
$ java -cp 'lib/*:system/lib/*' org.neo4j.consistency.ConsistencyCheckTool -config conf/neo4j.properties /tmp/foo
还有其他配置选项,下面给出它们的 2.x 名称 / 3.x 名称:
consistency_check_property_owners / tools.consistency_checker.check_property_owners-
对属性所有权进行可选的额外检查。这可以检测到一种理论上的不一致情况,即同一属性可能被多个实体拥有。然而,此检查在时间和内存消耗上非常昂贵,默认会被跳过。
consistency_check_label_scan_store / tools.consistency_checker.check_label_scan_store-
对标签扫描存储进行检查。检查该存储的开销比检查本地存储要大,因此在超大型数据库中可能需要关闭此检查。
consistency_check_indexes / tools.consistency_checker.check_indexes-
对索引进行检查。索引检查比本地存储检查更耗时,因此在超大型数据库中可以考虑关闭此检查。
consistency_check_execution_order-
运行一致性检查时使用的存储交叉检查执行顺序。
consistency_check_report_file:不一致日志文件的文件名。如果未指定,则在存储目录下生成日志文件。
另请参阅 备份与一致性检查手册条目
此页面有帮助吗?