How Can We Help?
< All Topics
Print

MongoDB Database Backups

Create an environment

1. Log into your BitssCloud account and click Create environment.

2. As the window appears to pick MongoDB as your database and set the resource limits for it. After that, specify the name of your environment and click Create.

In a few minutes, your environment will appear on the dashboard.

3. Open MongoDB in a web browser, login into the RockMongo admin panel using the credentials, which BitssCloud has sent you while creating the environment, and then create your new database.

Configure MongoDB backup

1. Click the Config button for the database for further MongoDB backup configuration.

2. Move to the scripts directory and navigate to the backup_script.sh file. Find the next string and set your values:

MONGO_USERNAME="admin";
MONGO_PASSWORD="<your MongoDB password>";
DAYS_TO_STORE=3;

In this case <MONGO_USERNAME> and <MONGO_PASSWORD> are your database credentials which you should have received via email while creating the BitssCloud environment.

<DAYS_TO_STORE> is the time period for storing the backup files (the default value is 3).

Don’t forget to save the changes!

3. Go to the cron directory and open the mongod file. Uncomment the next string to backup your database once per day (at night) due to default configurations:

@daily /bin/bash /var/lib/jelastic/bin/backup_script.sh

4. In the case that you want to backup, your database with another frequency, configure how often the script should run by adding the cron settings instead of the default value (@daily).

For example, if you want to backup your database every ten minutes, the string will look like the following:

*/10 * * * * /bin/bash /var/lib/jelastic/bin/backup_script.sh

5. Navigate to the scripts directory and specify the next configuration in the backup_script.sh file to backup specific databases or tables:

  • to configure multiple database backups:
-d {db_name}
$MONGODUMP -u $MONGO_USERNAME -p $MONGO_PASSWORD -d DB_NAME1, DB_NAME2 >> $BACKUP_LOG 2>&1;
  • to configure database tables backup:
-t {table_name}
$MONGODUMP -u $MONGO_USERNAME -p $MONGO_PASSWORD -d DB_NAME1 -t TABLE_NAME1, TABLE_NAME2 >> $BACKUP_LOG 2>&1;

Note: You can use multiple values for databases and tables separated by commas. You have to specify the name of the database where these tables are placed to set the database tables backup.

Check MongoDB backup

1. Wait until the time that you scheduled the MongoDB backup.

2. Go to the Configuration tab and navigate the backup directory (/var/lib/jelastic/backup). You’ll find .tgz files with all executed backups there.

Download backup

1. Install FTP for your database server as it’s described in our “FTP/FTPS support in BitssCloud” guide.

2. Connect to the MongoDB database using any FTP client (e.g. FileZilla) and download your backup files.

Restore files from a backup

1. Unzip the backup package you’ve downloaded earlier and navigate to the folder named as the database or the collection you want to restore. Then find the collection bson file in there.

2. Convert the bson file into json format using the next command:

bsondump my.bson > my.json

Note: You need to have MongoDB installed on your local machine. Locate your bson file in the mongodb…/bin folder and run the above command under this directory. The generated json file will be stored in the same folder.

3. Open MongoDB in a web browser and navigate to the database where you want to restore your data or create a new one.

4. Import your json file to the collection where you would like to have it located. And that’s all! Your data has been successfully restored.

As you can see, it’s quite easy to get your MongoDB backup files in the Cloud. Now, all of your data is safe and you can restore and reuse it whenever you need. Enjoy!

Table of Contents