EssentialsC MySQL Expansion

EssentialsC MySQL Expansion

MySQL Expansion for EssentialsC

139 downloads 0 followers

EssentialsC MySQL Database Expansion

Modrinth JitPack License Minecraft Paper Purpur Folia

MySQL Network Sync expansion for EssentialsC. Synchronizes EssentialsC data across multiple servers using a MySQL Database


Features

Click to expand full feature list

Network Synchronization

  • Authoritative Network Storage: Shared MySQL backend across multi-server setups
  • Cross-Server Economy: Instant network balance updates and synchronization
  • Network Leaderboards: Integrated /mysql baltop command support
  • Background Processing: Fully asynchronous database operations to keep server threads smooth

Management & Tuning

  • Local Mirroring: Syncs local EssentialsC balance views for offline network players
  • HikariCP Connection Pooling: Robust pool management with customizable limits and connection timeouts
  • Auto Server-ID Generation: Automatic diagnostic ID assignment if left unconfigured

Setup & Compatibility

Installation Steps & Requirements

Requirements

  • Java: 21+
  • Minecraft Version: 1.20.6+
  • Dependencies: EssentialsC installed on target servers
  • Database: MySQL 5.7+ or MariaDB equivalent

Installation

  1. Download the expansion JAR.
  2. Place the file inside your server's <server_root>/plugins directory.
  3. Start or restart the server to generate default configurations.
  4. Configure database credentials in /plugins/EssentialsC-MySQLExpansion/config.yml.
  5. Restart the server or reload the expansion to establish connection.

Configuration

Click to expand default config.yml
# ---------------------------------------------------------------------------
# EssentialsC - MySQL Network Sync Expansion
# ---------------------------------------------------------------------------
# This expansion synchronizes EssentialsC data across a server network using a
# shared MySQL database. The MySQL database acts as the authoritative network
# store.
# ---------------------------------------------------------------------------

mysql:
  # JDBC host of your MySQL server.
  host: localhost
  # JDBC port (3306 is the MySQL default).
  port: 3306
  # Name of the database EssentialsC will use. It must already exist.
  database: essc_test_01
  # Credentials used to connect.
  username: root
  password: 'minecraft'

  # Table prefix so multiple networks can share one database safely.
  table-prefix: 'essc_test_01'

  # Connection pool tuning (HikariCP).
  pool:
    maximum-pool-size: 10
    minimum-idle: 2
    connection-timeout-ms: 30000
    idle-timeout-ms: 600000
    max-lifetime-ms: 1800000
    # Extra JDBC properties appended to the connection URL.
    properties:
      useSSL: false
      autoReconnect: true
      characterEncoding: UTF-8

# Unique identifier for this server inside the network. Leave blank to have one
# generated automatically and persisted. It is only used for diagnostics.
server-id: 'survival-01'

# Enable verbose debug logging to the console.
debug: true

sync:
  # Economy is the first implemented module.
  economy:
    enabled: true
    # Pull the network balance into the local economy when a player joins.
    pull-on-join: true
    # Push the local balance to the network store when a player quits.
    push-on-quit: true
    # How often (in seconds) online players' balances are checked and pushed to
    # the network store whenever they change. EssentialsC does not expose a
    # balance-change event, so the expansion detects changes by diffing on this
    # timer; a small value means other servers see earnings almost immediately
    # without the player having to join them.
    push-interval-seconds: 2
    # Keep this server's LOCAL EssentialsC economy mirrored from the network for
    # players who are not online here. This makes EssentialsC's own /balance and
    # /baltop commands reflect network balances (e.g. server A earnings) for
    # players who never joined this server. Disable to only sync the /mysql views.
    sync-local: true
    # How often (in seconds) the local<->network mirror runs (push-on-change for
    # offline players and pull-down of remote changes).
    mirror-interval-seconds: 5
    # Number of entries shown per page by /mysql baltop.
    baltop-page-size: 10

No gallery available for this project.

Version Minecraft Loader Download

EssentialsC MySQL Expansion 4.3.0

4.3.0

1.20.6, 1.21, 1.21.1, 1.21.10, 1.21.11, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 26.1, 26.1.1, 26.1.2, 26.2
bukkit, paper, purpur, spigot
Download

EssentialsC MySQL Expansion 4.2.9

4.2.9

1.20.6, 1.21, 1.21.1, 1.21.10, 1.21.11, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 26.1, 26.1.1, 26.1.2, 26.2
bukkit, paper, purpur, spigot
Download

EssentialsC MySQL Expansion 4.1.3

4.1.3

1.21, 1.21.1, 1.21.10, 1.21.11, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9
bukkit, paper, purpur, spigot
Download