从独立部署迁移到集群
可以将单 system
数据库的独立部署迁移到多 system
主库的集群。实质上,这是通过从独立服务器转储 system
数据库并将其加载到将组成集群的其他服务器中来完成的。以下示例展示了如何从具有单个 system
主库的独立服务器迁移到具有三个 system
主库的集群。
另一种具有单个 |
system
数据库迁移到具有三个 system
主库的集群在此示例中,一个名为 server01
的独立服务器正在运行,并将添加另外两个服务器 server02
和 server03
以组成集群。这两个附加服务器已根据配置三服务器集群进行配置。这两个新服务器应尚未启动。所有三个服务器上都已安装 Neo4j 企业版。
首先停止独立服务器。停止后,编辑neo4j.conf 文件以包含其自身以及将组成集群的服务器的发现端点。
以下示例使用 dbms.cluster.discovery.resolver_type=LIST
。
server.default_listen_address=0.0.0.0
server.default_advertised_address=server01.example.com
dbms.cluster.endpoints=server01.example.com:6000,server02.example.com:6000,server03.example.com:6000
initial.dbms.default_primaries_count=3
(neo4j.conf 文件在所有三个服务器上除了 server.default_advertised_address
外都相同。请参阅配置三服务器集群了解更多信息。)
在 server01
(独立服务器)上,使用 neo4j-admin database dump
命令转储 system
数据库。
bin/neo4j-admin database dump system --to-path=/full/path/to/dumps/
有关转储命令的更多信息,请参阅备份离线数据库。
使用 neo4j-admin database load
命令将 server01
上的 system
数据库转储加载到 server02
和 server03
。
bin/neo4j-admin database load --from-path=/full-path/data/dumps system
有关加载命令的更多信息,请参阅恢复数据库转储。
在 server02
和 server03
上加载 system
数据库后,启动所有服务器。新添加的服务器应处于 Free
状态(server02
和 server03
),这可以使用 SHOW SERVERS
进行验证。
SHOW SERVERS;
+-----------------------------------------------------------------------------------------------------------+ | name | address | state | health | hosting | +-----------------------------------------------------------------------------------------------------------+ | "d6fbe54b-0c6a-4959-9bcb-dcbbe80262a4" | "server01:7687" | "Enabled" | "Available" | ["system", "neo4j"] | | "e56b49ea-243f-11ed-861d-0242ac120002" | "server02:7687" | "Free" | "Available" | ["system"] | | "73e9a990-0a97-4a09-91e9-622bf0b239a4" | "server03:7687" | "Free" | "Available" | ["system"] | +-----------------------------------------------------------------------------------------------------------+
在 server01
(之前为独立服务器)上,使用 SHOW DATABASES
验证所有用户数据库是否仍在运行。
最后一步是使用 ENABLE SERVER
启用处于 Free
状态的服务器(有关服务器状态的更多信息,请参阅管理集群中的服务器)。
启用所有服务器后,如果需要,可以使用ALTER DATABASE
扩展用户数据库。