# How To Admin # Why use External Databases over Local Databases In the world of Minecraft server plugins and mods, data management is crucial for everything from player stats tracking to world state saving. Many developers face the decision of choosing between local databases (e.g., SQLite) and external databases (e.g., MySQL, MongoDB) for storing and accessing this data. While each option has its merits, performance is often the deciding factor. In this article, we’ll focus on the performance implications of using external databases over local databases for Minecraft plugins. ##### **What are external Databases?** External databases are databases hosted outside of the server. Unlike local databases, which are within the files of your server, external databases use a network connection to handle data. Examples of such databases are MySQL, MariaDB and MongoDB. They are designed to handle large amounts of data and concurrent access, making them ideal for applications that need to manage data from multiple sources or handle heavy loads efficiently. ##### **What are local Databases?** Local databases are databases located within your plugins' files. They are often file-based, storing data directly on the local filesystem, and don't require a network connection for access. Common examples include SQLite, H2, YAML, TOML and JSON. They are usually used by default for your plugins, and work well when handling small amount of data. However, they are generally less suited for high concurrency or large-scale data handling when compared to external databases. ##### **Conclusion** It's preferred for you as a server owner to make use of external databases (One will be provided for free for you to use. If you're unfamiliar with creating databases, please refer to this article for guidance).
Do note that the information here is based on the default files and folders provided by Mojang
#### **Files** In this section you'll learn what a folder or a file is for. Importance is divided in the following way: **Low, Medium, High, Essential** Low: Not something you'll be using at all or doesn't cause issues at all Medium: Something you may use once or twice/the server uses it or may cause a few issues High: Important information stored within it, dleeting may lead to server corruption or other issues Essential: needed for the server to run, the server won't run without it**File/Folder name** | **Description** | **Importance** |
libraries | A folder. It store libraries for your server, it's preferred to not delete these as they are needed for the server, nothing will happen if you delete them as they'll regenerate themselves. Don't delete while server's running | Medium |
.cache | A folder. Cache, stores data temporarily, preferrably keep it. Don't delete while server's running | Medium |
logs | A folder. Stores your server's logs, by deleting it once in a while you can save up some storage. | Low |
versions | A folder. As long as the server.jar is in the main directory, it won't cause issues deleting it. It'll autoregenerate. Don't delete while server's running | Medium |
world | A folder. Don't delete it, it contains some player data, datapack if added and your worlds' data. | High |
banned-ips.json banned-players.json | Both are files. You usually don't delete these unless you want to unban every person who has been banned in the past | Medium |
server,jar | A file. Don't delete, it's your server's core | Essential |
**Command** | **Description** | **Usage** |
/op /deop | Allows you to execute any command available within the server (if `op-permission-level` in `server.properties` is 4 (default value)) | /op <username> /deop <username> /op MelonOof /deop MelonOof |
/gamemode | Change yout gamemode to one of the following: **survival, creative, spectator** and **adventure**. | /gamemode <gamemode> /gamemode survival /gamemode creative /gamemode adventure /gamemode spectator |
/stop | This command will stop your server (works the same way as the stop button in the panel's console) | /stop |
/restart | This command will restart your server (works the same way as the restart button in the panel's console) | /restart |
/whitelist | The command itself doesn't do anything, you need additional arguments for it to work, you can toggle on/off whitelist, add and remove players from whitelist | /whitelist on || /whitelist off /whitelist add <username> /whitelist add MelonOof /whitelist remove <username> /whitelist remove MelonOof /whitelist list |
/worldborder | Manage the world border. With this command you can: Increases or decreases the world border diameter; Recenter the world boundary and a lot more | /worldborder add <diameter> /worldborder set <diameter> /worldborder get |
/ban | Ban players permanently from your server | /ban <username> \[<reason>\] `The ban's reason is optional` /ban MelonOof Too Juicy `with this command, the player MelonOof is getting banned because of the following reason: "Too Juicy"` |
/pardon | Unban players from your server | /pardon <username> /pardon MelonOof |
/setworldspawn | Set the server's default (re)spawn point the the location you are at | /setworldspawn |
/tp /teleport | Teleport to a location, teleport a player to a location or teleport to a player | /tp <x> <y> <z> /tp <username> <x> <y> <z> /tp <username> <username> |
/weather | Sets the weather to one of the following **clear|rain|thunder** with an optional duration in ticks (1 second = 20 ticks) | /weather <weather> \[<duration>\] /weather clear 200 `sets the weather to clear for 10 seconds` |
/give | Give yourself or someone else one or multiple items | /give <username> <item> \[<amount>\] |
/help | Get to know about any other command you may need, the ones listed here are the essential ones for a server administrator | /help |