Neo4j-Migrations:轻松管理模式更改

Neo4j-Migrations 是一套工具,旨在尽可能简化模式迁移。它为应用程序、命令行和构建工具提供了一种统一的方式来跟踪、管理和应用对数据库的更改。它在很大程度上受到 FlywayDB 的启发,因此大多数功能围绕 Cypher 脚本展开。Neo4j-Migrations 直接构建在官方 Neo4j-Java-Driver 之上,支持 Neo4j 3.5、Neo4j 4.1 到 4.4 以及 Neo4j 5,包括多数据库支持和模拟等企业功能。

所有提供的模块都具有功能等效性:API 中的命令反映在 CLI、Maven 以及 Spring Boot 集成中。

功能

  • 直接基于官方 Neo4j-Java-Driver (Bolt),无需 JDBC

  • 通过在整个堆栈中使用事务性函数,非常适合动态环境,例如 Neo4j Aura

  • 可以使用不同的数据库来存储迁移信息和应用实际迁移(将被管理的数据库与包含管理信息的数据库分离)

  • 支持模拟

  • 核心 Java API 具有保证的语义版本控制,可用于任何你喜欢的方 式

  • 提供一个 Spring Boot 启动器,该启动器连接到 Neo4j 的官方 Spring Boot 支持,因此只需提供迁移脚本即可

  • 提供一个 Maven 插件,用于在构建时运行迁移

  • 适用于 Linux、macOS 和 Windows 的原生 CLI 工具,无需 Java 即可通过 CLI 运行迁移

  • 可以通过 homebrew 包管理器安装适用于 macOS 的原生 CLI

  • Java API 允许使用 Java 编写非常自定义的迁移,在 Cypher 不足以满足特殊情况的情况下,可以使用官方驱动程序