Intermédiaire ⏱ 12 min Mis à jour le 29 juillet 2026

Configurer la base de données MySQL de votre serveur FiveM (oxmysql)

Sans base de données, pas d'argent, pas d'inventaire, pas de personnages qui persistent. Voici comment connecter votre serveur FiveM à sa base MySQL avec oxmysql.

À quoi sert oxmysql sur FiveM ?

Configurer oxmysql permet de relier les scripts de votre serveur FiveM à une base de données MySQL ou MariaDB. Cette base conserve les informations qui doivent rester disponibles après un redémarrage ou la déconnexion d’un joueur.

Sur un serveur RP utilisant ESX ou QBCore, elle enregistre notamment :

  • les personnages et leurs identifiants ;
  • l’argent liquide et les comptes bancaires ;
  • les métiers et les grades ;
  • les véhicules possédés ;
  • les inventaires ;
  • les logements ;
  • les licences et autres données persistantes.

Oxmysql sert de pont entre ces données et les ressources FiveM. Lorsqu’un script doit charger un personnage, modifier un solde ou enregistrer un véhicule, il envoie une requête à oxmysql, qui communique avec le serveur de base de données.

Oxmysql remplace couramment les anciennes ressources comme mysql-async et ghmattimysql. Il prend également en charge plusieurs syntaxes historiques, ce qui facilite la migration de nombreux scripts.

Oxmysql ne crée pas automatiquement toutes les tables de votre framework. Vous devez aussi importer les fichiers SQL fournis avec ESX, QBCore ou les scripts installés.

Si votre framework n’est pas encore déployé, commencez par le guide pour installer ESX ou QBCore sur FiveM. Pour gérer le lancement du serveur et consulter sa console, reportez-vous également au guide pour démarrer avec txAdmin.

Récupérer les identifiants MySQL TalCloud

La base MySQL associée à votre hébergement TalCloud est accessible depuis votre espace client ou le panel de gestion. Vous devez récupérer cinq informations :

InformationExempleUtilité
Hôtemysql.exemple.frAdresse du serveur MySQL
Port3306Port de connexion à MySQL
Nom de la basefivem_12345Base utilisée par votre serveur
Utilisateurfivem_userCompte autorisé à accéder à la base
Mot de passeMotDePasseComplexeAuthentification du compte

Recopiez les valeurs exactement. L’hôte MySQL n’est pas nécessairement localhost, même lorsque la base est fournie avec l’hébergement.

Ne confondez pas :

Adresse du serveur FiveM : play.exemple.fr
Adresse de la base MySQL : mysql.exemple.fr

Vous pouvez gérer les tables depuis l’outil proposé dans l’espace client, par exemple une interface de type phpMyAdmin.

Ne publiez jamais vos identifiants MySQL dans un tutoriel, une capture d’écran, un dépôt GitHub ou un message Discord. Une personne qui les récupère peut lire, modifier ou supprimer les données de votre serveur.

Installer oxmysql dans les ressources FiveM

Oxmysql est souvent déjà installé lorsqu’ESX ou QBCore a été déployé avec une recipe txAdmin. Vérifiez d’abord le dossier resources/.

Vous devez trouver une structure similaire à celle-ci :

resources/
├── [standalone]/
│   └── oxmysql/
│       ├── fxmanifest.lua
│       ├── lib/
│       └── web/
├── [esx]/
└── [local]/

Ou, pour une installation QBCore :

resources/
├── [standalone]/
│   └── oxmysql/
├── [qb]/
└── [local]/

Si oxmysql est absent, téléchargez sa version publiée depuis le dépôt officiel, puis placez le dossier décompressé dans resources/[standalone]/.

Le fichier suivant doit exister directement dans le dossier de la ressource :

resources/[standalone]/oxmysql/fxmanifest.lua

Évitez l’imbrication suivante :

resources/[standalone]/oxmysql/oxmysql/fxmanifest.lua

Dans ce cas, FiveM risque de ne pas trouver la ressource sous le nom oxmysql.

Ajoutez ensuite son démarrage dans server.cfg :

ensure oxmysql

Oxmysql doit démarrer avant les ressources qui utilisent la base de données. Par exemple :

ensure oxmysql
ensure es_extended
ensure [esx_addons]

Pour QBCore :

ensure oxmysql
ensure qb-core
ensure [qb]

Une erreur No such export in resource oxmysql indique souvent qu’un script a démarré avant oxmysql, que la ressource est mal nommée ou que vous avez téléchargé le code source au lieu d’une version prête à l’emploi.

Configurer oxmysql avec la connection string

La chaîne de connexion, ou connection string FiveM, contient les informations permettant à oxmysql de se connecter à la base.

Placez cette ligne dans server.cfg, avant ensure oxmysql :

set mysql_connection_string "mysql://UTILISATEUR:MOT_DE_PASSE@HOTE:PORT/NOM_DE_LA_BASE?charset=utf8mb4"

Exemple fictif :

set mysql_connection_string "mysql://fivem_user:MotDePasseComplexe@mysql.exemple.fr:3306/fivem_12345?charset=utf8mb4"

ensure oxmysql
ensure es_extended

Pour QBCore :

set mysql_connection_string "mysql://fivem_user:MotDePasseComplexe@mysql.exemple.fr:3306/fivem_12345?charset=utf8mb4"

ensure oxmysql
ensure qb-core

Le paramètre charset=utf8mb4 permet de gérer correctement un ensemble étendu de caractères Unicode.

Oxmysql accepte aussi une écriture en valeurs séparées par des points-virgules :

set mysql_connection_string "user=fivem_user;password=MotDePasseComplexe;host=mysql.exemple.fr;port=3306;database=fivem_12345;charset=utf8mb4"

Les deux formats sont valides. Utilisez celui fourni ou recommandé dans votre environnement, sans mélanger les deux syntaxes sur une même ligne.

Gérer les caractères spéciaux du mot de passe

Dans le format mysql://, certains caractères du mot de passe ont un rôle particulier dans une URL. Ils doivent alors être encodés.

Par exemple, le caractère @ devient :

%40

Un mot de passe fictif comme :

Mot@Passe

devient dans l’URL :

Mot%40Passe

La chaîne correspondante serait :

set mysql_connection_string "mysql://fivem_user:Mot%40Passe@mysql.exemple.fr:3306/fivem_12345?charset=utf8mb4"

Si votre mot de passe contient plusieurs caractères réservés et que la connexion échoue, utilisez le format séparé par des points-virgules ou encodez correctement chaque caractère.

Importer le fichier SQL d’ESX ou QBCore

La connection string permet de joindre la base, mais celle-ci doit aussi contenir les tables attendues par votre framework.

Les recipes txAdmin officielles peuvent réaliser cet import automatiquement. Vérifiez néanmoins le contenu de la base avant de conclure que l’installation est terminée.

Un fichier SQL se présente généralement ainsi :

es_extended.sql
legacy.sql
qbcore.sql
players.sql
vehicles.sql

Le nom varie selon le framework et la version du dépôt.

Pour importer un fichier avec une interface comme phpMyAdmin :

  1. ouvrez l’outil de gestion MySQL depuis l’espace client ;
  2. sélectionnez la base utilisée par FiveM ;
  3. ouvrez l’onglet d’importation ;
  4. choisissez le fichier .sql ;
  5. vérifiez l’encodage proposé ;
  6. lancez l’import ;
  7. contrôlez que les tables apparaissent.

Après l’import, une installation ESX peut contenir des tables relatives aux utilisateurs, métiers ou véhicules. Une installation QBCore contient généralement des tables consacrées aux joueurs et aux données de ses ressources.

Sélectionnez toujours la bonne base avant l’import. Importer le fichier dans une autre base ne provoquera pas nécessairement d’erreur, mais votre serveur ne trouvera aucune table.

N’importez pas plusieurs fois un même fichier SQL sans lire son contenu. Certaines instructions créent uniquement les tables manquantes, tandis que d’autres peuvent modifier ou réinitialiser des données.

Des sauvegardes automatiques sont incluses pour vous aider à restaurer. Conservez aussi vos propres exports réguliers : vous restez responsable de vos données.

Vérifier la connexion à la base de données

Démarrez le serveur depuis txAdmin, puis ouvrez la console en direct. Oxmysql doit se lancer avant ESX, QBCore et les scripts dépendants.

Une connexion réussie affiche normalement un message proche de :

[script:oxmysql] Database server connection established!

Vérifiez ensuite que les ressources du framework démarrent sans erreur SQL.

La validation la plus fiable consiste à tester la persistance :

  1. connectez-vous au serveur ;
  2. créez un personnage ;
  3. obtenez ou modifiez une donnée, comme un solde ;
  4. déconnectez-vous ;
  5. redémarrez le serveur ;
  6. reconnectez-vous.

Le personnage et ses données doivent être restaurés. Si le framework fonctionne seulement jusqu’au redémarrage, consultez les erreurs SQL et vérifiez les tables.

Dépanner les erreurs oxmysql

Identifiants incorrects

Une erreur contenant Access denied indique généralement un mauvais utilisateur, un mauvais mot de passe ou une adresse non autorisée.

Access denied for user

Recopiez les identifiants depuis l’espace client et vérifiez les caractères spéciaux du mot de passe.

Base introuvable

Le message suivant signifie que le nom indiqué dans la connection string n’existe pas :

Unknown database

Vérifiez précisément la partie située après le port :

mysql://utilisateur:mot_de_passe@hote:3306/NOM_DE_LA_BASE

Oxmysql démarre trop tard

Si un script affiche :

No such export in resource oxmysql

placez oxmysql avant le framework :

ensure oxmysql
ensure es_extended

ou :

ensure oxmysql
ensure qb-core

Tables manquantes

Une erreur comme :

Table 'fivem_12345.users' doesn't exist

indique généralement que le fichier SQL n’a pas été importé, qu’il a été importé dans une autre base ou que le script attend une table supplémentaire.

Connexion impossible

Si oxmysql ne peut pas établir de connexion, vérifiez :

  • l’hôte ;
  • le port ;
  • l’état de la base ;
  • les identifiants ;
  • le nom de la base ;
  • l’encodage des caractères réservés ;
  • l’absence d’espace dans la chaîne.

Les causes les plus fréquentes sont une connection string incorrecte, une base inexistante, un mauvais ordre de démarrage ou des tables SQL manquantes.

En résumé

  • Configurer oxmysql permet de connecter ESX, QBCore et vos scripts à la base de données FiveM.
  • Récupérez l’hôte, le port, la base, l’utilisateur et le mot de passe depuis l’espace client TalCloud.
  • Ne publiez jamais vos identifiants MySQL.
  • Placez oxmysql dans resources/ et vérifiez la présence de son fxmanifest.lua.
  • Ajoutez la connection string avant ensure oxmysql dans server.cfg.
  • Utilisez le format mysql://user:pass@host:port/database?charset=utf8mb4 ou la syntaxe séparée par des points-virgules.
  • Encodez les caractères réservés si votre mot de passe est inclus dans une URL.
  • Démarrez oxmysql avant ESX, QBCore et les scripts qui l’utilisent.
  • Importez le fichier .sql du framework dans la bonne base.
  • Recherchez Database server connection established! dans la console.
  • Testez la persistance d’un personnage après un redémarrage.
  • Pour configurer oxmysql sur un serveur FiveM hébergé en France avec panel de gestion, stockage NVMe, Anti-DDoS L3/L4/L7 inclus et support francophone, consultez l’offre serveur FiveM TalCloud.