为什么neo4j-admin数据库dump命令总是报参数错误?

问题描述 投票:0回答:2
Neo4j Version: 5.10
Community Edition
Java Version: 17.0.8

我已经阅读了有关 Neo4j 的

dump
命令 备份离线数据库 - 操作手册 的文档。我按照文档的说明使用它,但它不起作用。没有例子所以我不知道如何纠正它。

目的

我想将名为

neo4j
的数据库转储到本地目录
D:\neo4j_library_5.10\

尝试

我已尝试了以下所有命令,但没有一个是正确的。

neo4j-admin database dump --verbose --to-path=D:\neo4j_library_5.10\ database=neo4j

neo4j-admin neo4j dump --verbose --to-path=D:\neo4j_library_5.10\

neo4j-admin database dump --verbose --to-path=D:\neo4j_library_5.10\ --database=neo4j

neo4j-admin database dump --verbose --to-path=D:\neo4j_library_5.10\ neo4j

它总是告诉我:

Missing required parameter: '<database>'

Dump a database into a single-file archive.

有人能给我一个正确的例子吗?


更新尝试

然后我尝试了这个命令:

neo4j-admin database dump neo4j --verbose --to-path=D:\neo4j_library_5.10\

错误信息显示:

Executing command line: D:\jdk-17.0.8\bin\java.exe -cp D:\neo4j\plugins\*;D:\neo4j\conf\*;D:\neo4j\lib\* -XX:+UseParallelGC -XX:-OmitStackTraceInFastThrow -XX:+UnlockExperimentalVMOptions -XX:+TrustFinalNonStaticFields -XX:+DisableExplicitGC -Djdk.nio.maxCachedBufferSize=1024 -Dio.netty.tryReflectionSetAccessible=true -XX:+ExitOnOutOfMemoryError -Djdk.tls.ephemeralDHKeySize=2048 -XX:FlightRecorderOptions=stackdepth=256 -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMED -Dlog4j2.disable.jmx=true -Dfile.encoding=UTF-8 org.neo4j.cli.AdminTool database dump neo4j --to-path=D:\neo4j_library_5.10"  --verbose
Unmatched argument at index 4: ' --verbose'

Dump a database into a single-file archive.

然后我尝试使用:

neo4j-admin database dump neo4j --to-path=D:\neo4j_library_5.10\

错误信息显示:

Unmatched argument at index 4: ''

Dump a database into a single-file archive.

最终更新:

我已经弄清楚了。我的解决方案在下面的答案中。

powershell shell command-line neo4j neo4jclient
2个回答
1
投票

数据库名称需要放在

dump
命令之后,然后是所有选项。 所以你的例子是:

neo4j-admin database dump neo4j --verbose --to-path=D:\neo4j_library_5.10


1
投票

非常感谢用户jenny的回答!抱歉,我没有足够的声誉来给你投票。

dump 命令后面需要加上数据库名称,然后是所有选项。所以你的例子是:

neo4j-admin database dump neo4j --verbose --to-path=D:\neo4j_library_5.10

根据答案,我尝试更改命令中的斜线方向,并且成功了!

这是最终命令:

neo4j-admin database dump neo4j --verbose --to-path=D:/neo4j_library_5.10

即使你在 Windows 系统中使用 Neo4j 的命令,你也需要像在 Linux 中那样在 路径参数 中使用斜杠(例如,

/var/bin/
),即使用 斜杠
/
而不是 反斜杠
\
.

例如, 使用

F:/test_directory/test_subdirectory/
代替
F:\test_directory\test_subdirectory\

© www.soinside.com 2019 - 2024. All rights reserved.