Risolvere il problema a questo avviso: "Too many connections"

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Come da titolo come è possibile risolvere il problema che ogni tanto ho Too many connections mysql_connect?

Buona giornata ed aspetto risposte..
Saluti,
luigi
 
mi salta fuori questo:
Warning: mysql_connect() [function.mysql-connect]: Too many connections in /home/mhd-01/www..it/htdocs/website/db/db.php on line 21

Fatal error: Too many connections in /home/mhd-01/www..it/htdocs/website/db/db.php on line 21

e dove sta mysql_connect( e i suoi dati per collegarli al database.

a tutte pagine ho messo mysql_close($db).

Cosa devo fare altro?

grazie mille.
 
non posso perché sono in host.. ma ho contattato il supporto e mi ha detto questo:
--------------------------------------------------------------------
Gentile Luigi, la ringraziamo per averci contattato.

Il messaggio è relativo al fatto che termina le connessioni simultanee disponibili (8) al server DB e le successive vengono rifiutate.

Le consigliamo di controllare le query SQL effettuate, eventualmente di ottimizzarle, di chiudere correttamente le connessioni al server DB ed attivare qualche sistema di caching per gli script che fanno uso del DB in modo da ridurre le connessioni verso quest'ultimo.

Le auguriamo buona giornata.
----------------------------------------------------------------------

sono su tophost.

che cosa è sistem caching ??

Ora ho messo tutto mysql_close, e sempra andare .. ma non sono sicuro.
il sito è questo www luigiamorfini it

vedi .
saluti e grazie per la risposta.

buona giornata.
 
ciao
intanto togli tutte le
PHP:
mysql_close($db);
ci pensa php a chiudere la connessione in automatico quando serve (es. esci dalla pagina).
potrebbe essere la chiusura (prematura) e successiva riapertura che ti da quell'errore
 
Ultima modifica:
io non lo so .. ma alcune volte è una scheggia e si aprono le pagine in un 1 secondo .. alcune volte rarrissime volte viene fuori quell'avviso lì.

che cosa è ?

grazie mille.
 
ciao
penso che sarebbe utile vedere il codice delle pagine dove fai la connessione e/o le query, non so io, ma forse qualcuno sa dirti dove sta l'inghippo
 
ciao, vedi è solamente una cosa si come che il mio e un cms modulare che ho scritto io. ti posto la parte solo che legge la news completa.

PHP:
<?php
defined('ENGINE') or die("Pagina non accessibile direttamente"); // iniziare sempre con questa espressione
?>
<?php
	$action = (isset($_GET["action"])) ? trim ($_GET["action"]): '';
	$pages = (isset($_GET["pagina"])) ? trim ((int)$_GET["pagina"]): '';
	
	if(empty($action)){ 

		$id = (isset($_GET["id"])) ? trim ((int)$_GET["id"]): '';
		$db_id = mysql_real_escape_string($id);
	
	$query = mysql_query ( "SELECT users.user as _user , news_categories.title as _cat , news.* FROM users 
       INNER JOIN news 
          ON users.id = news.id_user INNER JOIN news_categories
          ON news_categories.id = news.id_categories WHERE news.id='".$db_id."' and news.active=1" );
	
	$row = mysql_fetch_array ( $query );
	if(empty($db_id)) {
		echo "null";
}
elseif (mysql_num_rows ( $query ) == 0) { echo "Vuoto"; }
else
{

?><p style="text-align:center;font-size:15px;"><a href="index.php?m=news_categories&id=<?php echo $row["id_categories"]; ?>">Torna indietro</a></p>	
<div id="post">
  <h2><?php echo $row["title"]; ?></h2>
  <div class="contents">
   <?php echo bbcode_complete($row['news']); ?>
  </div>
  <ul class="info">
<li><strong>Autore:&nbsp;&nbsp;</strong><?php echo $row["_user"]; ?></li>
<li><strong>Data:&nbsp;&nbsp;</strong> <?php echo "".show_data($row["data"]).""; ?></li>
<li><strong>Categoria:&nbsp;&nbsp;</strong><?php echo $row["_cat"]; ?></li>
</ul>
</div>
<?php
		}
  ?>

<?php
}
?>

Ho messo nella pagina del template la "index.php", la funzione mysql_close();

Però non so come mai..

ti ringrazio molto.

buona serata.
 

Discussioni simili