Salutations,

Depuis des années, j'utilise un script qui nous avait été donné par un ancien webmaster, pour nettoyer nos BDDs MySQL :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
	// Fonction de calcul d'execution
	function calcul_execution() {
		list($msec, $sec) = explode(' ', microtime());
		return ((float) $sec + (float) $msec) * 1000000;
	}
 
	// <!-- Optimisation N° 1 !-->
 
	echo '&#x21F0;&nbspOptimisation des tables SQL du Forum &nbsp;(base '.$base1.')...&nbsp';
 
	// Début de calcul d'execution 1
	$debut_calcul1 = calcul_execution(1);
 
	// Connexion SQL
	mysql_connect("$chemin_db1", "$login1", "$pass1");
	$table1 = mysql_list_tables($base1);
 
	//on prépare la requête
	$sql1 = "OPTIMIZE TABLE ";
 
	//on recherche toutes les données des tables
	$req1 = mysql_query('SHOW TABLE STATUS');
	while($data = mysql_fetch_assoc($req1))
	{
		// on regarde seulement les tables qui affichent des pertes
		if($data['Data_free'] > 0)
		{
			// et on l'inclut si elle comporte des pertes
			$sql1 .= '`'.$data['Name'].'`, ';
		}
	}
	// on enlève le ', ' de trop
	$sql1 = substr($sql1, 0, (strlen($sql1)-2));
	// et on optimise
	mysql_query($sql1);
	// Fermeture de la connexion
	mysql_close();
 
	echo '<font color="#009999"><strong>Ok</strong></font> !';
 
	// Fin de calcul d'execution 1
	$fin_calcul1 = calcul_execution(1);
 
	// Décompte du temps d'execution 1
	echo '&nbsp;-&nbsp;(<em>&nbsp;';
	$calcul1 = $fin_calcul1-$debut_calcul1;
	$calcul1s = ($fin_calcul1-$debut_calcul1)/1000000;
	if( $calcul1 <= 35000) echo '<font color="green">';
	else if( $calcul1 <= 50000) echo '<font color="yellow">';
	else if( $calcul1 <= 100000) echo '<font color="orange">';
	else echo '<font color="red">';
	echo '<strong>' .$calcul1. '</strong></font>&nbsp;micro-secondes&nbsp;<font size="-1">(soit&nbsp;<strong>' .$calcul1s. '</strong>&nbsp;secondes)</font>.</em>&nbsp;)<br /><br />';
- Première question : Ce script est-il toujours utile d'après vous ?
- Deuxième question : Comment le moderniser pour déjà le passer en MySQLi ?

Merci de vos aides...