# dbForge Studio

{% hint style="info" %}
dbForge Studio is a proprietary third-party tool, not included with MariaDB Server. Content contributed by devart.
{% endhint %}

Without a doubt, you want your backup/restore and export/import operations to be fast, easy, and automated wherever possible. You can have it all that way with [dbForge Studio for MySQL](https://www.devart.com/dbforge/mysql/studio/). As the name implies, it is an IDE for MySQL development, management, and administration, yet it works just as perfectly as a [MariaDB GUI client](https://www.devart.com/dbforge/mysql/studio/mariadb-gui-client.html). Now, let's see how it tackles routine database backups.

## Create a MariaDB backup

1. On the **Database** menu, go to **Backup and Restore**, and click **Backup Database** to open **Database Backup Wizard**.
2. On the **General** page, specify the required connection and database, the path for the backup file to be saved to, and the output file name in the respective fields. Optionally, you can append a timestamp to the file name, enable the auto-deletion of old files, and compress your backup into an archive. After you set it all up, click **Next**.

![b1](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-5ddc9c4297ac0500d6dc328d4738c53bcf9d4c83%2Fb1.png?alt=media)

3. On the **Backup content** page, select the content for your backup and click **Next**.

![b2](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-760b88d8234707326abec83809e83083f79f1829%2Fb2.png?alt=media)

4. On the **Options** page, configure your detailed backup options—there are quite a few of those to match your requirements most precisely. Then click **Next**.

![b3](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-250e887f15ee28807810fe7412978af7cc0637a1%2Fb3.png?alt=media)

5. On the **Errors handling** page, configure the **Errors handling** and **Log settings** options. Afterwards, click **Backup** to run the backup process.

Note that you have two more options here: you can select **Save Project** to save your current backup project with all the settings—or you can select **Save Command Line** to save a backup script that you can execute from the command line whenever you need.

![b4](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-6e211ff9c195c5791fecddec3187bc17e20d8118%2Fb4.png?alt=media)

6. After you click **Backup**, wait for the backup process to be completed.

Note that you don't have to go through every wizard page to click **Backup**. You can do it whenever you've finished configuring your settings.

![b5](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-e5db664a40bab4148c8fbf4b6cbc7b04d13d4d30%2Fb5.png?alt=media)

7. Finally, confirm the successful completion by clicking **Finish**.

![b6](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-8fdde8a224a48a47855f4fec6956464eda49f8a9%2Fb6.png?alt=media)

As you can see, it's very easy. Furthermore, you can schedule to run regular backups using **Action > Create Basic Task** in **Windows Task Scheduler**.

## Restore a MariaDB backup

This is an even faster task, done in half as many steps.

1. On the **Database** menu, go to \***Backup and Restore**, and click **Restore Database** to open the **Database Restore Wizard**.
2. On the **Database Script File** page, specify the required connection and database, as well as the path to the previously saved backup file.

![r1](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-89a72baa6171a5d9cd19501182737eb7c7a9a736%2Fr1.png?alt=media)

3. After that, click **Restore**, and let the Studio do the rest for you.

And when it's done, click **Finish**, and there you have it.

![r2](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-38a13700b3e8f59164c2e3d5d537b8c529763d59%2Fr2.png?alt=media)

You can learn more about this functionality on the dedicated [backup/restore page](https://www.devart.com/dbforge/mysql/studio/mysql-backup.html). Please note: while the page focuses on MySQL databases, everything that's described there is just as perfectly applicable to MariaDB from the same Studio with the same workflow.

## Export data from MariaDB

With dbForge Studio, you can export data to 14 most popular formats: HTML, TXT, XLS, XLSX, MDB, RTF, PDF, JSON, XML, CSV, OBSC, DBF, SQL, and Google Sheets. You can do it with an easy-to-follow wizard that guides you through the entire process and delivers quite a few customization options.

Let's see how it works. And before we start, note that different formats may have slightly different wizard pages. In our walkthrough, we'll take the HTML format as an example.

1. To open the export wizard, on the **Database** menu, click **Export Data**.
2. On the **Export format** page, pick the required format and click **Next**.

![e1](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-acedb2e1ff178930816ec27a7587a8c1848f9136%2Fe1.png?alt=media)

3. On the **Source** page, select the required connection, database, as well as tables and views to be exported. Then click **Next**.

![e2](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-8c6b346bd17db24db039fbe541c173f478490ed1%2Fe2.png?alt=media)

4. On the **Output settings** page, specify the path for the output, select to export data into a single or several separate files, and configure a few other settings, such as timestamps and compression. Then click **Next**.

![e3](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-55a90518730da7eff40e8b972c6553902013c2a2%2Fe3.png?alt=media)

5. On the **Options** page, configure and preview table grid options for exported data. Click **Next**.

![e4](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-715bfdef07f828cfd60c9ea72c7fd188427fd8b1%2Fe4.png?alt=media)

6. On the **Data formats** page, you have two tabs. On the **Columns** tab, you can check the list of columns to be exported.

![e5](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-cdf2e6d3224bfcc53eeb23d60744948e0994d77b%2Fe5.png?alt=media)

Then, on the **Formats** tab, you can adjust the default format settings for Date, Time, Date Time, Currency, Float, Integer, Boolean, Null String, as well as select the required binary encoding.

![e6](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-be6a45b4fc070f9d467cb002340f7d983b09e999%2Fe6.png?alt=media)

Once you make sure everything is correct, click **Next**.

7. On the **Exported rows** page, select to export all rows or define a certain range of rows, and then click *Next*\*.\*\*

![e7](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-c45fdbb3d1d583ff2772168a29ce78e7e331883c%2Fe7.png?alt=media)

8. On the **Errors handling** page, configure the errors handling behavior and select to keep a log file, if necessary.

![e8](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-9f8054242f38e19b8a9a9c25a77b8ee42a72f1fc%2Fe8.png?alt=media)

But before you click **Export**, note that you can save templates with your settings for recurring export operations. To do that, click **Save** in the lower left corner of the wizard, specify a name and a destination for the template file to be saved to, and then click **Save**.

![e9](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-88e1cfd42a5b397afb36fda801929600f3102846%2Fe9.png?alt=media)

Also note that you don't have to go through every wizard page to click **Export**. You can do it whenever you've finished configuring your settings.

9. Finally, after you click **Export**, watch the progress and click **Finish** upon completion.

![e10](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-3c0afcb063f2fab8c61c5d0e370ef569f8b79e12%2Fe10.png?alt=media)

Done! Now, if you want, you can open the folder with the output file right away.

## Import data into MariaDB

dbForge Studio supports 10 data formats for import, including TXT, XLS, XLSX, MDB, XML, JSON, CSV, ODBC, DBF, and Google Sheets. Just like with export, you have a helpful wizard at hand, whose pages may have differences, depending on the format. And let's pick a different format this time, say, the Microsoft Excel format (XLS).

1. To open the wizard, on the **Database** menu, click **Import Data**.
2. On the **Source file** page, choose the required format, select the file to import data from, and click **Next**.

![i1](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-06257171eb2ca257f3a93c72aee8486aaa621cf2%2Fi1.png?alt=media)

3. On the **Destination** page, select the target connection and database. Then you can select to import data either to a new table or to an existing table. Click **Next**.

![i2](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-9f2baeec9fb5d4c027ec4f6a738068b562e8dc95%2Fi2.png?alt=media)

4. On the **Options** page, configure and preview table grid options for imported data. Click **Next**.

![i3](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-cd45bfc60535caf505378e81941228244468982d%2Fi3.png?alt=media)

5. On the **Data formats** page, you have two tabs. The first tab is called **Common Formats**, where you can specify the required formats for null strings, thousand and decimal separators, boolean variables, date and time.

![i4](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-5383cbfce24860e8af6d18e0ae1db242dabb7cc9%2Fi4.png?alt=media)

The second tab is called **Column Settings**, where you can configure format settings for separate columns.

![i5](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-8356606967d546826a4b783208b48d288ee113b1%2Fi5.png?alt=media)

Once you make sure everything is correct, click **Next**.

6. On the **Mapping** page, you can map the source columns to the target ones and preview the results. If you're importing data into a new table, the Studio will automatically create and map all the columns, so you will only have to make adjustments if you wish. Then click **Next**.

![i6](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-292070d4793acf5b7b25814f28497611111527c3%2Fi6.png?alt=media)

7. On the **Modes** page, select one of the 5 available import modes and click **Next**.

![i7](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-fd05e9ec947b7503e6ac6151310d746064900503%2Fi7.png?alt=media)

8. On the **Output** page, select the preferred output option and click **Next**.

![i8](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-396d16340fdd878b369a5a7f12a33657c08ec505%2Fi8.png?alt=media)

9. On the **Errors handling** page, configure the errors handling behavior and select to keep a log file, if necessary.

![i9](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-b8a5ce65dae6bd3f78a83e0647b391be006d2d75%2Fi9.png?alt=media)

Similarly to export, you can save templates with your settings for recurring import operations. To do that, click **Save** in the lower left corner of the wizard, specify a name and a destination for the template file to be saved to, and then click **Save**.

![i10](https://2988006611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSsmexDFPv2xG2OTyO5yV%2Fuploads%2Fgit-blob-fb519304547e1c8902646dfb6d0e89faef9d7bd3%2Fi10.png?alt=media)

Also note that you don't have to go through every wizard page to click **Import**. You can do it whenever you've finished configuring your settings.

10. After you click **Import**, wait for the process to be completed. Then click **Finish** to confirm the successful completion, and check the results if you wish. That's it!

You can learn more about this functionality on the dedicated [data export/import page](https://www.devart.com/dbforge/mysql/studio/data-export-import.html). Please note: while the page focuses on MySQL databases, everything that's described there is just as perfectly applicable to MariaDB from the same Studio with the same workflow.

There is much more to dbForge Studio when it comes to MariaDB development and management. You can have a brief overview of its features and capabilities on [the Features page](https://www.devart.com/dbforge/mysql/studio/features.html).

That said, if you'd love to have a single IDE that doesn't need any 3rd-party extensions because it can perfectly deal with nearly any task on its own, feel free to [download dbForge Studio for a free 30-day trial](https://www.devart.com/dbforge/mysql/studio/download.html) and give it a go in your daily work.

<sub>*This page is licensed: CC BY-SA / Gnu FDL*</sub>

{% @marketo/form formId="4316" %}
