Så ansluter du en databas till din FiveM-server
Varje roleplay-framework som är värt att köra på FiveM sparar sina data i MySQL: karaktärer, jobb, fordon, inventory och bankkonton. Din FiveM-server hos DoomHosting har en MySQL-databasplats som du skapar själv under fliken Databaser i panelen, och det räcker med en rad i server.cfg för att ansluta den. Den här guiden går igenom hur du skapar databasen, sätter samman den connection string oxmysql vill ha, var raden ska stå och hur du importerar ett ESX- eller QBCore-schema.
Det här behöver du
- En FiveM-server hos DoomHosting som redan startar. Om den inte bootar än, sätt licensnyckeln först: så skaffar du en FiveM-licensnyckel.
- oxmysql, den resource alla moderna frameworks använder för att prata med MySQL. Både ESX och QBCore levereras med den.
- En MySQL-klient på datorn om du ska importera ett framework-schema. HeidiSQL (Windows) och DBeaver (alla plattformar) är gratis.
Skapa databasen i panelen
- Öppna dina spelservrar och klicka på din FiveM-server.
- Under Avancerat i sektionsmenyn öppnar du Databaser.
- Klicka på Ny databas, skriv ett kort namn (bara bokstäver, siffror och understreck) och bekräfta.
Vi skapar databasen och en tillhörande användare med ett genererat lösenord. Namnet får automatiskt ett prefix, så en databas du kallar esx blir något i stil med s1708_esx, och användaren ser ut som u1708_esxdemo.

Raden visar tre fält med inloggningsuppgifter. Värd är databasadressen inklusive port, Användarnamn är den genererade användaren och Lösenord är dolt tills du klickar på ögonikonen. Klicka på ett fält för att kopiera värdet. Till höger sitter två knappar: Nytt lösenord roterar lösenordet (allt som fortfarande använder det gamla slutar fungera direkt), och papperskorgen tar bort databasen och all dess data permanent.

Kortets rubrik räknar dina platser, till exempel 1 av 1 databaser använda. En plats räcker för en vanlig ESX- eller QBCore-installation, eftersom ett framework och alla dess resources delar samma databas. Kontakta supporten om din uppsättning verkligen behöver en till.
Sätt samman din connection string
oxmysql läser en enda convar, mysql_connection_string, och tar emot två format:
set mysql_connection_string "mysql://u1708_esxdemo:[email protected]:3306/s1708_esx"
set mysql_connection_string "user=u1708_esxdemo;password=YourPassword;host=203.0.113.10;port=3306;database=s1708_esx"
Hämta de fyra värdena direkt från fliken Databaser: användaren från Användarnamn, lösenordet från Lösenord, databasnamnet från radens rubrik och adressen från Värd. Värd-fältet innehåller redan porten i formen adress:port. I URI-formatet klistrar du in det som det är efter @. I nyckel- och värdeformatet delar du det vid kolonet: adressen i host= och porten i port=.
Använd det andra formatet. Lösenorden vi genererar blandar bokstäver och siffror med tecken ur uppsättningen ! @ = . + ^, och oxmysql listar ; , / ? : @ & = + $ # som reserverade tecken i en connection string. Ett lösenord med @, = eller + bryter mysql://-formatet tyst: parsern läser en del av lösenordet som värdnamn och anslutningen misslyckas med uppgifter som faktiskt är helt korrekta. Formen user=...;password=... har inte den fällan.
Lägg in den i server.cfg
- Öppna fliken Filer och klicka på
server.cfgför att redigera den i webbläsaren. - Lägg connection stringen ovanför alla resource-rader och starta oxmysql före ditt framework:
set mysql_connection_string "user=u1708_esxdemo;password=YourPassword;host=203.0.113.10;port=3306;database=s1708_esx"
ensure oxmysql
ensure es_extended
- Spara filen och starta sedan om servern högst upp i panelen. Convars läses bara vid boot, så en ändring gör ingenting förrän servern startat om.

Två saker ska du låta vara. Vår start skriver om raderna endpoint_add_tcp och endpoint_add_udp till din tilldelade port vid varje boot, så det är ingen idé att ändra dem. Och behandla server.cfg som en hemlig fil: den innehåller nu ditt databaslösenord bredvid licensnyckeln, så klistra aldrig in den i en Discord-supportkanal utan att först dölja båda.
Om du slog på txAdmin med chippen Aktivera txAdmin på Översikt kör FXServer inte längre /home/container/server.cfg direkt. txAdmin styr uppstarten och kör servern från sin egen datamapp, /home/container/txData, så redigera den server.cfg som ligger i deployment-mappen där, eller använd CFG-editorn som finns inbyggd i txAdmin. Du når webbpanelen med Öppna txAdmin på Översikt.
Installera oxmysql
Titta i resources först. ESX- och QBCore-recipes innehåller nästan alltid oxmysql redan, och en andra kopia ger en namnkonflikt mellan resources, inte en snabbare server.
Om den saknas hämtar du senaste releasen från oxmysql-repot, packar upp den och laddar upp mappen oxmysql till din resources-mapp via Filer-fliken. Lägg sedan ensure oxmysql ovanför dina framework-resources som ovan. Om din uppsättning fortfarande har mysql-async eller ghmattimysql, ta bort dem: oxmysql tillhandahåller deras exports, och kör du båda får du dubbla query handlers.
oxmysql-dokumentationen täcker resten, bland annat set mysql_debug true som skriver ut varje query i konsolen och set mysql_slow_query_warning 150 som flaggar de långsamma.
Om ESX och QBCore
Båda frameworken frågar via oxmysql, så en connection string räcker för både frameworket och alla resources ovanpå. Vad inget av dem gör åt dig är att skapa tabellerna. Dem importerar du själv:
- Installera HeidiSQL eller DBeaver på datorn.
- Skapa en ny MySQL- eller MariaDB-anslutning med adressen och porten från Värd samt Användarnamn och Lösenord från fliken Databaser. Användaren vi skapar får ansluta från valfri adress, så en klient på din hemuppkoppling fungerar utan extra steg.
- Välj din databas, öppna frameworkets
.sql-fil och kör den.
För ESX är det SQL-filen till es_extended plus det varje addon själv levererar. Se ESX-dokumentationen. För QBCore importerar du först dumpen till qb-core och därefter filerna för varje resource, som beskrivs i QBCore-dokumentationen. Importera schemat innan du bootar med frameworket påslaget, annars fylls konsolen med fel om saknade tabeller vid start.
En sak värd att veta om backuper: panelens backuper arkiverar dina serverfiler, inte MySQL-databasen. Exportera en .sql-dump med din klient före en stor framework-uppdatering eller en wipe.
Vanliga problem
Failed to connect eller nekad åtkomst vid boot. Nio av tio gånger står det fortfarande localhost i strängen. Det körs ingen MySQL-server inuti din spelcontainer, så värden måste vara adressen från fliken Databaser.
Uppgifterna är rätt men inloggningen misslyckas ändå. Lösenordet innehåller @, = eller + och du använder mysql://-formatet. Byt till formen user=...;password=...;host=.... Ett klick på Nytt lösenord kan också ge dig ett renare lösenord, men det andra formatet är den säkra lösningen.
Resources startar innan convaren är satt. oxmysql ansluter när den startar, så raden set mysql_connection_string måste stå ovanför ensure oxmysql. Använd set, inte sets eller setr: de skickar värdet till alla spelare som ansluter.
Ingenting hände efter ändringen i konfigurationen. Starta om servern. En igångvarande server läser aldrig server.cfg igen.
Fel om okända tabeller eller kolumner. Anslutningen fungerar men schemat importerades aldrig, eller hamnade i fel databas. Kontrollera i HeidiSQL att tabellerna ligger i din databas med prefix och inte i en annan som du skapat själv.
Du redigerade server.cfg men txAdmin är på. txAdmin kör sin egen kopia under /home/container/txData. Redigera den, annars läses filen du ändrade helt enkelt aldrig.
Fliken Databaser säger att databaser inte är tillgängliga. Din server har ingen databasplats. Kontakta supporten så tittar vi på tjänsten.
Nästa steg
Ditt framework har nu någonstans att spara sina data. Är du fortfarande mitt i installationen hittar du guiden till licensnyckeln här: så skaffar du en FiveM-licensnyckel. Alla detaljer om planer, hårdvara och priser finns på sidan FiveM server hosting.
