Overview
Mango by Radix IoT stores information in three places that require separate backup strategies: the SQL database, MangoNoSQL historical point values, and portable JSON configuration exports. A complete disaster-recovery plan covers all three.
| Backup Type | Contains | Location or Format |
|---|---|---|
| SQL database | Users, data sources, data points, event detectors, permissions, and other configuration | Under {data directory}/databases/; scheduled backup is a ZIP |
| MangoNoSQL | Historical point values and annotations stored by ias-tsdb |
ZIP files prefixed MangoNoSQL- and MangoNoSQLPointData- |
| JSON configuration | Portable data sources, points, handlers, users, roles, and related configuration | JSON file |
Warning
Do not copy live database files. Database locks and in-memory state can make the copy inconsistent or corrupt. Stop Mango before manual file copying, or use the built-in backup functions while Mango is running.
Prerequisites
- Superadmin access to Mango 4.x or 5.x — every page in this guide is superadmin-only
- Write access to the configured backup directory
- Enough storage for SQL, JSON, and MangoNoSQL retention
- A secure off-site backup destination
- A non-production environment for restore testing
Step 1: Configure Scheduled Backups
Under Administration > System settings, each backup is its own entry in the Choose a section list, with its own schedule. All three ship enabled:
- Configuration backup: Scheduled JSON export
- SQL database backup: Scheduled SQL backup
- Mango NoSQL: Scheduled point-value backup
SQL Database Backup Defaults
| Setting | Default | Notes |
|---|---|---|
| Enable auto backup | Yes | Runs scheduled backups |
| Backup hour / Backup minute | 0 / 5 (00:05) |
Uses server time |
| Versions to keep | 10 |
Number of SQL backup files retained |
| Backup directory | {data directory}/backup |
Relative to the configured data directory |
JSON Configuration Backup Defaults
| Setting | Default | Notes |
|---|---|---|
| Enable auto backup | Yes | Runs scheduled JSON exports |
| Backup hour / Backup minute | 0 / 5 (00:05) |
Uses server time |
| Versions to keep | 10 |
Number of JSON files retained |
MangoNoSQL Backup Defaults
MangoNoSQL is the standard historical point-value store, backed by ias-tsdb. It has separate backup settings.
| Setting | Default | Notes |
|---|---|---|
| Enable auto backup | true |
Uses the module’s scheduler |
| Versions to keep | 365 |
Approximately one year of daily backups |
| Backup hour / Backup minute | 5 / 0 (05:00) |
Note this is not the 00:05 used by SQL and JSON |
| Incremental backups | true |
Only changed data is written after the first full backup |
Note
MangoNoSQL backups can be much larger than SQL or JSON backups because they contain historical point values. Adjust retention to available storage.
Note
Scheduled backups use the server’s clock, not the browser’s local timezone. SQL and JSON run at 00:05 and MangoNoSQL at 05:00 by default, so plan both windows around server time and operational load.
Note
Verify the latest backup before upgrades, maintenance, or major configuration changes. An untested backup should not be treated as recoverable.
Step 2: Run Manual Backups
Each mechanism has its own trigger:
- Click Backup now in Configuration backup for a JSON export.
- Click Backup now in SQL database backup for a SQL backup.
- Click Backup now in Mango NoSQL for a point-value backup.
These produce separate files rather than one combined archive:
- JSON:
Mango-Configuration-<MMM-dd-yyyy_HHmmss>.json - SQL:
core-database-<type>-<MMM-dd-yyyy_HHmmss>.zip - MangoNoSQL: files prefixed with
MangoNoSQL-orMangoNoSQLPointData-
If Versions to keep is set to 1, the date is dropped and the single file is replaced on every run — Mango-Configuration.json and core-database-<type>.zip.
Step 3: Export JSON Configuration
- Go to Data integration > Configuration import/export.
- Tick Select all, or the individual object types.
- Click Export. The JSON appears in the editor below.
- Click Download JSON file and store the file securely.
JSON exports can include data sources, data points with their event detectors, event handlers, users, roles, system settings, JSON data, and more — there is one checkbox per type.
Note
JSON exports contain configuration, not historical point values. Back up MangoNoSQL and the SQL database as well.
Step 4: Verify Backup Files
Check the directory and test SQL ZIP integrity:
# /opt/mango-data is the installer's data directory; adjust for yours
# (an install unzipped without the installer uses /opt/mango/backup)
ls -lh /opt/mango-data/backup/
# Test SQL backup archives
unzip -t /opt/mango-data/backup/core-database-*.zip
Periodically perform a full restore on a non-production instance.
Restoring from Backup
Prefer Mango’s built-in restore controls. They run against the live service and avoid manual file replacement. After a SQL database restore, restart Mango.
Restore the SQL Database
- Go to Administration > System settings > SQL database backup.
- Choose the file under Select a file to restore.
- Click Restore database.
- Restart Mango when the restore completes. Mango’s own help for this page says the restart is required.
The restore runs over the live database connection, so you do not stop Mango first — but you do restart it afterwards.
Note
As a fallback, stop Mango before manually replacing files under {data directory}/databases/. The default H2 database file is mah2.<build>.mv.db, for example mah2.240.mv.db on Mango 5.7.4. Restore database is the supported path.
Restore JSON Configuration
- Go to Data integration > Configuration import/export.
- Paste the JSON, drop the file, or click Upload JSON file.
- Click Import.
- Review errors and skipped items.
Warning
Import matches objects by XID. Matching XIDs update existing objects; new XIDs create objects. Importing into an existing system can overwrite configuration.
Restore MangoNoSQL Time-Series Data
The restore tool is not in the Mango NoSQL section of System settings. It has its own page, hidden from the menu:
- Open Administration > Admin home.
- On the Utilities card, click Mango NoSQL.
- Open the Restore Mango NoSQL database tab.
- Choose the file under NoSQL backup and click Restore now.
The page is superadmin-only, and restoring also needs the separate NoSQL restore permission. Incremental backups are on by default, so a single zip holds only the changes since the previous backup — use the tool rather than copying one file over ias-tsdb.
Remote Backup Best Practices
- Copy backups off the Mango server immediately after creation.
- Use NFS, object storage, or
rsyncto another host. - Encrypt sensitive backups.
- Test restoration at least quarterly.
Example nightly off-site copy:
0 3 * * * rsync -avz /opt/mango-data/backup/ backupuser@remote-server:/backups/mango/
Verification
- The newest SQL and JSON files were created at 00:05 server time.
- SQL and JSON retention each preserve the configured number of files, default 10.
- MangoNoSQL backups are present and follow their separate retention setting.
- SQL ZIP files pass
unzip -t. - A JSON export can be imported into a non-production instance.
- Built-in SQL and MangoNoSQL restore controls complete successfully in a restore test, and Mango restarts cleanly after the SQL restore.
- Off-site copies are current and readable.
Troubleshooting
Backup Is Missing or Zero Bytes
- Confirm Mango can write to the backup directory.
- Review
ma.log. - Check available disk space.
- Verify the relevant backup mechanism is enabled.
Restore Control Fails or Is Missing
- Open the matching page: SQL restore is under SQL database backup, while MangoNoSQL restore is behind the Mango NoSQL button on Admin home’s Utilities card.
- For MySQL or PostgreSQL, backup needs
mysqldumporpg_dumpand restore needsmysqlorpsqlon the system path. Otherwise setdb.backup.dumpanddb.restore.pathto absolute paths inmango.properties.
JSON Import Skips Objects
- Within one file, Mango orders the import itself and retries items whose dependencies were not there yet, so a complete export imports in one pass.
- A skipped item usually references an XID that is in neither the file nor the target system — a data point whose data source was not exported, for example. Export the dependency too, or import it first.
- Review the import result for the missing XID references.
MangoNoSQL Uses Too Much Storage
- Review point logging intervals and purge settings.
- Reduce logging frequency where operationally acceptable.
- Purge data beyond the required retention period.
- Adjust MangoNoSQL’s separate backup file count, which defaults to 365.
- Run the optional corruption scan only when needed; it is not enabled by default.
Related Guides
- Upgrading from Mango 3.x to Mango 4
- Deploying Mango 5 with Docker
- Resetting the Admin Password
- Mango Troubleshooting Methodology: Step-by-Step Triage Guide
- Common Mango Issues and Quick Fixes