FivemFivem·Palvelimen hallinta

Näin korjaat oxmysql Access denied FiveM-palvelimella

ER_ACCESS_DENIED_ERROR FiveM-palvelimella ei johdu juuri koskaan oikeuksista. Näin erikoismerkit rikkovat oxmysql-yhteysmerkkijonon ja miksi koodaus pahentaa sitä.

Noah
5 min lukuaika
7. syyskuuta 2026
Viimeksi päivitetty: 28. syyskuuta 2026
Sisällysluettelo

FiveM-palvelimesi käynnistyy, oxmysql latautuu, ja sitten konsoli täyttyy rivistä ER_ACCESS_DENIED_ERROR: Access denied for user. Kopioit isännän, käyttäjätunnuksen ja salasanan suoraan paneelista, joten ilmeinen johtopäätös on, ettei tietokantakäyttäjä saa yhdistää palvelimeltasi.

Kyse ei ole siitä lähes koskaan. Valtaosassa näistä tapauksista tunnukset ovat oikein ja ongelma on yhteysmerkkijono. Salasanassasi on merkki, jota käyttämäsi muoto ei pysty kuljettamaan, joten oxmysql lähettää MySQL:lle eri salasanan kuin sen, jonka kopioit, ja MySQL tekee juuri oikein. Se kieltäytyy.

Miksi salasana menee rikki

oxmysql hyväksyy asetuksessa mysql_connection_string kaksi eri muotoa, ja ne hajoavat eri merkeistä.

Avain ja arvo

set mysql_connection_string "user=s12_user;password=SECRET;host=1.2.3.4;port=3306;database=s12_economy;charset=utf8mb4"

oxmysql pilkkoo tämän merkillä ; ja sitten merkillä = ja pitää kaksi ensimmäistä osaa. Niinpä ; tai = missä tahansa kohtaa salasanaa katkaisee sen äänettömästi. Ei varoitusta, ei jäsennysvirhettä, vain lyhyempi salasana kuin liittämäsi.

URI-muoto

set mysql_connection_string "mysql://s12_user:[email protected]:3306/s12_economy?charset=utf8mb4"

Tämä tunnistetaan säännöllisellä lausekkeella, ja käyttäjätiedot pilkotaan merkillä :. Osuma jatkuu ahneesti viimeiseen merkkiin @, joten @ salasanassa on tässä täysin turvallinen. Merkit :, /, ? ja # eivät ole, koska kukin niistä päättää oman osansa URI:sta.

Merkki " rikkoo molemmat muodot, koska koko arvo on lainausmerkkien sisällä olevassa convarissa ja lainausmerkki sulkee sen liian aikaisin.

Ei siis ole yhtä muotoa, joka selviäisi kaikista salasanoista. On muoto, joka selviää sinun salasanastasi, ja väärän valitseminen on juuri se, mikä tuottaa access denied -virheen.

Älä prosenttikoodaa salasanaasi

Tämä on aiheen useimmin toistettu huono neuvo, ja se pahentaa tilannetta.

oxmysqlin URI-jäsennin ei tee mitään prosenttipurkua. Jos salasanasi on p@ss ja kirjoitat sen avuliaasti muodossa p%40ss, oxmysql lähettää MySQL:lle kirjaimelliset merkit p%40ss, mikä ei ole salasanasi, ja saat access denied -virheen aivan uudesta syystä. URI-muodossa salasana menee sisään raakana, täsmälleen sellaisena kuin paneeli sen näyttää.

Prosenttikoodaus on oikein monien muiden ohjelmistojen tietokanta-URI:ssa. Täällä se on väärin.

Ratkaisu: kopioi rivi, jonka paneeli rakentaa

Sinun ei tarvitse päätellä, minkä muodon salasanasi vaatii. Avaa palvelimesi paneelissa, mene Tietokannat-välilehdelle ja katso tietokantasi alla olevaa korttia oxmysql-yhteysmerkkijono.

Kortti sisältää täydellisen rivin set mysql_connection_string "...", valmiiksi koottuna isännästä, portista, käyttäjätunnuksesta, tietokannan nimestä ja salasanasta, siinä kahdesta muodosta, joka pystyy kuljettamaan juuri sinun salasanasi. Käytä kopiointipainiketta äläkä maalaa tekstiä käsin, jotta oikea salasana kopioituu silloinkin, kun se on näytöllä peitettynä.

Jos kortti näyttää merkkijonon sijaan varoituksen ja painikkeen Luo uusi salasana, salasanassasi on yhdistelmä, jota kumpikaan muoto ei pysty ilmaisemaan, esimerkiksi " tai sekä = että :. Paina painiketta. Saat uuden toimivan salasanan sekunnissa, ja kortti näyttää sen jälkeen kelvollisen rivin.

Mihin rivi kuuluu

Liitä se tiedostoon server.cfg, lähelle alkua.

Ainoa sääntö, jolla on väliä, on järjestys. Rivin set mysql_connection_string on oltava ennen riviä ensure oxmysql. oxmysql lukee convarin käynnistyessään, joten kauempana tiedostossa oleva yhteysmerkkijono luetaan liian myöhään ja resurssi käynnistyy tyhjin käsin.

Jos txAdmin hallinnoi palvelintasi, lisää se txAdminin asetuksiin sen sijaan, että muokkaisit tiedostoa server.cfg käsin. txAdmin luo osan asetuksista uudelleen, ja tiedostoon tehty muutos voi ylikirjoittua.

Käynnistä palvelin uudelleen muutoksen jälkeen. Pelkkä resurssin uudelleenlataus ei riitä, koska convar luetaan resurssin käynnistyessä.

Varmista että se toimi

Avaa Konsoli-välilehti ja käynnistä uudelleen. Terve oxmysql tulostaa rivin, joka vahvistaa yhteyden tietokantaasi ja kertoo MySQL-version. Jos tunnukset ovat väärin, saat access denied -rivin heti uudelleen, sekunnin tai kahden kuluessa resurssin käynnistymisestä.

Yhteys, joka roikkuu monta sekuntia ja kaatuu sitten, on eri ongelma. Silloin isäntä tai portti ei ole tavoitettavissa, eikä kyse ole salasanasta.

Vianetsintä

Access denied, ja salasanassani on ; tai =. Olet avain ja arvo -muodossa, ja salasanasi katkeaa. Vaihda URI-muotoon tai vaihda salasana.

Access denied, ja salasanassani on :, /, ? tai #. Olet URI-muodossa, ja salasana katkeaa siihen merkkiin. Vaihda avain ja arvo -muotoon tai vaihda salasana.

Access denied, ja salasanassani on @. URI-muodossa tämä on kunnossa, eikä @ ole ongelmasi. Tarkista sen sijaan käyttäjätunnus ja tietokannan nimi. Jos prosenttikoodasit merkin @ muotoon %40, peru se.

Access denied tyhjälle käyttäjätunnukselle. Rivi on pikemminkin väärin muodostettu kuin sisällöltään väärä. Yleensä syynä on eksynyt lainausmerkki tai puuttuva set. Kopioi koko rivi paneelista uudelleen.

Unknown database. Tietokannan nimi ja käyttäjätunnus näyttävät hämäävän samanlaisilta, koska molemmissa on sama luotu etuliite. Yhden liittäminen toisen paikalle käy helposti. Paneelissa käyttäjätunnus on arvo kohdassa Käyttäjätunnus, ja tietokannan nimi on rivin otsikko.

Connection timed out tai connect ECONNREFUSED. Ei liity tunnuksiin. Tarkista, että käytit paneelin isäntää kokonaisuudessaan kaksoispisteen jälkeisine portteineen etkä korvannut sitä osoitteella localhost tai 127.0.0.1. Tietokantasi ei sijaitse samalla koneella kuin pelipalvelimesi, joten nuo osoitteet osoittavat aivan muualle.

Eilen toimi, tänään ei. Joku on painanut tietokannan kohdalla Uusi salasana, joko sinä tai joku muu, jolla on pääsy paneeliin. Uusi salasana mitätöi vanhan välittömästi. Kopioi uusi rivi.

oxmysql sanoo, ettei yhteysmerkkijonoa löytynyt. Convar on tiedostossa server.cfg rivin ensure oxmysql alapuolella, tai txAdmin on ylikirjoittanut muutoksesi.

Usein kysytyt kysymykset

Onko tietokantakäyttäjä rajattu tiettyihin isäntiin? Ei. Paneelista luodut tietokannat ottavat vastaan yhteyksiä mistä tahansa isännästä, joten isännän perusteella estetty tietokantakäyttäjä ei ole access denied -virheesi syy. Tämä kannattaa sanoa suoraan, koska sitä lähes jokainen epäilee ensimmäisenä.

Mitä muotoa minun pitäisi käyttää? Sitä, jonka paneeli antaa. Se valitsee oletuksena avain ja arvo -muodon ja vaihtaa URI-muotoon, kun salasanasi sitä vaatii.

Voinko vain poistaa erikoismerkit salasanastani? Käytännössä kyllä. Painamalla Uusi salasana saat tuoreen, ja jos se osuu johonkin, jota molemmat muodot pystyvät kuljettamaan, paneeli näyttää yksinkertaisemman muodon. Et voi valita salasanaa itse, joten uuden luominen on tie ystävällisempään.

Koskeeko tämä ESX:ää ja QBCorea? Kyllä. Molemmat on rakennettu oxmysqlin päälle ja lukevat saman convarin. Sama rivi toimii kummallekin.

Tarvitsenko kohdan charset=utf8mb4? Se ei ole pakollinen, mutta pidä se. oxmysql käyttää utf8mb4:ää oletuksena muutenkin, ja juuri sen kirjoittaminen näkyviin estää sen, että pelaajanimien aksenttimerkit tallentuvat väärin palvelimilla, joiden MySQL-oletus on vanhempi.

Voinko laittaa yhteysmerkkijonon resurssin asetuksiin sen sijaan? Älä. Frameworkit lukevat sen convarista, ja toinen kopio resurssitiedostossa on yksi paikka lisää pidettäväksi ajan tasalla, kun salasana vaihdetaan.

Pitäisikö minun jakaa yhteysmerkkijononi apua pyytäessäni? Ei. Se sisältää salasanan kokonaisuudessaan. Jaa konsolin virherivi ja kerro käyttämäsi muoto, älä koskaan itse merkkijonoa.


Saatko yhä access denied -virheen, vaikka kopioit rivin paneelista? Ota yhteyttä tukeen palvelimesi nimellä ja tarkalla konsolitulosteella ilman salasanaa, niin tarkistamme tietokannan meidän puoleltamme. Eikö sinulla ole vielä palvelinta? Katso FiveM-palvelimen vuokraus.

Fivem

Valmiina pelaamaan Fivem?

Saat oman palvelimesi käyntiin minuuteissa.