Java servers; Bedrock compatibility is noted separately · 3 min read

Minecraft backups: consistent copies and a test restore

A backup copy is useful when a separate server with the necessary world and data is launched from it. For the first test, stop recording, save the complete set and restore it to a new directory.

LonelyCraft editors · Updated

Desktop with computer and world Minecraft on screen
Illustration: desktop with a computer and world Minecraft on the screen. This is an artistic scene, not a snapshot of a specific server.

Find data stored outside the server folder

Make a list of world, plugins directory, external SQLite/MySQL/PostgreSQL, symbolic links and keys, without which the data cannot be opened. The Git repository with configs does not automatically contain inventories, regions and balances.

In the console, run save-all flush, then stop and wait for the process to complete. During copying, disable automatic restart. Remove the external database with a standard tool when the senders are stopped; local tar does not include it.

Comparison of configuration files, Minecraft state and external storage
The rebuildable kit must contain all parts of one point; one repository archive is not enough.Scroll the diagram horizontally.Open full-size diagram

Create an archive outside of runtime

The Linux example assumes the source /srv/minecraft and a new file with the date. The backups directory is located outside so that the archive does not include itself. command requires read source and destination write rights; if the file already exists, choose a new name.

mkdir -p /srv/backups
tar -czf /srv/backups/minecraft-2026-11-04.tar.gz -C /srv/minecraft .
tar -tzf /srv/backups/minecraft-2026-11-04.tar.gz
sha256sum /srv/backups/minecraft-2026-11-04.tar.gz > /srv/backups/minecraft-2026-11-04.tar.gz.sha256
sha256sum -c /srv/backups/minecraft-2026-11-04.tar.gz.sha256

Consider SQLite and external paths

With owners completely stopped, save SQLite and the remaining WAL/SHM files together. For a separate working database, use SQLite Backup API, for example sqlite3 plugins/Example/data.db ".backup /srv/backups/example.db". This does not make the simultaneously changing Minecraft-world consistent with the base.

WAL — part of the database state; a copy of one .db while the process is running may miss committed changes. Regular tar also saves the link, rather than automatically storing the entire contents of the external directory. On Windows, the available tar is called in the same way, and the hash is checked by Get-FileHash.

Restore into an isolated folder and test writing data

Create an empty /srv/minecraft-restore and extract via tar -xzf /srv/backups/minecraft-2026-11-04.tar.gz -C /srv/minecraft-restore. In the copy, set server-ip=127.0.0.1 and server-port=25566, disable Geyser, payments and work notifications; point external databases to individual restored instances.

Run the saved JAR of the appropriate Java. Check blocks, items, balance and permissions. Change the control progress, terminate via stop and make sure it persists after restarting. Time the entire recovery time: unpacking is only part of it.

Keep generation outside the main disk and history longer than normal error detection time. After adding a new DB, repeat the restore: a successful old script may not know about the new directory.

A pre-migration copy is needed to return to the previous code. Coordinate backup with update.

The availability of the archive without the old server is verified by a real transfer. Conduct a rehearsal on a new host.

Frequently asked questions

Matched SHA256 - is the copy recoverable?

It confirms that the bytes match the file being checked, but not the completeness of the file. A separate launch and data verification is required.

Is it possible to store the archive inside the world folder?

It’s not worth it: it will end up in the next copies and remain on the same disk. Specify the external destination.

Why is the database readable after restoration, but progress is lost?

Check the write permissions, directory owner, and valid DB path. The error may only appear after changing and restarting.

Views: … · One view per browser per day

Was this useful?Total score: …

One reaction per browser. Click again to remove it, or choose the other reaction.

Sources and documentation

MinecraftMinecraft serveradministration

Read on

Minecraft backups: consistent copies and a test restore — Lonely Craft