Backup whole graph with apoc export procedure

I want to periodically backup my whole graph but I'm not on enterprise edition.
I saw that neo4j-admin has the dump command which requires the database to stop. That's not really useful in my case because I need multiple backups a day and the application that is connecting to the db can't be unavailable every 4 hours.
I stumbled across the apoc export procedure and was wondering if this is bad practice for very large graphs? If I have let's say 1 million nodes or more, can this procedure cause performance problems? Does the graph get too large to be exported to a cypher script at some point?

Hi Timo,

Have a few smaller projects running with community as well and I setup a script which stops the database, does a rsync of /var/lib/neo4j/data/databases/graph.db to another machine and restarts the server.

That worked for me, doing a single backup a day.

Doing the Cypher export via APOC might be hairy with the number of nodes you specifiy.

You might want to consider to apply as a startup and get a free enterprise running. I can confirm that doing backups on the enterprise version is a lot easier ;-)

1 Like