Available Neo4j Data Exports
Download Cypher export files based on your access level:
Local Neo4j Database Setup Guide
This guide provides step-by-step instructions for creating a fully-functional copy of the EMERGE Database on your local machine. The download link(s) above include the version(s) of the graph database to which you have access based on your current login status, with the most "complete" version listed first.
These setup instructions are compatible with Linux and MacOS operating systems; unfortunately they cannot be easily translated to Windows.
Installing and Managing Multiple Neo4j Tarball Versions on Linux and macOS
If you don't currently use Neo4j for anything else, then you only need one installation of Neo4j; i.e. you can just choose one version from the instructions below and ignore the others. However, in case it is useful, these instructions allow for the possibility of downloading, installing, and managing multiple Neo4j versions side by side using tarball distributions. This approach allows you to easily switch between different Neo4j versions and databases without system-wide installation conflicts.
Prerequisites
System Requirements
Java Requirements:
- Neo4j 5.x requires Java 17 or Java 21
- Neo4j 4.x requires Java 11
- Check your Java version:
java -version
Install Java (if needed):
- (instructions coming soon)
Downloading Neo4j Tarballs
Official Download Locations
Primary Source: Neo4j Deployment Center
Direct Download URLs:
Neo4j tarballs follow this URL pattern:
https://dist.neo4j.org/neo4j-{edition}-{version}-unix.tar.gz
Verifying Downloads
Always verify the integrity of downloaded files using SHA-256 checksums:
# Download checksum file
wget https://dist.neo4j.org/neo4j-community-5.25.0-unix.tar.gz.sha256
# Verify (Linux)
sha256sum -c neo4j-community-5.25.0-unix.tar.gz.sha256
# Verify (macOS)
shasum -a 256 -c neo4j-community-5.25.0-unix.tar.gz.sha256
Setting Up Multiple Versions
Recommended Directory Structure
Create a dedicated directory to store all your Neo4j installations:
# Create main Neo4j directory
mkdir -p ~/neo4j-instances
cd ~/neo4j-instances
Installing Multiple Versions
If you are only installing one instance of Neo4j, just choose one .tar.gz file from the 3 options below.
If you are installing multiple instances of Neo4j with the same version number (for instance, because you want multiple databases on your system but don't want to troubleshoot multiple Neo4j versions), then this is also possible, but you'll need to vary the directory names to ensure uniqueness. For example, if you already have an existing neo4j-community-4.4.35-unix directory and are creating a second one, then you should first rename the existing directory (e.g., to neo4j-community-4.4.35-unix_original) to avoid changing its contents when extracting the new instance.
Download and extract multiple versions:
# Download versions
wget https://dist.neo4j.org/neo4j-community-5.25.0-unix.tar.gz
wget https://dist.neo4j.org/neo4j-community-5.18.0-unix.tar.gz
wget https://dist.neo4j.org/neo4j-community-4.4.35-unix.tar.gz
# Extract each version
tar -xzf neo4j-community-5.25.0-unix.tar.gz
tar -xzf neo4j-community-5.18.0-unix.tar.gz
tar -xzf neo4j-community-4.4.35-unix.tar.gz
# Remove tarballs to save space
rm *.tar.gz
Your directory structure should now look like:
~/neo4j-instances/
├── neo4j-community-5.25.0/
├── neo4j-community-5.18.0/
└── neo4j-community-4.4.35/
Directory Structure
Each Neo4j installation contains the following key directories:
neo4j-community-{version}/
├── bin/ # Executables (neo4j, cypher-shell, neo4j-admin)
├── certificates/ # SSL/TLS certificates
├── conf/ # Configuration files (neo4j.conf)
├── data/ # Database data (default location)
├── import/ # Default import directory for CSV/files
├── lib/ # Java libraries
├── licenses/ # License files
├── logs/ # Log files
└── plugins/ # Plugin JARs (APOC, GDS, etc.)
Setting Initial Password
Before first use, set the initial password:
# For Neo4j 5.x
cd ~/neo4j-instances/neo4j-community-5.25.0
bin/neo4j-admin dbms set-initial-password your_password
# For Neo4j 4.x
cd ~/neo4j-instances/neo4j-community-4.4.35
bin/neo4j-admin set-initial-password your_password
Starting and Stopping Instances
Console Mode (Foreground)
Start Neo4j in console mode to see output directly:
cd ~/neo4j-instances/neo4j-community-5.25.0
bin/neo4j console
Stop with Ctrl+C.
Background Mode
# Start
cd ~/neo4j-instances/neo4j-community-5.25.0
bin/neo4j start
# Check status
bin/neo4j status
# Stop
bin/neo4j stop
# Restart
bin/neo4j restart
Switching Between Versions
Simply specify the full path to the version you want:
# Use version 5.25.0
~/neo4j-instances/neo4j-community-5.25.0/bin/neo4j start
# Use version 5.18.0
~/neo4j-instances/neo4j-community-5.18.0/bin/neo4j start
Importing Data with :source
The :source command in Cypher Shell allows you to execute Cypher statements from a file.
Prerequisites
- Your Neo4j instance must be running
- You need a
.cypherfile containing valid Cypher statements - Each statement in the file should end with a semicolon (
;)
The downloadable file at the top of this page fulfills requirements 2 & 3.
Using :source in Cypher Shell
Data can be imported either interactively (showing each step), or in the background. Note that due to the large size of the EMERGE Database, this import will likely take awhile.
Method 1: Interactive Shell with :source
# Start cypher-shell (connect to running instance)
cd ~/neo4j-instances/neo4j-community-5.25.0
bin/cypher-shell -a bolt://localhost:7687 -u neo4j -p your_password
# Once in the shell, use :source
neo4j@neo4j> :source /path/to/data.cypher
Example:
$ bin/cypher-shell -a bolt://localhost:7687 -u neo4j -p mypassword
Connected to Neo4j at bolt://localhost:7687 as user neo4j.
Type :help for a list of available commands or :exit to exit the shell.
neo4j@neo4j> :source ~/neo4j-data/imports/data.cypher
0 rows
Added 1 constraints
0 rows
Added 1 constraints
0 rows
Added 1 nodes, Set 3 properties, Added 1 labels
...
Method 2: Non-Interactive with File Argument
You can also pipe the file directly without entering interactive mode:
cat data.cypher | bin/cypher-shell -a bolt://localhost:7687 -u neo4j -p your_password
Or using input redirection:
bin/cypher-shell -a bolt://localhost:7687 -u neo4j -p your_password < data.cypher
Additional Resources
- Neo4j Documentation: https://neo4j.com/docs/
- Neo4j Operations Manual: https://neo4j.com/docs/operations-manual/current/
- Cypher Manual: https://neo4j.com/docs/cypher-manual/current/
- Neo4j Community Forum: https://community.neo4j.com/
- APOC Documentation: https://neo4j.com/docs/apoc/current/
- Information on node labels and properties specific to the EMERGE-DB:
Summary
This setup allows you to:
- Create a local copy of the EMERGE Database
- Test applications against different Neo4j versions
- Migrate databases between versions safely
- Run different projects with version-specific requirements
- Experiment without affecting production data