Migrating from MongoDB
Before you begin this section of the migration process, go through the pre-migration process so as to ensure a successful migration from MongoDB to FerretDB:
This guide will help you migrate your data from MongoDB – locally or online – to FerretDB.
As an open-source MongoDB alternative, FerretDB is built to work with many MongoDB tools.
In that case, you can migrate your data using MongoDB native tools such as
Before you go forward with the migration, you need to have the following:
- MongoDB connection URI
- FerretDB connection URI
- MongoDB native tools
Backup your MongoDB data
To backup your MongoDB instance using
mongoexport, you'll need to set the connection string to your MongoDB instance (e.g.
"mongodb://127.0.0.1:27017") to run the following command:
mongodump command will create a dump of all the data in the instance, consisting of BSON files of all the collections.
Also, you can migrate a specific database (e.g.
--db=test) or collection (e.g.
--collection=supply) using their respective parameters after the
--uri connection string.
If you include the database in your connection string, there's no need to specify a database name for the backup or restore process.
mongoexport --uri="mongodb://<yourusername>:<yourpassword>@<host>:<port>" --db=<database-name> --collection=<collection-name> --out=<collection>.json
On the other hand,
mongoexport does not provide a direct way to export all the collections at once, like
Instead, you need to set the connection string to connect with your preferred database and then run the command together with the parameters for the collection (
--collection=myCollection) and the directory you want to export to (e.g.
Restore your data to FerretDB
To restore or import your backed-up data to FerretDB, set the connection string to your FerretDB instance and use
Run the following command in your terminal, from your
With this command, you can restore all the data in
dump into your FerretDB instance.
You can also specify the database and collection (
dump/<database>/<collection>) you want to restore from the
dump folder, according to your preferences.
To import your database using
mongoimport, run the command from the terminal directory where you exported your data:
mongoimport--uri="mongodb://<yourusername>:<yourpassword>@<host>:<port>/?authMechanism=PLAIN" --db=<database-name> --collection=<collection-name> --file=<collection>.json
The command will import the specified collection you exported from your MongoDB instance to FerretDB.