PHP-Script zur Optimierung der Datenbank via Cronjob
-
- Mitglied
- Beiträge: 116
- Registriert: 26.12.2002 23:27
- Kontaktdaten:
Und wo ist das Problem eins der benannten Programme in die crontab zu packen? Vielleicht beschäftigst du dich erstmal mit der Benutzung von Cron, da scheints nämlich auch zu hapern ...Schwabenpfeil! hat geschrieben:Danke, aber ich will die Optimierung der DB ja automatisch per Cronjob durchführen lassen und nicht von Hand ausführen.
- killerbees19
- Mitglied
- Beiträge: 1185
- Registriert: 09.05.2006 17:33
- Wohnort: Wien (Österreich)
- Kontaktdaten:
Was ist denn daran so schwer?
Du musst nur die OPTIMIZE-Zeile für jede Tabelle kopieren und den Tabellennamen eintragen....
Natürlich die Zugangsdaten für die Datenbank. Und dann kopierst du das Script auf deinen Web Space, testest es und stellst es für deinen Cronjob ein
MfG Christian
Code: Alles auswählen
<?php
mysql_connect('localhost', 'benutzername', 'passwort');
mysql_select_db('db_name');
mysql_query("OPTIMIZE TABLE phpbb_tabelle");
mysql_query("OPTIMIZE TABLE phpbb_tabelle2");
mysql_close();
?
Natürlich die Zugangsdaten für die Datenbank. Und dann kopierst du das Script auf deinen Web Space, testest es und stellst es für deinen Cronjob ein

MfG Christian
» Real programmers don't comment. If it was hard to write, it should be hard to understand!
-
- Mitglied
- Beiträge: 116
- Registriert: 26.12.2002 23:27
- Kontaktdaten:
Wozu sollte ich wohl eines der Programme per Cronjob ausführen lassen, wenn ich doch von Anfang an nach einem einfachen Script gefragt habe? Tut mir leid, wenn Du meine eigentlich einfache Frage nicht verstanden hast. Hätte ich nach einem Programm gesucht, hätte ich das auch so geschrieben.jensemann hat geschrieben:Und wo ist das Problem eins der benannten Programme in die crontab zu packen? Vielleicht beschäftigst du dich erstmal mit der Benutzung von Cron, da scheints nämlich auch zu hapern ...Schwabenpfeil! hat geschrieben:Danke, aber ich will die Optimierung der DB ja automatisch per Cronjob durchführen lassen und nicht von Hand ausführen.
@killerbees19
Was ist denn daran so schwer?
Mir war auch nicht klar das die Frage nach einem einfachen Script so schwer zu beantworten war. Genau nach diesem kleinen Codeschnipsel hatte ich gesucht! Vielen Dank!
- killerbees19
- Mitglied
- Beiträge: 1185
- Registriert: 09.05.2006 17:33
- Wohnort: Wien (Österreich)
- Kontaktdaten:
Na dann mach mit phpMyAdmin doch einfach eine komplette Otimierung Deiner DB.
Anschließend wird der SQL-Kram dafür angezeigt.
Den kopierst Du einfach, gehst in Deinen Adminbereich und nutzt den db-UpdateGenerator (musst den MOD natürlich auch eingebaut haben)
Dort fügst Du den SQL-Kram ein, setzt noch ein ; ans Ende und klickst auf Absenden
Und schwupp di wupp hast Du ein php-Script, was exakt zu Deiner Datenbank passt.
Aus dem File kannst Du dann noch die Adminabfrage rausnehmen und dann kann es ständig per Cronjob aufgerufen werden.
Wesentlich einfacher und sinnvoller ist aber nach wie vor der schon angesprochene MySQL-Dumper.
Da bekommt man nebenbei noch das ohnehin sinnvolle Backup der DB nebenbei mitgeliefert.
Anschließend wird der SQL-Kram dafür angezeigt.
Den kopierst Du einfach, gehst in Deinen Adminbereich und nutzt den db-UpdateGenerator (musst den MOD natürlich auch eingebaut haben)
Dort fügst Du den SQL-Kram ein, setzt noch ein ; ans Ende und klickst auf Absenden
Und schwupp di wupp hast Du ein php-Script, was exakt zu Deiner Datenbank passt.
Aus dem File kannst Du dann noch die Adminabfrage rausnehmen und dann kann es ständig per Cronjob aufgerufen werden.
Wesentlich einfacher und sinnvoller ist aber nach wie vor der schon angesprochene MySQL-Dumper.
Da bekommt man nebenbei noch das ohnehin sinnvolle Backup der DB nebenbei mitgeliefert.
- killerbees19
- Mitglied
- Beiträge: 1185
- Registriert: 09.05.2006 17:33
- Wohnort: Wien (Österreich)
- Kontaktdaten:
Sehr guter Einwand, Max.
Leider geht das aber nur, wenn er das Script auch im phpBB Pfad ausführen darf.
Aber ansonsten sehr gute Idee.
Wenn er jetzt noch das db_update Script mit SHOW TABLES oder mysql_list_tables() aufrüstet, ist er wirklich auf alle Eventualitäten vorbereitet. Dann werden nur Befehle für die vorhandenen Tabellen ausgeführt und nicht nur für die, welche zum Zeitpunkt der Scripterstellung da waren. Vllt löscht er ja auch mal welche? Wer weiß?
P.S.: REPAIR wäre noch schön.
Leider geht das aber nur, wenn er das Script auch im phpBB Pfad ausführen darf.
Aber ansonsten sehr gute Idee.
Wenn er jetzt noch das db_update Script mit SHOW TABLES oder mysql_list_tables() aufrüstet, ist er wirklich auf alle Eventualitäten vorbereitet. Dann werden nur Befehle für die vorhandenen Tabellen ausgeführt und nicht nur für die, welche zum Zeitpunkt der Scripterstellung da waren. Vllt löscht er ja auch mal welche? Wer weiß?
P.S.: REPAIR wäre noch schön.

Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ich schmeiß' alles hin und...
... lasse es liegen