Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,13 @@ Starting from Neo4j 2025.01, seed from URI can also be used in combination with
[[neo4j-seed-providers]]
== Seed providers in Neo4j

The seed can either be a full backup, a differential backup (see <<cloud-seed-provider, `CloudSeedProvider`>>), or a dump from an existing database.
The seed can be a full backup, a differential backup (see <<cloud-seed-provider, `CloudSeedProvider`>>), or a dump from an existing database.
When using `CloudSeedProvider`, the URI can point also to a folder which contains a backup chain.
The sources of seeds are called _seed providers_.

Backups have a `.backup` extension, while the dump file can have whatever extension the user chooses.
For example, the backup file can be called `myBackup.backup`, while the dump can be called `myDump.dump` or also `myBackup.backup`, or any other name.

The mechanism is pluggable, allowing new sources of seeds to be supported (see link:https://www.neo4j.com/docs/java-reference/current/extending-neo4j/project-setup/#extending-neo4j-plugin-seed-provider[Java Reference -> Implement custom seed providers] for more information).

The product has built-in support for seed from a mounted file system (file), FTP server, HTTP/HTTPS server, Amazon S3, Google Cloud Storage, and Azure Cloud Storage.
Expand Down Expand Up @@ -114,6 +118,7 @@ include::partial$/aws-s3-overrides.adoc[]
include::partial$/aws-s3-credentials.adoc[]

. Create database from `myBackup.backup`.
This backup can be a full backup, a differential backup, or a dump file.
+
Using Cypher 5:
+
Expand All @@ -136,6 +141,7 @@ CREATE DATABASE foo OPTIONS { seedURI: 's3://myBucket/myBackup.backup' }
include::partial$/gcs-credentials.adoc[]

. Create database from `myBackup.backup`.
This backup can be a full backup, a differential backup, or a dump file.
+
Using Cypher 5:
+
Expand All @@ -158,6 +164,7 @@ CREATE DATABASE foo OPTIONS { seedURI: 'gs://myBucket/myBackup.backup' }
include::partial$/azb-credentials.adoc[]

. Create database from `myBackup.backup`.
This backup can be a full backup, a differential backup, or a dump file.
+
Using Cypher 5:
+
Expand Down Expand Up @@ -190,7 +197,7 @@ The `S3SeedProvider` supports:
[NOTE]
====
Neo4j comes bundled with necessary libraries for AWS S3 connectivity.
Therefore, if you use `S3SeedProvider`, `aws cli` is not required (as it instead is with `CloudSeedProvider`).
Therefore, if you use `S3SeedProvider`, `aws cli` is not required as it is for `CloudSeedProvider`.
====

The `S3SeedProvider` requires additional configuration.
Expand Down Expand Up @@ -236,31 +243,41 @@ Where `<accessKey>` and `<secretKey>` are provided by AWS.
| `file:`
| `FileSeedProvider`
| `file:/tmp/backup1.backup`
`file:/tmp/backup1.dump`

| `ftp:`
| `URLConnectionSeedProvider`
| `\ftp://myftp.com/backups/backup1.backup`
`\ftp://myftp.com/backups/backup1.dump`

| `http:`
| `URLConnectionSeedProvider`
| `\http://myhttp.com/backups/backup1.backup`
`\http://myhttp.com/backups/backup1.dump`

| `https:`
| `URLConnectionSeedProvider`
| `\https://myhttp.com/backups/backup1.backup`
`\https://myhttp.com/backups/backup1.dump`

| `s3:`
| `S3SeedProvider` label:deprecated[Deprecated in 5.26], +
`CloudSeedProvider`
| `s3://mybucket/backups/backup1.backup`
`s3://mybucket/backups/backup1.dump`
`s3://mybucket/backups/` (folder containing a backup chain, only used by `CloudSeedProvider`)

| `gs:`
| `CloudSeedProvider`
| `gs://mybucket/backups/backup1.backup`
`gs://mybucket/backups/backup1.dump`
`gs://mybucket/backups/` (folder containing a backup chain)

| `azb:`
| `CloudSeedProvider`
| `azb://mystorageaccount.blob/backupscontainer/backup1.backup`
`azb://mystorageaccount.blob/backupscontainer/backup1.dump`
`azb://mystorageaccount.blob/backupscontainer/` (folder containing a backup chain)
|===


Expand Down