Connecter la base de données FiveM : configurer MySQL et oxmysql

Chaque framework RP sur FiveM, qu'il s'agisse d'ESX, QBCore ou Qbox, stocke les données des joueurs dans une base de données MySQL ou MariaDB. Sans base de données, le framework ne fonctionne pas : pas d'inventaire, pas de véhicules, pas d'argent, pas de métiers. oxmysql est le connecteur standard qui relie le framework à la base de données.

Étape 1 : créer la base de données

Toutes les offres FiveM de HostValues incluent une base de données. Dans le panel de jeu, sous Databases, vous trouvez l'option pour créer une nouvelle base. Après création, vous voyez :

  • Host : l'adresse du serveur de base de données (généralement localhost ou une IP interne)
  • Port : 3306 par défaut
  • Nom de la base : le nom que vous avez choisi
  • Nom d'utilisateur : généré automatiquement
  • Mot de passe : cliquez sur l'œil pour l'afficher

Étape 2 : installer oxmysql

Téléchargez oxmysql depuis GitHub. Décompressez et uploadez le dossier vers resources/[ox]/oxmysql/. Ajoutez dans server.cfg :

ensure oxmysql

Placez cette ligne au-dessus de toutes les resources qui utilisent la base de données.

Étape 3 : configurer la chaîne de connexion

Ajoutez dans server.cfg la chaîne de connexion :

set mysql_connection_string "mysql://utilisateur:motdepasse@host:3306/nomdelabase?charset=utf8mb4"

Remplacez les valeurs par celles de l'étape 1. Attention aux caractères spéciaux dans le mot de passe : s'il contient un @ ou un #, encodez-les en URL (par exemple %40 pour @).

Étape 4 : importer le SQL du framework

Chaque framework possède des fichiers SQL qui créent les tables de la base de données. Ouvrez phpMyAdmin via le panel de jeu (bouton à côté de la base de données), cliquez sur "Importer" et uploadez le fichier SQL de votre framework :

  • ESX : es_extended.sql
  • QBCore : qb-core.sql
  • Qbox : le SQL du recipe ou du dossier qbx_core

La plupart des scripts que vous ajoutez ultérieurement ont également leur propre SQL. Importez-les de la même manière.

Étape 5 : tester

Démarrez le serveur. Dans la console, vous devez voir le message :

[oxmysql] Database server connection established

Si vous voyez "connection refused" ou "access denied", vérifiez la chaîne de connexion pour les fautes de frappe, si la base de données a bien été créée et si le mot de passe est correct.

Problèmes fréquents

  • ER_NOT_SUPPORTED_AUTH_MODE : votre serveur MySQL exige un mécanisme d'authentification différent. Avec MariaDB c'est rarement un problème ; avec MySQL 8+ vous devez configurer mysql_native_password.
  • Les tables existent déjà : vous importez le SQL deux fois. Ce n'est pas grave, l'import n'écrase rien si les tables existent déjà.
  • Erreurs de charset : n'oubliez pas ?charset=utf8mb4 dans la chaîne de connexion. Sans ce paramètre, les emojis et caractères spéciaux ne sont pas enregistrés correctement.

Puis-je utiliser SQLite au lieu de MySQL ?

Techniquement oui, mais aucun framework RP ne le supporte par défaut. MySQL ou MariaDB est la norme. Chez HostValues, une base de données est incluse dans chaque offre FiveM, il n'y a donc aucune raison d'utiliser SQLite.

Comment sauvegarder ma base de données ?

Via phpMyAdmin : sélectionnez la base de données, cliquez sur "Exporter", choisissez "Rapide" et "SQL", puis téléchargez le fichier. Conservez-le séparément. Lors d'une nouvelle installation, vous réimportez ce fichier.

Puis-je consulter la base de données pendant que le serveur tourne ?

Oui. phpMyAdmin affiche les données en temps réel. Vous pouvez consulter les données des joueurs, les véhicules et les inventaires directement et les modifier manuellement si nécessaire. Soyez prudent : une erreur dans la base de données peut endommager les données des joueurs.

Une base de données est incluse dans toutes les offres FiveM. Pour toute question sur la configuration de la base de données, notre équipe support est à votre disposition.


Encore des questions ? Ouvrez un ticket de support et notre équipe vous aidera.

Retour au blog