Data Stores
Last updated
Last updated
PermissionsEx can store its data in a variety of formats. By default, PEX uses the file
backend to store permissions in the permissions.json
file in the plugin data folder, but several others are available
The currently active data store is set with the default-backend
option in the plugin's configuration file. The default backend may be chosen from any data store configured in the backends
map in the configuration. While only two data stores are listed by default, any number may be configured -- PermissionsEx only loads the one specified in default-backend
and whichever data stores may be requested for imports.
The command \pex import [id]
will import a data store with the id id
, or if no parameters are provided give a list of available data stores to import from.
When importing from another data store, any subject that is present in the data store being imported from will completely overwrite the subject with the same identifier in the destination (i.e. currently active) data store.
file
The default backend, writing to a file in the PermissionsEx data folder
sql
Stores permissions data in an SQL database.
Currently supported databases are H2 and MariaDB/MySQL. PEX uses server-provided database connectors, so different platforms may have more limited support.
These data stores are written to migrate from other permissions plugins. Generally these do not have to be configured manually -- they will be detected and made available for import when running \pex import
LuckPerms (supports combined file format only for the moment, and does not support TOML)
UltraPermissions (not yet implemented)
Ops file
GroupManager
Option
Purpose
Default Value
file
The file to use
permissions.json
auto-reload
Automatically reload permissions when a change is made to the file
true
alphabetize-entries
Whether to sort entries alphabetically (when true), or maintain existing order (when false)
false
Option
Purpose
Default Value
url
The URL of the database to connect to, in the format jdbc:<type>:[/[[<user>:<password>@]<host>/]<database>
, where brackets indicate parameters
h2:permissions.db