Neo4j community version Upgrade testing

Hi Team,
We are testing neo4j community version upgrade (2025.04 to 5.26.7).
We followed below process, please let me know any changes needed.

  1. stop neo4j DB service.
  2. Copy neo4j-home/data/database to backup/data
  3. Copy neo4j-home/conf to backup/conf
  4. Copy neo4j-home/transactions/ to backup/transactions

Download and untar new version 5.26.7

Replace above directories(database, conf, transactons) in the new version from the old version.

  1. Start the neo4j service from new version directory.
  • We tried this process but it failed to start and log shows this Error.
    Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.dbms.database.DefaultSystemGraphInitializer@79ab97fd' was successfully initialized, but failed to start. Please see the attached cause exception "Mismatching store id. Store StoreId: StoreId{creationTime=1749818829520, random=-2085802056066353369, storageEngineName='record', formatName='aligned', majorVersion=1, minorVersion=1}. Transaction log StoreId: StoreId{creationTime=1750419284330, random=-7152617303489487328, storageEngineName='record', formatName='aligned', majorVersion=1, minorVersion=1}".

025-06-20 11:47:51.649+0000 ERROR Failed to start Neo4j on localhost:7474.
java.lang.RuntimeException: Error starting Neo4j database server at /opt/neo4j-community-5.26.7/data/databases
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:288) ~[neo4j-5.26.7.jar:5.26.7]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:223) ~[neo4j-5.26.7.jar:5.26.7]
at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:38) ~[neo4j-5.26.7.jar:5.26.7]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:185) [neo4j-5.26.7.jar:5.26.7]
at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:100) [neo4j-5.26.7.jar:5.26.7]
at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:30) [neo4j-5.26.7.jar:5.26.7]
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.dbms.database.DefaultSystemGraphInitializer@79ab97fd' was successfully initialized, but failed to start. Please see the attached cause exception "Mismatching store id. Store StoreId: StoreId{creationTime=1749818829520, random=-2085802056066353369, storageEngineName='record', formatName='aligned', majorVersion=1, minorVersion=1}. Transaction log StoreId: StoreId{creationTime=1750419284330, random=-7152617303489487328, storageEngineName='record', formatName='aligned', majorVersion=1, minorVersion=1}".
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:364) ~[neo4j-common-5.26.7.jar:5.26.7]
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:91) ~[neo4j-common-5.26.7.jar:5.26.7]
at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:279) ~[neo4j-5.26.7.jar:5.26.7]
... 5 more

I don't think file copy does work ?

What I do on upgrades (but I am currently using Docker):

  1. CALL apoc.export.cypher.all("database.cypher", {format: "cypher-shell"});
  2. copy database.cypher generated (unless you have a mounted external directory)
  3. upgrade or just create a new container
  4. In my case i use the parameters in Docker: NEO4J_PLUGINS=[“apoc", “apoc-extended”, ”bloom”, ”genai”, ”n10s", "graph-data-science"]
  5. put the file back in /import in the target container
  6. then from the shell inside docker run cypher-shell -u user -p password -f import/database.cypher

Thanks Josh, I don't full steps on Upgrade using Tar file in the neo4j Documentation.
Below steps are not very clear.

So you have an enterprise license?

No We are using community version 5.26.7.
For upgrade POS we are testing with 5.12 to 5.26.

The link you sent looks like Enterprise ... I would rather follow the cleaner backup-import

I missed in my steps that you need to remove "n10s" at the moment doesn't work and before you run everything create an apoc.conf:

apoc.export.file.enabled=true

and restart the server before the export/etc