PDA

Bekijk Volledige Versie : MySQL traag bij aparte MySQL host



webster
06/04/06, 20:46
Hallo,

Ik heb dit forum al uitgebreid doorzocht, maar helaas kan ik geen oplossing vinden op mijn probleem, dit probleem is het volgende.

Een website, in PHP, die gebruik maakt van een MySQL db werkt op 'normale' snelheid indien de site en de db op dezelfde server staan.
Zodra ik de db op een aparte MySQL server plaats (met dezelfde versies van alle software, gelijke CPU en gelijke RAM, hhd's etc etc) is het zo traag als stront!

De db wordt gekoppeld d.m.v. het IPadres van de hostserrver. De server gebruikt de standaard poort 3306.

Een gemiddelde pagina wordt niet in 0,012 sec gegenereerd, maar in ruim 9 seconden.

Ik heb het geprobeerd zonder firewall (dus helemaal eraf), virusscanner uit, antispyware filter eraf, maar dat heeft geen enkel effect.

De CPU load of het memory gebruik zijn normaal en fluctueren nauwelijks gedurende de query.

OS=win2003
Plesk 7.5.6

Ik hoop dat iemand een oplossing weet om de snelheid erin te krijgen....

Bedankt,

FransVanNispen
06/04/06, 22:18
Als er veel data heen en weer moet om de pagina op te bouwen, kan de netwerk verbinding natuurlijk de bottlenek zijn.

Is de server verbonden via 10Mbit/100Mbit of 1Gbit met de database server?
En wat is de load op het netwerk waar de data over gaat?

almar
06/04/06, 22:56
Je kunt het eventueel in MySQL zien aan de status writing to net..

webster
06/04/06, 23:23
Alles zit met gbit op eenswitch die nauwelijks load heeft.
Daarnaast nog wat info, de MySQL server (die aparte host) bevat alleen 2 databases. 1 van een MB of 5 de andere van een MB of 50. Alleen de kleine db wordt gequeried.
De opbouw van de pagina's bevat weining queries

ivs
06/04/06, 23:27
Is de config van MySQL wel het zelfde vooral de variabele voor het cachen?

Greta
07/04/06, 17:24
Ik heb hetzelfde probleem ook, en heb nog geen oplossing kunnen vinden. Het probleem zit hem volgens mij in het connecten naar de database. Dit duurt bij mij ongeveer 6 a 7 seconden. Het laden van de site gaat verders wel snel.

rudy
10/04/06, 17:36
Het probleem zit hem volgens mij in het connecten naar de database. Dit duurt bij mij ongeveer 6 a 7 seconden. Het laden van de site gaat verders wel snel.

Heeft te maken met je DNS, controleer je reverse DNS configuratie.

Greta
10/04/06, 20:27
Zou kunnen maar ik connect de database op ip nummer, dan heb ik volgens mij niets meer met DNS en reverse DNS te maken. Ik dacht namelijk in eerste instantie ook dat dit een DNS probleem was vandaar dat ik al connect op ip nummer.

webster
10/04/06, 21:40
Schijnbaar niemand die hier verstand van heeft, of bereid is dit te delen.....
Jammer.....

mind
10/04/06, 21:57
Schijnbaar niemand die hier verstand van heeft, of bereid is dit te delen.....
Jammer.....

Oplossing komt je niet aanvliegen, maar de oorzaak is waarschijnlijk wel gegeven.
Tik eens "mysql reverse dns" en kijk bij de eertse treffer. Mischien valt het kwartje dan wel ;)

Greta
11/04/06, 11:56
Is het ook mogelijk om --skip-name-resolve in de my.ini te zetten?

almar
11/04/06, 12:06
Schijnbaar niemand die hier verstand van heeft, of bereid is dit te delen.....
Jammer.....

Ik heb het idee dat je een beetje een sneer probeert te geven. We begrijpen je frustatie, maar probeer het niet op anderen af te reageren.

Keenondots
11/04/06, 12:50
Hoeveel queries/s praten we hier over? Als dat veel is (>500) kan het de network latency zijn (localhost is daarin altijd sneller). Ander zou ik inderdaad naar je (reverse) DNS kijken.

Freezer
11/04/06, 14:07
Welk OS?

Zelf draai ik ook mysql apart van me www servers, en daar geen problemen. Heb wel een 2e NIC en aparte switch om verkeer van mysql over te laten gaan.

WinuX
11/04/06, 14:49
@ Freezer kijk eens in de openings post daar staat de os al in.

@webster
Je zou eens moeten kijken of je verbinding eerst naar buiten gaat. Dus via internet of dat hij intern over het netwerk gaat.
Misschien inderdaad een idee om netwerkkaart erbij te plaatsen die over apparte switch naar de DB server te laten lopen.

Aannemende dat de switch die nu gebruikt wordt, rechtstreeks naar buiten is verbonden.

D. ter Horst
11/04/06, 15:24
Wat je kunt doen is gewoon even hosts in de hostfile zetten op beide bakken, en dan hostname gebruiken die je dan in je hostfile gegooid hebt. Lijkt mij een makkelijke manier om dat te testen? Dan zit je alleen nog met dat reverse dns verhaal, ik ik denk niet dat een mysql server een reverse dns lookup doet... ik zou niet weten waarom iig.

edit: of gewoon een tracert/ping natuurlijk om te kijken waar je heen gaat ;)

webster
11/04/06, 20:28
@ Mind : Kan me niet voorstellen dat een DNS instelling iets te maken kan hebben met het probleem, ik connect rechtstreeks op het IP adres van de server. Correct me if I'm wrong, hier dus geen vallende kwartjes. Heb de optie ook geprobeert (zo ben ik dan) en ook geen gewnest resultaat, mijn gedachte wordt dus bevestigd.

@ almar, Inderdaad zeer frustreren, maar neem het niemand kwalijk of zo, maar je ziet dat er na een dergelijke opmerking toch weer een aantal reacties binnenkomen....

@ keenondots: HEt is nu een testopstelling waarbij ik slechts een database, van circa 2 MB, aan een testsite koppel. Daarop ben ik de enige gebruiker. Aantal connecties circa 15 - 20 per pagina.

@ winuX : heb 2 Nic's een voor extern een vor intern, metric staat ingesteld, eerste connectie staat op externe netwerk. Ik gebruik ook het externe IP adres van de dbserver.

@ greta : Hier nog geen resultaat, ben jij eral uit?

@ allemaal : ik blijf proberen, andere oplossingen ideetjes blijven van harte welkom.

@allemaal : probleem opgelost, lag inderdaad aan de DNS resolve. Na de manual van MqSQL nog eens heel goed doorgelezen te hebben blijkt mijm eerdere gedachte onjuist. MySQL zoekt de host op die de query aanvraag, ik dacht dat de server die de query vraagt op zoek moest naar de host (omgekeerd dus). Heb bu de skip-name-resolve in de my.ini staan en de server herstart.

Werkt dus wel, Hartelijke dank voor ieders meedenken, oplossingen etc, excusses voor mijn domheid :(

@ greta, ik ben eruit......

Greta
11/04/06, 21:43
Ja, mijn probleem is ook opgelost wat ik leest dat je skip-name-resolve gewoon zo in my.ini kunt zetten. En ik zat met dezelfde gedachten kronkel over resolve DNS als jij.

webster
11/04/06, 21:57
end of story, case closed, back to business!