Upgrade Neo4j DB from 2.1.4 to Latest Neo4j Community Edition

We would like upgrade our application developed using Neo4j DB 2.1.4 to Latest Neo4j Community Edition.

Based on below articles

Supported upgrade and migration paths in 4.x - Upgrade and Migration Guide
Long upgrade path 2.1.x -> 3.5 - #3 by ryan.boyd

Suggested upgrade path : 2.1.4 -> 2.1.8-> 2.3.12 -> 3.3.9 -> 3.5.5->3.5.latest→ 4.0.latest → 4.1.latest → 4.2.latest**

But the challege we are facing is the older versions of neo4j installers are no longer available.


One possible way to upgrade, would be to take a backup/dump of the database from the current version of your Neo4j, save it. Then set up the latest version of Neo4j as a fresh database and import the data back into the db on the latest version.

Since 2.1.4 is a very old version and has a lot of upgrades happened since then, not sure if there is any direct way to upgrade as a lot of background structure of Neo4j architecture and working has also changed between 2.1.4 and latest 4.x.


I dont know if the backup approach would even work

Neo4j 2.1.4 is 7 yrs old Neo4j 2.1.4 - Neo4j Graph Data Platform.

In that case, maybe the possible way to upgrade would be to actually export the data into some form like csv, etc. and then set up the latest neo4j database and then import the data from the files created.

This definitely is not a direct way of upgrading, but considering such a old version of neo4j needs to be upgraded, it might be the safest solution in hand. It would just be a one time trade-off, as in this way the application would be using the latest neo4j and then subsequent upgrades can be done through normal process from time to time.


Do you have the graph.db file from your Nedo4j 2.1.4 version?

Not sure if this is a solution you are looking for but can bring the graph to the new installation. If you have APOC installed on the older version, then run the following command in your browser. The file will be exported to /import folder
CALL apoc.export.cypher.all("all.cypher")

Install the new Neo4j version and APOC. Create a new local DBMS, then run the following command in browser.
Call apoc.cypher.runFile("all.cypher")

@newkid APOC was not available for Neo4j 2.x releases