Lewati ke konten

Konfigurasi Database RankForge – JSON, SQLite, MySQL, MariaDB, PostgreSQL, MongoDB

RankForge mendukung 6 backend penyimpanan. Pilih lewat database.type di config.yml.

Tipe Jenis Cocok untuk
JSON File lokal (players.json) Server tunggal, tanpa setup (default)
SQLITE File relasional (rankforge.db) Server tunggal yang ingin satu file DB
MYSQL SQL remote Jaringan server, ranking bersama
MARIADB SQL remote Jaringan server berbasis MariaDB
POSTGRESQL SQL remote Infrastruktur besar / cluster
MONGODB NoSQL dokumen Infrastruktur cloud / dokumen

Tanpa konfigurasi tambahan. Data tersimpan di plugins/RankForge/players.json dengan penulisan atomic untuk mencegah file korup.

database:
type: "JSON"

SQL (tabel rankforge_players, dibuat otomatis):

Kolom Tipe Isi
uuid VARCHAR(36) PK UUID pemain
name VARCHAR(32) Nama terakhir
points, kills, deaths, daily_kills INT Statistik
last_seen, last_kill_date, last_bonus_date VARCHAR Tanggal terakhir
received_bonus BOOLEAN Status bonus first kill
claimed_rewards TEXT Tier yang sudah di-claim

MongoDB: satu dokumen per pemain di collection players, dengan _id berisi UUID.

  • Auto-fallback. Jika koneksi database gagal saat startup, RankForge mencatat error dan memakai JSON lokal supaya server tidak crash.
  • Simpan async. Penulisan ke database berjalan di thread terpisah, tidak mengganggu TPS.
  • Cache RAM. Seluruh data dimuat ke memori saat startup; query in-game tidak menyentuh jaringan.
  • Timeout koneksi 5 detik untuk SQL, jadi database yang mati tidak membuat startup menggantung lama.

RankForge tidak punya perintah migrasi bawaan. Cara aman: matikan server, backup data lama, ubah database.type, lalu pindahkan data dengan skrip sendiri (misalnya dari players.json ke tabel rankforge_players) sebelum server dinyalakan lagi.