| Visa föregående ämne :: Visa nästa ämne |
| Startad av: |
Meddelande |
chripps
Medlem i: 1881 dagar
Status: Offline
#725286
|
Skrivet: 2012-08-13 09:19
Ämne: Too many connections, problem
|
|
|
När jag kör några riktigt tunga databasfrågor så får jag upp felet Too many connections när jag försöker att nå sidan under tiden.
Finns det något variabel jag kan ändra på eller annat jag kan göra för att lösa detta? |
|
|
|
| Till toppen på sidan |
|
harald_b


Medlem i: 2526 dagar
Status: Online
#725287
|
Skrivet: 2012-08-13 10:50
Ämne:
|
|
|
I konfigurationsfilen för mysql (/etc/mysql/my.cnf) så finns en inställning som begränsar databasanslutningarnas antal:
1: [mysqld]
2: max_connections = 100
3:
|
Det kan finnas ytterligare konfigurationsfiler i /etc/mysql/conf.d/
Men även tunga databasfrågor skulle inte behöva så MÅNGA anslutningar, såvida inte någon sitter och trummar på länken till sidan medan man väntar.
Kolla upp att inte själva anslutningen till databasen kan ha hamnat i någon loop på något sätt. |
|
|
_________________ ettslagförkärleken.se |
| Till toppen på sidan |
|
chripps
Medlem i: 1881 dagar
Status: Offline
#725302
|
Skrivet: 2012-08-13 14:28
Ämne:
|
|
|
Okej, ska kika på det.
Vilket är bästa sättet att ansluta till db?
Jag kör såhär men det känns lite stenåldern av någon anledning.
1: 2: $opendb = mysql_connect($dbhost, $dbuser, $dbpass)
3: or die("Fel" . mysql_error());
4: 5: mysql_select_db($dbname, $opendb)
6: or die ("Fel" . mysql_error());
7: 8:
|
|
|
|
|
| Till toppen på sidan |
|
Wedge


Medlem i: 3919 dagar Från: Järfälla
Status: Offline
#725303
|
Skrivet: 2012-08-13 14:37
Ämne:
|
|
|
Det är inget fel att ansluta till databasen så.
Felet (om det ska kallas för fel) är att för många instanser använder databasen samtidigt.
Antingen kan man ändra i serverkonfigurationen och höja gränsen för antalet samtidiga anslutningar.
Eller så optimerar man koden så att varje anslutning tidsminimeras.
"Riktigt tunga", skriver du... kan du förbättra prestanda genom indexering? Eller köra tunga jobb nattetid? Bryta ned komplexiteten? Beräkna delresultat i förväg och "cachea"? |
|
|
_________________ Qualitum Webbhotell | Gomoku.se | PHP6.se
Skådebröd är fullt av optisk fiber |
| Till toppen på sidan |
|
chripps
Medlem i: 1881 dagar
Status: Offline
#725310
|
Skrivet: 2012-08-13 15:23
Ämne:
|
|
|
Nej, kan ju tyvärr inte det.
Vad är det högsta värdet man kan sätta på max_connections ? |
|
|
|
| Till toppen på sidan |
|
Wedge


Medlem i: 3919 dagar Från: Järfälla
Status: Offline
#725311
|
Skrivet: 2012-08-13 15:39
Ämne:
|
|
|
| chripps skrev: |
Nej, kan ju tyvärr inte det.
Vad är det högsta värdet man kan sätta på max_connections ? |
http://dev.mysql.com/doc//refman/5.5/en/too-many-connections.html
| Citat: |
| The maximum number of connections MySQL can support depends on the quality of the thread library on a given platform, the amount of RAM available, how much RAM is used for each connection, the workload from each connection, and the desired response time. Linux or Solaris should be able to support at 500 to 1000 simultaneous connections routinely and as many as 10,000 connections if you have many gigabytes of RAM available and the workload from each is low or the response time target undemanding. Windows is limited to (open tables × 2 + open connections) < 2048 due to the Posix compatibility layer used on that platform. |
Eller med andra ord - väldigt svårt att säga. |
|
|
_________________ Qualitum Webbhotell | Gomoku.se | PHP6.se
Skådebröd är fullt av optisk fiber |
| Till toppen på sidan |
|
|