FiveM database koppelen: MySQL en oxmysql instellen

Elk RP-framework op FiveM, of het nu ESX, QBCore of Qbox is, slaat spelergegevens op in een MySQL- of MariaDB-database. Zonder database werkt het framework niet: geen inventaris, geen voertuigen, geen geld, geen banen. oxmysql is de standaard connector die het framework met de database verbindt.

Stap 1: database aanmaken

Bij alle FiveM-pakketten van HostValues is een database inbegrepen. In het gamepanel vindt u onder Databases de optie om een nieuwe database aan te maken. Na het aanmaken ziet u:

  • Host: het adres van de databaseserver (meestal localhost of een intern IP)
  • Poort: standaard 3306
  • Databasenaam: de naam die u heeft gekozen
  • Gebruikersnaam: automatisch gegenereerd
  • Wachtwoord: klik op het oogje om het te tonen

Stap 2: oxmysql installeren

Download oxmysql van GitHub. Pak het uit en upload de map naar resources/[ox]/oxmysql/. Voeg in server.cfg toe:

ensure oxmysql

Zet dit boven alle resources die de database gebruiken.

Stap 3: connectiestring instellen

Voeg in server.cfg de connectiestring toe:

set mysql_connection_string "mysql://gebruiker:wachtwoord@host:3306/databasenaam?charset=utf8mb4"

Vervang de waarden door die uit stap 1. Let op speciale tekens in het wachtwoord: als het een @ of # bevat, URL-encode die dan (bijvoorbeeld %40 voor @).

Stap 4: framework-SQL importeren

Elk framework heeft SQL-bestanden die de databasetabellen aanmaken. Open phpMyAdmin via het gamepanel (knop naast de database), klik op "Importeren" en upload het SQL-bestand van uw framework:

  • ESX: es_extended.sql
  • QBCore: qb-core.sql
  • Qbox: de SQL uit het recipe of de qbx_core-map

De meeste scripts die u later toevoegt hebben ook hun eigen SQL. Importeer die op dezelfde manier.

Stap 5: testen

Start de server. In de console moet u de melding zien:

[oxmysql] Database server connection established

Ziet u "connection refused" of "access denied", controleer dan de connectiestring op typefouten, of de database aangemaakt is en of het wachtwoord klopt.

Veelvoorkomende problemen

  • ER_NOT_SUPPORTED_AUTH_MODE: uw MySQL-server vereist een ander authenticatiemechanisme. Bij MariaDB speelt dit zelden; bij MySQL 8+ moet u mysql_native_password instellen.
  • Tabellen bestaan al: u importeert de SQL twee keer. Niet erg, de import overschrijft niets als de tabellen al bestaan.
  • Charset-fouten: vergeet ?charset=utf8mb4 niet in de connectiestring. Zonder die parameter worden emoji's en speciale tekens niet correct opgeslagen.

Kan ik SQLite gebruiken in plaats van MySQL?

Technisch ja, maar geen enkel RP-framework ondersteunt het standaard. MySQL of MariaDB is de verwachting. Bij HostValues is een database bij elk FiveM-pakket inbegrepen, dus er is geen reden om SQLite te gebruiken.

Hoe maak ik een back-up van mijn database?

Via phpMyAdmin: selecteer de database, klik op "Exporteren", kies "Snel" en "SQL", en download het bestand. Sla dit apart op. Bij een verse installatie importeert u dit bestand weer.

Kan ik de database bekijken terwijl de server draait?

Ja. phpMyAdmin toont live data. U kunt spelergegevens, voertuigen en inventarissen direct bekijken en zo nodig handmatig aanpassen. Wees voorzichtig: een fout in de database kan spelerdata beschadigen.

Een database is inbegrepen bij alle FiveM-pakketten. Bij vragen over de database-opzet helpt ons supportteam.


Komt u er niet uit? Open een support ticket, ons team helpt u graag verder.

Terug naar de blog