In this tutorial, we’ll show you the quickest way to import an entire SQL database to MongoDB using Studio 3T and its new SQL Migration feature.
Want to watch instead? Skip to the video tutorials.
What you need
- Sign up for Studio 3T’s free 30-day trial to access SQL Migration.
- Get your SQL database connection details ready. We’ll use MySQL in this tutorial but SQL Server, PostgreSQL, and Oracle are also supported.
To illustrate a simple SQL database import, we’ll use the publicly available world database (download Zip, TGZ) which contains three tables:
We’ll import each SQL table to a MongoDB collection, which means we should have three new collections in our target database.
1 – Open SQL Migration
Click on SQL Migration > SQL to MongoDB Migration in the toolbar.
2 – Choose the source SQL connection
Click on Click here to connect to a server to open SQL Connection Manager.
Open a saved connection
If you’ve already saved a connection, choose your source SQL connection from the list.
Create a new connection
To create a new SQL connection, click on New Connection, enter the connection details under the Server and SSH tabs, and click Save.
3 – Choose your target MongoDB connection
Like Step 2, click on Click here to connect to a server to choose an existing MongoDB connection or to create a new one.
Here we’ll choose S3T as our target connection. This is where the three collections will be created.
4 – Choose SQL source tables
Studio 3T calls them “import units”, but an import unit simply means the SQL source table.
Click on Add import units.
We’ll choose the three world tables –
countrylanguage – to create a collection for each. By default, Studio 3T will map each table to a collection with the same name.
Click OK. All three tables should appear in the Overview.
5 – Run the SQL import
It’s time to run the SQL import. Click on Run Migration.
Track your import in the Operations window on the bottom-left hand side.
Double-check that the world database was imported in the Connection Tree (top-left).
And finally, double-click on a collection (like
country, highlighted above) to check if the data looks correct (and it does!)
The world database is quite simple – requiring no one-to-one or one-to-many table relationships – so the default mappings are sufficient for this import.
Note, however, that SQL Migration lets you fully control these mappings. Read our tutorial on how to merge multiple SQL tables into one MongoDB collection to find out how you can use SQL Migration to do more complex imports.