Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallOutdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchTo back up Uptime Kuma, stop the application and archive its entire persistent data directory. For Docker, that is the host directory or named volume mounted at /app/data. For a non-Docker installation, it is the directory set by DATA_DIR, whose documented default is ./data/. The archive must include the database, configuration, status-page assets and any SQLite sidecar files. Copying only kuma.db is incomplete, and the old JSON Backup/Restore feature is no longer supported in Uptime Kuma v2.
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
What an Uptime Kuma backup must contain
Uptime Kuma stores more than monitor definitions in its persistent directory. That directory is the boundary you should preserve and restore as one unit. Its contents can include the SQLite database, database configuration, status-page logos and temporary SQLite files created while the database is active.
As an Amazon Associate I earn from qualifying purchases.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →| Item | Why it matters | What to do |
|---|---|---|
kuma.db |
The SQLite database in a SQLite deployment, containing monitors, notification settings, status pages and history. | Keep it with every other file in the data directory; do not treat it as a standalone backup. |
SQLite sidecars such as -wal and -shm |
SQLite may use these files while writes are in progress. | Stop Uptime Kuma before archiving so the database can finish its writes, then include any sidecars that remain. |
db-config.json |
Records database-related configuration used by the deployment. | Preserve it with the directory, even when you believe the database file is all you need. |
| Status-page logos and other assets | These files are not reconstructed from monitor rows alone. | Archive the complete directory so custom branding and page assets return with the database. |
| MariaDB-related data or configuration | A deployment using MariaDB has a different backend boundary from a SQLite deployment. | Keep the Kuma data directory and make a separate backup of the MariaDB database on its server. |
The Uptime Kuma v2 migration documentation says that the deprecated JSON Backup/Restore feature was removed and that backing up the data directory is currently the only supported backup method. A JSON export should therefore not be presented as a current replacement for a filesystem backup.
Find the directory that Uptime Kuma is actually using
Backups fail most often because an operator archives a convenient-looking folder rather than the folder mounted or configured at runtime. Confirm the effective path before stopping anything.
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
Docker with a bind mount
List the container mounts and look for a source mapped to /app/data:
docker inspect uptime-kuma --format '{{range .Mounts}}{{println .Type .Source .Destination}}{{end}}'
The source shown beside /app/data is the host directory to archive. In Compose, inspect the service definition for a mapping such as ./uptime-kuma-data:/app/data; the left side is the host path. Resolve relative paths from the directory containing the Compose file, not from an arbitrary shell working directory.
Docker with a named volume
If the mount type is volume, record the volume name and inspect it:
docker volume inspect uptime-kuma-data
You can archive the volume through a temporary helper container. Do not confuse the volume name with a host directory; the volume’s data is managed by Docker and should be read through a mount.
Non-Docker installation
Find the value passed through the DATA_DIR environment variable or startup arguments. The documented default is ./data/, but a service manager, PM2 process or custom launch script can set another location. Check the service unit, process environment and working directory that actually start Uptime Kuma. Record the absolute path, the running Uptime Kuma version and whether the backend is SQLite or MariaDB.
Back up a Docker deployment
The safe sequence is identify, stop, copy, separate and verify. Never remove the volume as part of a normal shutdown.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
1. Record the mount and version
Save the output of the mount inspection, the Compose file or docker run command, and the image tag. This information lets you recreate the same mount and version during a restore. Also note where your backup archive will be stored; it must not be inside the live data directory.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
2. Stop Uptime Kuma cleanly
For a standalone container:
docker stop uptime-kuma
For Compose, stop only the service or bring the stack down without deleting volumes:
docker compose stop uptime-kuma
docker compose down
Do not use docker compose down -v for this operation. The -v option removes named volumes and can destroy the data you intended to protect.
3. Archive a bind-mounted directory
After the container is stopped, archive the host source directory. This example preserves common Linux metadata and writes the archive to a separate backup directory:
Recommended Free Tools
sudo mkdir -p /srv/uptime-kuma-backups
sudo tar --xattrs --acls -czf /srv/uptime-kuma-backups/uptime-kuma-data-2026-10-15.tar.gz -C /srv/uptime-kuma-data .
Replace the two paths with the source and destination you identified. The -C form stores relative paths inside the archive, so the files can be extracted into a replacement data directory later. If your operating system does not support the optional extended-attribute or ACL flags, omit those flags but preserve ownership and permissions by another method.
4. Archive a named volume
With the container stopped, create a read-only mount of the volume and write the archive to a host directory:
mkdir -p ./uptime-kuma-backups
docker run --rm -v uptime-kuma-data:/data:ro -v "$PWD/uptime-kuma-backups":/backup alpine tar -czf /backup/uptime-kuma-data-2026-10-15.tar.gz -C /data .
Substitute the real volume name. The helper image is only being used to read and compress the volume; it is not a second Uptime Kuma instance. Keep the resulting archive outside the volume.
5. Start and check the original deployment
docker start uptime-kuma
Or start the Compose stack again. Sign in and check a representative monitor, notification channel, status page, logo and historical data. This confirms that the stop and archive did not alter the live deployment and gives you a reference for a later restore test.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
Back up a non-Docker installation
- Resolve
DATA_DIR. Read the service configuration or process startup arguments and convert the path to an absolute path. If nothing overrides it, the documented default is./data/relative to the application’s working directory. - Stop the process. Use the service manager that launches Uptime Kuma, such as the applicable systemd unit or PM2 process. Confirm that the process has exited before copying files.
- Archive the whole directory. For example:
tar -czf /srv/uptime-kuma-backups/uptime-kuma-data-2026-10-15.tar.gz -C /absolute/path/to/data .
- Store deployment details with the archive. Record the Uptime Kuma version, Node/runtime setup, database backend, effective
DATA_DIRand service start command. These notes prevent a restore into the wrong directory or backend. - Restart and verify. Confirm that monitors, notifications, status pages, logos and history are present before declaring the backup job successful.
Why stopping Uptime Kuma matters
SQLite uses file locking and can maintain write-ahead-log or shared-memory sidecars while Uptime Kuma is running. A live copy can capture the main database and sidecars at different points in time, producing an inconsistent set. The installation documentation warns that POSIX file-lock support is required to avoid SQLite corruption. That warning applies both to the live database location and to any storage layer that presents it to the container.
A snapshot made by storage infrastructure can be consistent if the snapshot system coordinates application quiescing and preserves SQLite locks, but an ordinary file copy is not such a guarantee. Unless you have verified an application-consistent snapshot workflow, stop Uptime Kuma first.
Choose where to keep the archive
| Destination | Useful for | Important considerations |
|---|---|---|
| External HDD or SSD | Large local archives and quick restores. | Disconnect or move the drive off-site after copying when practical. Encrypt it if it may leave your control. |
| NAS or shared storage | Centralized retention and access from multiple administrators. | Use the NAS as an archive destination unless you have confirmed safe POSIX locking for the live SQLite directory. A network share that mishandles locks can corrupt the active database. |
| S3-compatible object storage | Off-site copies, immutability features and geographically separate retention. | Use a tool or workflow that uploads the stopped, complete directory or a verified archive. Current installation material mentions S3-compatible workflows and a Litestream example, but does not endorse a particular provider. |
| USB flash media | A small manual copy when no other removable storage is available. | Evaluate capacity, write endurance, failure risk and whether the device will remain connected to the host. Keep another copy elsewhere. |
Whatever destination you choose, keep at least one copy off the Uptime Kuma host. Apply encryption and access controls appropriate to the notification credentials and monitoring data stored in the archive. The official documentation does not prescribe a universal backup interval, retention period, recovery-point objective or recovery-time objective; set those from the outage and history-loss your service can tolerate.
Restore Uptime Kuma from an archive
Restore only while Uptime Kuma is stopped. Use the same deployment type and, unless you are deliberately performing an upgrade, the same application version first.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesRestore a bind-mounted directory
- Stop the container or service and confirm that no Uptime Kuma process is writing to the directory.
- Rename the current directory instead of deleting it. For example, rename
/srv/uptime-kuma-datato/srv/uptime-kuma-data.before-restore. This gives you a rollback copy if the selected archive is wrong. - Create a new directory at the path expected by the container, then extract the archive into it:
sudo mkdir -p /srv/uptime-kuma-data
sudo tar -xzf /srv/uptime-kuma-backups/uptime-kuma-data-2026-10-15.tar.gz -C /srv/uptime-kuma-data
- Preserve the ownership and permissions required by the container or service. Do not guess a numeric user ID; compare the original directory and the image or service configuration.
- Start Uptime Kuma and inspect container or service logs before opening the UI.
Restore a named Docker volume
A fresh volume avoids destructive, hidden-file deletion commands and leaves the original volume available for rollback:
docker volume create uptime-kuma-data-restore
docker run --rm -v uptime-kuma-data-restore:/data -v "$PWD/uptime-kuma-backups":/backup alpine tar -xzf /backup/uptime-kuma-data-2026-10-15.tar.gz -C /data
Point the Compose service or docker run definition at uptime-kuma-data-restore, start the container, and test it. After you have confirmed the restore, you can retire the old volume according to your change-control procedure. Keep the original until verification is complete.
Restore verification checklist
- All expected monitors load and show their previous status.
- Notification settings are present; test a notification without accidentally spamming recipients.
- Status pages, custom logos and public/private settings are intact.
- Historical uptime data appears for a known monitor and date range.
- Logs show no database migration failure, permission error or inability to open the data path.
- The container is using the intended volume or host path, not an empty default directory.
Major-version upgrades and interrupted migrations
Keep the pre-upgrade archive until the new version has been exercised. Uptime Kuma migrations can change database structures, so do not interrupt a migration once it has started. The migration guidance says to restore from the backup and retry if the process is interrupted.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Migration duration depends on the installation. The documentation gives an example of 20 monitors and 90 days of data taking about seven minutes; larger installations can take hours. That example is not a performance guarantee. Plan a maintenance window, watch the logs, and avoid killing the process merely because the UI is temporarily unavailable.
If an upgrade fails, stop the failed instance, preserve its current directory for diagnosis, restore the pre-upgrade directory or volume, and retry with the documented migration path. Do not overwrite your only archive with files produced by the failed migration.
SQLite and MariaDB are separate backup boundaries
A filesystem archive preserves the backend from which it was made. Copying a SQLite kuma.db does not convert the installation to MariaDB, and placing that file beside a MariaDB configuration does not perform a schema or data migration.
The official FAQ says direct SQLite-to-MariaDB conversion is not supported by the maintainers. Moving between those backends requires export and import with third-party tooling, followed by validation of monitors, credentials, notification channels, status pages and history. Treat that as a separate migration project, not as a restore operation.
If your current deployment already uses MariaDB, make a backup using the MariaDB server’s own consistent-dump procedure as well as preserving Uptime Kuma’s data and configuration files. A directory archive on the Kuma host cannot protect data that exists only inside a separate database server.
Free tools Windows power users keep installed
One-click scans. No signup required.
Compare common backup approaches
| Approach | Consistency | Restore completeness | Backend preserved | Use it? |
|---|---|---|---|---|
| Stopped complete data-directory archive | Strong for an ordinary filesystem copy because writes have stopped. | Includes database, sidecars, configuration and assets. | Yes. | Supported default method. |
| Stopped Docker volume archive | Strong when the container is stopped and the volume is read consistently. | Complete if the entire /app/data mount is archived. |
Yes. | Recommended for named volumes. |
Live copy of kuma.db |
Uncertain; can miss or mismatch SQLite sidecars. | Incomplete; omits configuration and assets. | Only the copied SQLite file, if usable. | Do not use as the primary backup. |
| JSON Backup/Restore | Not applicable to current v2 support. | Deprecated feature removed in v2. | Not a supported migration path. | Do not rely on it. |
| Backend-specific database dump | Depends on the database tool and whether it is run consistently. | May omit Kuma-side assets unless those are archived separately. | Usually yes for that backend. | Useful as an additional MariaDB safeguard, not a substitute for the Kuma data directory. |
Make the backup verifiable and recoverable
An archive that cannot be opened or restored is not a dependable backup. After creating one, check that it is readable and contains the expected top-level files:
tar -tzf /srv/uptime-kuma-backups/uptime-kuma-data-2026-10-15.tar.gz | head
Record the archive’s creation time, source path, Uptime Kuma version, backend and checksum. Store those notes beside the archive, not only in the live host. If your storage system supports object lock or immutable retention, use it for at least one copy so a compromised host cannot rewrite every backup.
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Periodically perform a test restore in an isolated container or host. Use the same image family, mount the restored directory at /app/data, and verify the checklist above. A restore test also exposes permission errors, incorrect relative paths and missing external MariaDB credentials before an outage occurs. Choose the test interval and retention policy from your operational risk; Uptime Kuma’s documentation does not mandate a universal schedule.
Troubleshoot common backup and restore failures
The restored instance opens as a new, empty Kuma
The container is usually pointed at a different or empty directory. Recheck the mount destination and confirm that the extracted archive contains kuma.db and the other expected files at the root of the mounted directory, rather than one directory level deeper.
The archive contains only kuma.db
The wrong source path may have been selected, or a file-only command was used. Locate the actual DATA_DIR or /app/data mount and repeat the stopped, whole-directory archive. Do not fill the gap by assuming the database file can recreate logos or configuration.
SQLite reports a lock or corruption error
Stop every Uptime Kuma process that can access the directory and restore the complete set of files from a known-good stopped archive. Check that the live directory is on storage with reliable POSIX file-lock behavior; the installation documentation specifically warns about lock support and SQLite corruption.
The container cannot read the restored files
Compare ownership, mode bits and mount options with the pre-restore directory. Correct permissions for the user configured by the image or service, then restart and inspect logs. Avoid broad permission changes that expose notification credentials.
A major upgrade appears frozen
Check logs and allow the migration to finish; the documented example took several minutes and larger installations can take hours. Do not interrupt it solely because the web interface is unavailable. If the process was interrupted, restore the pre-upgrade archive and retry.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Monitors return but history or logos do not
This indicates a partial archive, an extraction into the wrong path or a backend mismatch. Compare the restored directory with the archive listing, confirm the status-page asset files are present, and verify that the instance is connected to the intended database backend.
Quick Recap
Operational checklist
- Identify the effective
DATA_DIRor Docker mount to/app/data. - Record the Uptime Kuma version and database backend.
- Stop Uptime Kuma before copying or restoring.
- Archive the complete persistent directory or named volume, including SQLite sidecars.
- Keep the archive outside the live volume and at least one copy off-host.
- Protect archives containing notification credentials with appropriate access controls and encryption.
- Retain the pre-upgrade archive until migration verification is complete.
- Test a restore in your own environment and confirm monitors, notifications, status pages, logos and history.
- Treat SQLite-to-MariaDB conversion as a separate export/import project; a copied
kuma.dbis not a conversion.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




