En supprimant des données dans une table MySQL on se retrouve avec de la place perdue. Dans phpMyAdmin, la liste des tables contient la colonne "Perte" qui indique la taille perdue.
Ce script permet donc d'optimiser toutes les tables d'une base de données et de gagner un peut de place
Source / Exemple :
$sql_serveur = "à renseigner"; // Serveur mySQL
$sql_base = "à renseigner"; // Base de données mySQL
$sql_login = "à renseigner"; // Login de connection a mySQL
$sql_password = "à renseigner"; // Mot de passe pour mySQL
$lk = @mysql_connect($sql_serveur, $sql_login, $sql_password) or die(mysql_error
());
@mysql_select_db($sql_base, $lk) or die(mysql_error());
?>
<html>
<head>
<title>Récupère la place perdu dans une base de données MySQL</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
//on prépare la requête
$sql = "OPTIMIZE TABLE ";
//on recherche toutes les données des tables
$req = mysql_query('SHOW TABLE STATUS', $lk);
while($data = mysql_fetch_assoc($req)) {
//on regarde seulement les tables qui affichent des pertes
if($data['Data_free'] > ) {
//et on l'inclut si elle comporte des pertes
$sql .= '`'.$data['Name'].'`, ';
echo $data['Name'] . "<br>\n";
}
}
//on enlève le ', ' de trop
$sql = substr($sql, , (strlen($sql)-2));
//et on optimise
mysql_query($sql, $lk);
mysql_close($lk);
?>
</body>
</html>
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.