Added “optimize” action to optimize every table in the db
This commit is contained in:
parent
d4de4675ec
commit
e7ec2eba39
1 changed files with 25 additions and 0 deletions
|
@ -23,6 +23,7 @@ $opts=array(
|
||||||
'setblack'=>false,
|
'setblack'=>false,
|
||||||
'shuffle'=>false,
|
'shuffle'=>false,
|
||||||
'updstats'=>false,
|
'updstats'=>false,
|
||||||
|
'optimize'=>false,
|
||||||
'deadline'=>60*24*60*60,// se un'istanza non risponde da 60 giorni dichiararla morta
|
'deadline'=>60*24*60*60,// se un'istanza non risponde da 60 giorni dichiararla morta
|
||||||
'newline'=>30*24*60*60,// se un'istanza è nuova, dopo 30 giorni non lo è più
|
'newline'=>30*24*60*60,// se un'istanza è nuova, dopo 30 giorni non lo è più
|
||||||
);
|
);
|
||||||
|
@ -42,6 +43,8 @@ $help='mustool.php
|
||||||
Randomizza la lista delle istanze (i valori della colonna RPos).
|
Randomizza la lista delle istanze (i valori della colonna RPos).
|
||||||
updstats
|
updstats
|
||||||
Aggiorna le statistiche sul sito.
|
Aggiorna le statistiche sul sito.
|
||||||
|
optimize
|
||||||
|
Ottimizza le tabelle del database.
|
||||||
OPZIONI
|
OPZIONI
|
||||||
-h, --help
|
-h, --help
|
||||||
Mostra questo aiuto ed esce.
|
Mostra questo aiuto ed esce.
|
||||||
|
@ -75,6 +78,9 @@ for ($i=1; $i<$argc; $i++) {
|
||||||
} elseif ($argv[$i]=='updstats') {
|
} elseif ($argv[$i]=='updstats') {
|
||||||
$dosome=true;
|
$dosome=true;
|
||||||
$opts['updstats']=true;
|
$opts['updstats']=true;
|
||||||
|
} elseif ($argv[$i]=='optimize') {
|
||||||
|
$dosome=true;
|
||||||
|
$opts['optimize']=true;
|
||||||
} else {
|
} else {
|
||||||
mexit('«'.$argv[$i].'» non è un’azione conosciuta (usa «-h» per vedere la guida).'.N,1);
|
mexit('«'.$argv[$i].'» non è un’azione conosciuta (usa «-h» per vedere la guida).'.N,1);
|
||||||
}
|
}
|
||||||
|
@ -197,8 +203,27 @@ if ($opts['updstats']) {
|
||||||
echo('fatto! (righe inserite: '.$inserts.')'.N);
|
echo('fatto! (righe inserite: '.$inserts.')'.N);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($opts['optimize']) {
|
||||||
|
echo('Ottimizzo le tabelle del database...'.N);
|
||||||
|
$res=mysqli_query($link,'SHOW TABLES') or mexit(__LINE__.': '.mysqli_error($link).N,2);
|
||||||
|
while ($row=mysqli_fetch_row($res)) {
|
||||||
|
$rres=mysqli_query($link,'OPTIMIZE TABLE '.$row[0]) or mexit(__LINE__.': '.mysqli_error($link).N,2);
|
||||||
|
$rrow=mysqli_fetch_assoc($rres);
|
||||||
|
if ($rrow['Msg_type']=='error' || $rrow['Msg_type']=='warning')
|
||||||
|
fwrite(STDERR,kimplode($rrow).N);
|
||||||
|
}
|
||||||
|
echo('Fatto!'.N);
|
||||||
|
}
|
||||||
|
|
||||||
mysqli_close($link);
|
mysqli_close($link);
|
||||||
|
|
||||||
exit(0);
|
exit(0);
|
||||||
|
|
||||||
|
function kimplode(&$arr) {
|
||||||
|
$buf=[];
|
||||||
|
foreach ($arr as $key=>$val)
|
||||||
|
$buf[]=$key.': '.$val;
|
||||||
|
return(implode('; ',$buf));
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
Loading…
Reference in a new issue