MySQL: Too many connections (General Error)

Foruminformation postas här. Förslag och kritik är också välkommet.

 Moderatorer: Alien, atoms

MySQL: Too many connections (General Error)

Inläggav plåtmonster » 2012-04-09 15:31:51

Fick detta felmeddelande. Kanske kan vara bra att känna till?

General Error
SQL ERROR [ mysql4 ]

Too many connections [1040]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.


Moderator Alien: Kompletterade rubriken.
plåtmonster
 
Inlägg: 15480
Anslöt: 2010-03-23
Ort: Nära havet

Re: MySQL: Too many connections

Inläggav Liebert » 2012-04-09 15:36:15

Vi testar lite olika RAM-konfigurationer. Kan vara det som spökar.
Liebert
Grundare
 
Inlägg: 1900
Anslöt: 2005-10-10

Re: MySQL: Too many connections

Inläggav Liebert » 2012-04-09 15:54:15

Vi har lite prestandaproblem. Stänger av söket tillfälligt.
Liebert
Grundare
 
Inlägg: 1900
Anslöt: 2005-10-10

Re: MySQL: Too many connections

Inläggav Zombie » 2012-04-09 15:59:32

Just nu har jag "inte tillåtelse att använda söksystemet" för egna eller obesvarade inlägg och åtminstone sökfunktionen samt knappen för aktuella inlägg är helt borta.

("Just nu" ≈ 15:55; postningen är något seg.)
Zombie
 
Inlägg: 18092
Anslöt: 2007-12-26

Re: MySQL: Too many connections

Inläggav plåtmonster » 2012-05-13 22:47:09

Nu hände det igen under flera minuter..
General Error
SQL ERROR [ mysql4 ]

Too many connections [1040]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.
plåtmonster
 
Inlägg: 15480
Anslöt: 2010-03-23
Ort: Nära havet

Re: MySQL: Too many connections

Inläggav nallen » 2012-05-13 22:50:36

Det händer nästan varenda kväll omkring 23-2330 ungefär.

EDIT: jag har förutsatt att det är känt, det borde synas i några loggar någonstans.
nallen
 
Inlägg: 19701
Anslöt: 2006-08-27
Ort: Vid Skogen

Re: MySQL: Too many connections

Inläggav plåtmonster » 2012-05-13 23:23:17

Kanske något cron jobb som drar igång vid den tiden?

Eller morgonstund för aspies.. ;)
plåtmonster
 
Inlägg: 15480
Anslöt: 2010-03-23
Ort: Nära havet

Re: MySQL: Too many connections

Inläggav weasley » 2012-05-14 0:37:52

Det är ett känt fel i phpbb3. Vad det beror på vet ingen riktigt. Den information om felet som står att finna handlar mest om att webhotellen provar alla möjliga inställningar och när inget funkar säger de att det måste vara fel på koden. Medan phpbb-kodarna hävdar att det bara är konfigurationen på webhotellet som är fel på.

Det -kan- ha att göra med att någon phpbb3-sida inte stänger sin connection som den ska, vilket gör att den långsamt äter upp max_connections. Vilken sida det är har ingen kommit fram till, enligt det jag läst senast i fallet.

Om någon har super google skillz, tar jag tacksamt emot urlar till mer information som gör att jag faktiskt kan åtgärda felet på riktigt.
weasley
 
Inlägg: 9949
Anslöt: 2007-04-18
Ort: eth0

Re: MySQL: Too many connections

Inläggav plåtmonster » 2012-05-14 1:45:52

Eller så byter man ut funktionen som kopplar upp mot databasen mot en som loggar alla anslutningar. Då kan man bokföra vilken funktion eller källkods fil som ansluter men ej stänger.
plåtmonster
 
Inlägg: 15480
Anslöt: 2010-03-23
Ort: Nära havet

Re: MySQL: Too many connections

Inläggav weasley » 2012-05-14 13:24:00

plåtmonster skrev:Eller så byter man ut funktionen som kopplar upp mot databasen mot en som loggar alla anslutningar. Då kan man bokföra vilken funktion eller källkods fil som ansluter men ej stänger.


Mina egna google powers har hittat folk som gjort just det, men det är olika från forum till forum. Det finns en fil som är mer misstänkt än andra (även om det inte är den enda), men att byta pconnect() mot connect() i den filen funkar inte för alla som får exakt det fel som hänvisaas till här. Ibland funkar det dock för de som får ett annat fel, där man överskridit user_max_connections(). Det skumma är att felet usex_max_connections() kan dyka upp i testmiljöer med 2-3 användare.

Har någon ett skript som kan simulera massor av connections via max_connections() och inte user_max_connections() så kan jag testa det på en testmiljö. Jag vill inte riskera att ändra i filer som tillhör forumet utan att ha testat det först - ujje vad ni skulle gorma på mej om det inte funkade.... ;-D

Att jag ber om ett skript är för att jag inte har lust att uppfinna hjulet igen. Finns det ett därute kan jag likagärna använda det ist f att tråckla ihop ett på egen hand. Lathet, skulle en del kalla det...
weasley
 
Inlägg: 9949
Anslöt: 2007-04-18
Ort: eth0

Re: MySQL: Too many connections

Inläggav Titti » 2012-05-14 14:37:00

weasley skrev:Att jag ber om ett skript är för att jag inte har lust att uppfinna hjulet igen. Finns det ett därute kan jag likagärna använda det ist f att tråckla ihop ett på egen hand. Lathet, skulle en del kalla det...


Prioritering och hushållande med resurser, kallar jag det... ;)
Titti
 
Inlägg: 9003
Anslöt: 2007-09-16

Re: MySQL: Too many connections

Inläggav plåtmonster » 2012-05-14 16:39:59

Om max_connections() returnerar max antal förbindelser "kvar". Så kan man ju enkelt ersätta den med "return 0;" ?, det hela beror som sagt på vad de där funktionerna gör.

Hoppas du testar på en testmaskin. ;)
plåtmonster
 
Inlägg: 15480
Anslöt: 2010-03-23
Ort: Nära havet

Re: MySQL: Too many connections

Inläggav weasley » 2012-05-14 21:55:03

plåtmonster skrev:Om max_connections() returnerar max antal förbindelser "kvar". Så kan man ju enkelt ersätta den med "return 0;" ?, det hela beror som sagt på vad de där funktionerna gör.

Hoppas du testar på en testmaskin. ;)


Nej max_connections är ett värde som specificeras i MySQL. Det är ingen funktion, förlåt för förvirringen. Jag har lite mycket att tänka på just nu så jag är lite splittrad. Däremot använder php pconnect() eller connect() för att skapa en anslutning. Därför vill jag ha ett skript som simulerar en mängd anslutningar för att se var det blir tokigt.

Ja, jag har en testmiljö, men där är det svårt att återskapa det här felet eftersom det i just den här testmiljön inte verkar dyka upp just det här felet.

Blörg, det känns som om jag har gröt i hjärnan.
weasley
 
Inlägg: 9949
Anslöt: 2007-04-18
Ort: eth0

Re: MySQL: Too many connections

Inläggav plåtmonster » 2012-05-14 22:51:45

Visst kan man skapa en massa anslutningar till databasen. Men jag tvivlar på att det testar det som går snett. Lutar mer åt att det är en anslutningar som görs men ej avslutas när de ska.

Ett alternativ är att skapa ett skript som loggar in och skriver en massa inlägg. Sen är det bara att skapa flera instanser av det för att pressa programvaran.
plåtmonster
 
Inlägg: 15480
Anslöt: 2010-03-23
Ort: Nära havet

Re: MySQL: Too many connections

Inläggav Miche » 2012-05-14 23:01:53

Vad händer om man påbörjar laddning av en sida (den skapar en koppling) men avbryter mitt i det, kan det vara orsaken som gör att kopplingen inte stängs som den ska?

Jag brukar ofta när jag postar ett inlägg nöja mig med meddelandet att det postats, sen avbryter jag, ligger då kopplingen kvar? Går det att lägga in en timeout på kopplingar så de stängs automatiskt om inget hänt på en stund (jag har varken erfarenhet av MySQL eller webbprogrammering).
Miche
 
Inlägg: 28797
Anslöt: 2009-01-08
Ort: Karlholmsbruk

Re: MySQL: Too many connections

Inläggav weasley » 2012-05-14 23:40:54

Miche skrev:Vad händer om man påbörjar laddning av en sida (den skapar en koppling) men avbryter mitt i det, kan det vara orsaken som gör att kopplingen inte stängs som den ska?

Det kan tex vara en orsak. Meddelanden som ska postas men laggar så att postaren stänger ner sidan kan vara en annan. Eller att någon klickar på en bild som laddats upp på forumet (dvs inte länkats) men sen avbryter laddningen. Eller... eller.. osv etc mm.


Miche skrev:Går det att lägga in en timeout på kopplingar så de stängs automatiskt om inget hänt på en stund

Det här är anledningen att utvecklarna av phpbb3 skyller på webhotellen istället för att kolla över sin kod. Det tillhör god kodningssed kap. 1A att man alltid stänger kopplingarna samt med jämna mellanrum stänger ner inaktiva kopplingar.

Men här verkar det alltså som om något någonstans inte funkar. Och webhotellens konfigurationer funkar inte för att avhjälpa problemen medan utvecklarna av phpbb3 verkar ha avskrivit det som en bugg eftersom de menar att det är ett konfigurationsproblem hos webhotellen.

Och ett tips på fix som hjälper för en del hjälper inte för alla. Gemensamt för alla är dock att de har uppgraderat från phpbb2. Där detta problem aldrig existerat, märk väl.
weasley
 
Inlägg: 9949
Anslöt: 2007-04-18
Ort: eth0

Re: MySQL: Too many connections

Inläggav Mellanvärld » 2012-05-18 0:56:17

weasley skrev:Gemensamt för alla är dock att de har uppgraderat från phpbb2. Där detta problem aldrig existerat, märk väl.
Låter som om det ligger något gammalt skräp kvar i databasen, som inte blivit konvertera på rätt sätt.
Mellanvärld
 
Inlägg: 1243
Anslöt: 2010-11-28
Ort: Göteborg

Re: MySQL: Too many connections

Inläggav Vildsvin » 2012-05-18 7:14:06

Aspergerforum är väl inte den enda som använder MySQL-servern? De andra räknas väl också in i antalet connections?
weasley skrev:
Miche skrev:Vad händer om man påbörjar laddning av en sida (den skapar en koppling) men avbryter mitt i det, kan det vara orsaken som gör att kopplingen inte stängs som den ska?

Det kan tex vara en orsak. Meddelanden som ska postas men laggar så att postaren stänger ner sidan kan vara en annan. Eller att någon klickar på en bild som laddats upp på forumet (dvs inte länkats) men sen avbryter laddningen. Eller... eller.. osv etc mm.

Men bilderna ligger väl inte på MySQL-servern? PHP-scriptet fortsätter väl att köra till det är klart eller till timeout även om användaren stänger sidan?
Vildsvin
 
Inlägg: 2291
Anslöt: 2011-01-03

Re: MySQL: Too many connections

Inläggav weasley » 2012-06-17 16:44:34

Forumtekniker:

Vi har dedikerad server där det just nu bara finns Aspergerforum.

Bilder som ni användare laddar upp hamnar i en mapp i filsystemet men indexeras i databasen så att de hamnar i rätt inlägg.

Databasen nyinstallerades i samband med den hackning vi råkade ut för för ett tag sedan. En databasdump av det gamla forumet lästes in via konverteringsverktyg.

Även forumet nyinstallerades då, men enligt all googletid jag lagt ner verkar det inte spela någon roll om det är nyinstallerad eller uppgraderad phpbb3 som används - herr General 1040 förekommer i de flesta miljöer.

Jag ska göra en ny googling, se om något ändrats sen senast. Har ni andra några idéer tar jag gärna emot dem för i dagsläget känner jag själv inte till något konkret jag kan göra. Eventuellt skulle jag kunna försöka prova något felsökningsscript här på forumet och se vad som händer. Men då skulle jag annonsera det långt i förväg så att så många som möjligt är medvetna om att något kan gå riktigt riktigt fel (vilket det kan göra när man ska leta fel som ingen hittat orsaken till... än).
weasley
 
Inlägg: 9949
Anslöt: 2007-04-18
Ort: eth0

Re: MySQL: Too many connections

Inläggav nallen » 2012-06-17 16:49:53

Du måste ju kunna ta reda på vilka databasfrågor som körs när det blir fel, i värsta fall genom att logga alla slagningar tillsammans med deras exekveringstid (många GiB blir det). Sen borde det gå ganska lätt att korrelera frågorna mot forumfunktioner. Vad man gör därefter är svårare att sia om.
nallen
 
Inlägg: 19701
Anslöt: 2006-08-27
Ort: Vid Skogen

Re: MySQL: Too many connections

Inläggav weasley » 2012-06-17 17:08:27

Forumtekniker:

Redan 2008 kände phpBB3 till felet men som ni ser är det inte en bugg - enligt dem.

http://tracker.phpbb.com/browse/PHPBB3-6966

Jag har sökt på olika permutationer av mysql phpbb3 error 1040 på google.
weasley
 
Inlägg: 9949
Anslöt: 2007-04-18
Ort: eth0

Re: MySQL: Too many connections

Inläggav weasley » 2012-06-17 17:10:26

Forumtekniker:

nallen skrev:Du måste ju kunna ta reda på vilka databasfrågor som körs när det blir fel, i värsta fall genom att logga alla slagningar tillsammans med deras exekveringstid(många GiB blir det). Sen borde det gå ganska lätt att korrelera frågorna mot forumfunktioner. Vad man gör därefter är svårare att sia om.


Ja, jag borde kört någon sorts show processlist nu när det hängde sej nyligen.

Men samtidigt vill jag ju inte att forumet ska vara nere för länge.

Kanske kan scripta ihop något?
weasley
 
Inlägg: 9949
Anslöt: 2007-04-18
Ort: eth0

Re: MySQL: Too many connections

Inläggav nallen » 2012-06-17 17:19:58

Finns det inga vettiga debugging-hooks i mysqld? Så du kan trigga på att det går snett. Eller nåt som kan räkna körtid för frågor, kanske avsluta dem som tar onormalt lång tid.
nallen
 
Inlägg: 19701
Anslöt: 2006-08-27
Ort: Vid Skogen

Re: MySQL: Too many connections

Inläggav plåtmonster » 2012-06-17 17:22:44

Du får ordna någon slags "svart låda" som jag hintat om tidigare.
plåtmonster
 
Inlägg: 15480
Anslöt: 2010-03-23
Ort: Nära havet

Återgå till Regler, nyheter och synpunkter



Logga in