MySQL: Too many connections (General Error)
MySQL: Too many connections (General Error)
Fick detta felmeddelande. Kanske kan vara bra att känna till?
Moderator Alien: Kompletterade rubriken.
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
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.)
("Just nu" ≈ 15:55; postningen är något seg.)
Re: MySQL: Too many connections
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
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.
EDIT: jag har förutsatt att det är känt, det borde synas i några loggar någonstans.
Re: MySQL: Too many connections
Kanske något cron jobb som drar igång vid den tiden?
Eller morgonstund för aspies..
Eller morgonstund för aspies..
- plåtmonster
- Inlägg: 15480
- Anslöt: 2010-03-23
- Ort: Nära havet
Re: MySQL: Too many connections
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.
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.
Re: MySQL: Too many connections
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
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...
Re: MySQL: Too many connections
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... ;)
Re: MySQL: Too many connections
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.
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
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.
Re: MySQL: Too many connections
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.
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
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).
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).
Re: MySQL: Too many connections
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.
Re: MySQL: Too many connections
Låter som om det ligger något gammalt skräp kvar i databasen, som inte blivit konvertera på rätt sätt.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.
- Mellanvärld
- Inlägg: 1243
- Anslöt: 2010-11-28
- Ort: Göteborg
Re: MySQL: Too many connections
Aspergerforum är väl inte den enda som använder MySQL-servern? De andra räknas väl också in i antalet connections?
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?
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?
Re: MySQL: Too many connections
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).
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).
Re: MySQL: Too many connections
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.
Re: MySQL: Too many connections
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.
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.
Re: MySQL: Too many connections
Forumtekniker:
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?
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?
Re: MySQL: Too many connections
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.
Re: MySQL: Too many connections
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