MySQL Datenbankoptimierung

Coach

Aktives Mitglied
Hallo,

ich habe mir überlegt, den Befehl OPTIMIZE TABLE ein mal am Tag durchführen zu lassen um eine saubere DB zu erhalten.
Bringt das was und gibt es noch andere "BEfehle" die ich da nutzen könnte? Z.b. offene Verbindungen schließen?!
 
Gundsätzlich kann das nicht schaden, ob es einen Sinn ergibt, hängt davon ab was in deiner DB so täglich passiert.
Wenn z.B. größere Datenmengen gelöscht oder Änderungen vorgenommen werden, mach der Befehl bestimmt Sinn. Wenn es nur ein paar Einträge pro Tag sind, eher weniger.

Ansonsten kannst Du noch gut die Perfomance durch Indexierung(unique/index) steigern, aber auch nur wenn deine DB größerer Natur ist.

Gruß
Peter
 
Also ich habe bei meinen Webprojekten immer eine PHP-Seite auf dem Server, die den OPTIMIZE TABLE Befehl enthält...
je nach Lust und Laune rufe ich diese Seite dann mal auf, damit alles wieder ins Reine kommt.
Früher hatte ich optimierenden Code immer auf bzw. in den Startseiten platziert, was ich dann doch als etwas übertrieben empfunden habe...

Mein aktueller Webhoster stellt seinem Hosting-Paket darüberhinaus Cron-Jobs zur Verfügung, die die besagten PHP-Seiten in regelmäßigen Abständen automatisiert aufruft.
 
QUOTE (littlefish @ Mi 6.08.2008, 22:55) Früher hatte ich optimierenden Code immer auf bzw. in den Startseiten platziert, was ich dann doch als etwas übertrieben empfunden habe...

ja, 100 .. 200 ... vielleicht 1000 mal am Tag ist dann doch overSize


wie wäre es damit

CODE
$ts=time();
$delay=60*60*8; // alle 8 STunden
$nextSoftcron=file_get_contents('nextSoftcron.txt');
if ( $nextSoftcron<$ts )
{
//// tu irgendwas ......
// z.B. SQL Optimizie ....


$nextSoftcron = $ts + $delay&#59;
$cjhandle = fopen('nextSoftcron.txt','wb');
fwrite($cjhandle,$nextSoftcron);
fclose($cjhandle);
}

 
ok, danke euch.
das mit dem auf der startseite ausführen lass ich, aber ich denke später werde ich das skript dann täglich ausführen
 
Zurück
Oben