Creating Backups

### Redundancy

> " ... **redundancy** is the duplication of critical components or functions of a system with the intention of increasing reliability of the system, usually in the form of a backup or fail-safe ...."
>
>

Source: Wikipedia

### Why Should I Backup Data?

It is important to **always** backup your server's files in case something goes wrong because something WILL eventually go wrong. Furthermore, you should be storing backups in **multiple** locations. Redundancy is **EXTREMELY** important! This cannot be emphasized enough. For the same reason, do NOT solely rely on any backups your host may make.

**Note:** When using a Minecraft host you will have access to a limited amount of storage. Be sure you do not go over that amount. This is another reason creating backups elsewhere can be useful. For instance, using the Server Backup plugin, which supports backing up to Drop Box, another FTP server, or within server files.

### When You Might Need Backups

* A game breaking bug/exploit/dupe causes massive issues and requires restoring from a backup made earlier that day or week.
* A player manages to get operator (/op <player>) and wrecks havoc.
* A staff member with access to /op, server files, or console deletes your server's files & any backups stored in the same area where your server files are.
* A (real) hacker manages to gain access to console / server files and deletes all your files & any backups stored in the same area where your server files are.
* The storage device your server is stored on for your Minecraft host fails.
* You forget to pay your Minecraft host for the month (or 2) and they close your account automatically and delete your server files.
* Even after your server's map ends they may still be useful for creation of future servers/maps or providing your players their builds as a world download!
* Your host's software automatically accidentally deletes all of your server files OR your host shuts down without warning.
* Your host is hacked directly and wipes all of their files & backups, including your server files.
* A pipe breaks where the host stores their hardware and it floods/destroys the hardware thus wiping your server files.
* A natural disaster occurs where your server files are stored and everything is destroyed.
* Probably countless other situations.

Some of these may seem extremely unlikely/impossible. If there's one thing you'll learn over and over again if you own a Minecraft server long enough: **anything** **is possible**. So be prepared or pay the price.

### Recommendations

(These are solely ***my*** opinion. You may or may not agree.)

* Try to use a host that specifically states they create server backups automatically.
* Create manual AND automatic backups regularly. I.e. you may have a plugin or mod auto-backup your server files every day. Then once a week you transfer those auto-backups to your computer & create a FULL backup (in case your auto-backups only backup crucial files to save space).
	+ If you are using Vanilla, there is no way (to my knowledge) to create server backups automatically on a Minecraft host unless they provide an option in their online server panel.
	+ If you are using CraftBukkit, Spigot, or Paper then try getting a plugin that automatically backs up your server files.
	+ Alternatively if you are using Forge and a premade modpack then they should have a backup mod. Or if you are using Forge and creating your own modpack then you may want to use a backup plugin such as AromaBackup or an alternative backup mod.
* If you have a MySQL database then it is strongly recommended to back it up as well. Ignore this if you have no clue what a MySQL database is.
* Use a plugin or mod to create automatic backups. Then transfer those backups to an external source such as your computer, Google Drive, Drop Box, or another FTP server.
* If you can afford it I recommend buying a 1 TB+ 5400rpm external HDD intended specifically for backups for your computer's files and server files.

### Redundancy At Its Finest

If you're curious about what level I go to for backing up servers I own to ensure they are safe:

1. In the past for a Paper server I had on a Minecraft host I made:
	* Automatic daily backups that auto backed up all crucial files to a separate FTP server.
	* Then I would periodically transfer those backups to my own computer's 4 TB external HDD drive.
	* I manually created a FULL server backup (& MySQL backup) once a week which I stored in that 4 TB external HDD drive.
	* Once a week (or month?) I would backup all the new data from that 4 TB external HDD to another HDD in case the first fails or has issues.
	* I also made sure the host made their own automatic server backups and confirmed I could access them if ever needed.
	* **Conclusion:** I had files backed up to a third-party location, my own hard drive, a second hard drive, and the host was making their own backups. That is 3 separate geographic locations and 4 backups each on a different storage device. Needless to say, I've never had an issue of data loss to the point I lost all server files. I've encountered **PLENTY** of times where it could've happened if I didn't have backups though!
2. I'm now working on creating a modpack for a modded server & another Paper server. Both will run on a dedicated server. This is a much more complicated system that most of you likely won't understand without extensive explanation but: I hired a System Administrator to create a script to auto-backup all servers & MySQL databases on the dedicated server to the secondary drive (4 TB HDD) with *incremental* backups (because my servers are expected to take up massive amounts of storage space over time). And once I figure out how, I hope to move those backups to my 4 TB HDD periodically (hopefully in the incremental sizes they are being backed up as if possible). Then I'll backup those files on a second drive as well.