迁移单个实例
本章描述了将单个实例从 Neo4j 3.5 迁移到 4.0 的必要步骤。
要从 3.5.latest 迁移到 4.0 之后的版本,必须首先将单个实例迁移到 4.0,然后升级到所需的版本。 |
先决条件
确保您已完成迁移清单上的所有任务。
准备迁移
-
验证您已关闭 Neo4j 数据库管理系统。您可以检查neo4j.log。
-
安装您要迁移到的Neo4j版本。有关如何安装您正在使用的发行版的更多信息,请参阅运维手册→安装。
-
将neo4j.conf文件替换为您在准备用于新安装的新neo4j.conf文件部分中准备的文件。
-
设置
dbms.allow_upgrade=true
以允许自动存储升级。 -
复制用于加密的所有文件,例如私钥、公钥证书以及受信任和吊销目录的内容(位于<neo4j-home>/certificates/中)。
如果您的旧安装已修改以
dbms.directories.*
或设置dbms.active_database
开头的配置,请验证新的neo4j.conf
文件是否已正确配置以查找这些目录。用户和角色从 3.5 到 4.0 的迁移是自动完成的。因此,您无需将data/dbms/目录及其内容移动到新安装中。3.5 中的文件将被解析,其内容将在 Neo4j 4.0 数据库管理系统的第一次启动时添加到
system
数据库中。 -
如果您使用的是自定义插件,请确保它们已更新并与新版本兼容,并将它们放在/plugins目录中。
迁移数据并启动服务器
在迁移数据之前,您必须将备份文件移动到 Neo4j 4.0 的/data目录。
如果您有dbms.directories.data指向<neo4j-home>之外的目录,则此步骤不适用。 |
-
通过从
<neo4j-home>
运行neo4j-admin load
命令将备份文件移动到新安装中必须使用此命令,因为不支持数据库的文件系统复制粘贴,并且可能会导致意外行为。如果您正在运行 Debian/RPM 发行版,则可以跳过此步骤。
bin/neo4j-admin load --from=$BACKUP_DESTINATION/<db_name>.dump –database=<db_name> --force
-
将备份就位后,通过启动 Neo4j 4.0 启动数据迁移
bin/neo4j start
或者
systemctl start neo4j
数据库迁移在启动期间进行。您的索引也会在启动期间自动迁移到最新的索引提供程序。但是,索引需要在迁移后填充。您的查询在填充索引时将无法使用索引,因此您可能会看到暂时的性能下降。如果您的查询完全依赖于某些索引,建议将索引填充作为迁移持续时间的一部分考虑在内。
neo4j.log文件包含有关迁移涉及多少步骤以及迁移进度如何的信息。索引填充在debug.log上跟踪。对于大型迁移,最好持续监控这些日志。
-
如果您使用的数据库名称与neo4j.conf中设置为默认数据库的名称不同,则需要激活该数据库才能使用它。您可以使用浏览器或 Cypher® Shell 中的
CREATE DATABASE
命令执行此操作CREATE DATABASE name
迁移后任务
-
升级完成后,打开neo4j.conf文件并设置
dbms.allow_upgrade=false
。 -
重新启动实例。
-
最好在迁移后立即进行完整备份。