Kleiner Tipp für alle Nutzer der schon bestehenden Beta von WordPress 2.9 und für alle die, die vermutlich bald auf die neue Version updaten wollen.
Mit der Version 2.9 führt WordPress eine eigene Routine ein um die Datenbank zu säubern und auf Vordermann zu bringen. Bisher haben das entweder Plugins erledigt oder man hat sich via SQL Zugriff darum gekümmert. Die Möglichkeit besteht nun also ab der kommenden Version aus dem Core heraus ...

... und ist mit Hilfe einer Konstante zu aktivieren; abgelegt in der wp-config.php hat man ab nun Zugriff auf das Script.
define('WP_ALLOW_REPAIR', true);
Aufgerufen wird das Script von Außen unter der folgenden Adresse ...
http://example.com/wp-admin/maint/repair.php
... wobei man entweder die Datenbank repariert oder gleich die Optimierung mitlaufen lässt. Technisch steckt hier kein Zauberwerk dahinter, sondern die bekannten SQL-Anweisungen ANALYZE TABLE, REPAIR TABLE und OPTIMIZE TABLE.

Ich vermute, dass ist reichlich Zündstoff für Diskussionen und warum man den mit Konstante und warum von Außen etc. - gern könnt ihr die Kommentare hier nutzen. Alternativ kann sich jeder bei WordPress einbringen und direkt mit den Entwicklern diskutieren oder Änderungen direkt am Code hinterlassen.
Sofern man diese "Routine" per htaccess dann schützen kann, ist mir das egal wenn es von Außen zugänglich ist. Jedoch für unerfahrene Nutzer ist das keine so gute Lösung wie ich finde.
@nastorseriessix: ich vermute, dass man das auch nicht wollte. Aktuell muss man ja immer die Konstante via FTP setzen, was ich dann lieber gleich über SQL mache. Aber mal sehen, vielleicht ist das ja nur ein Puzzle für mehr in der Zukunft.
Habe ich vor Tagen die Änderung auch im Core entdeckt. Was ich allerdings nicht gefunden habe (jedoch für sehr sinnvoll halte), ist die Möglichkeit ein Zeitintervall für eine automatisierte Optimierung der Datenbank mittels eines WP-Cronjobs zu hinterlegen.
So eine extern zugängliche Datei ist schon cool und praktisch, aber wenn man die Optimierung gleich in einen internen Cron stecken könnte, wäre doch ein Traum.
Mir leuchtet nicht ganz ein wieso man das Script von Außen aufrufen kann?
Selbst wenn die Datenbank kaputt wäre nützt es doch nicht viel da WP dann eh irgend einen Fehler auswirft.
Aber viel kann man dazu ja jetzt noch nicht sagen. Sieht für mich aber erst mal nach einem weiteren Angriffspunkt aus!
Upgrade.php musste man ja auch lange Zeit manuell starten bis es endlich mal in eine halbwegs automatisches Update -Funktion eingebaut wurde. Vielleicht ja in Version 3.5 oder so wird die Datenbank dann im Backend gepflegt werden können
Ich mache das immer über phpmyadmin. Ob ich so eine Funktion im Backend von WordPress für sinnvoll halte - eher weniger. Denke es gibt andere Baustellen die eine höhre Prio haben. Aber nichtsdestotrotz, ich freue mich auf WordPress 2.9
WordPress ...
... wird immer aufwendiger. Ohne ständiges nachlesen ist WordPress kaum noch bedienbar.
Vorstellen kann ich mir auch nur das mann es von außen aufrufen kann um im Notfall noch einen Reparatur hin zu bekommen ohne ein Tool wie PHPMyAdmin zu haben.
Ich hab eh ein Plugin (Backwpup) geschrien welches eine Datenbank Sicherung macht und auch Die Reparatur und Optimierung der Datenbank Zeit gesteuert unterstütz und konnte anhand des Codes von WordPress feststellen das sie es fast genauso machen machen.
Brauch ich nicht.
Ich sichere meine DBs täglich mit MySqlDumper der vor jeder Sicherung die Tabellen optimiert.
Ich hoffe, man muss wenigstens angemeldet sein, um das Adminscript ausführen zu dürfen, und so den Zugriff etwas zu beschränken. Ist für mich erstmal nur eine mögliche Sicherheitslücke mehr ohne praktischen Nutzen.
Wie ist das eigentlich wenn ich meinen Blog bei WordPress direkt habe. Wie ich festgestellt hab sind die Möglichkeiten dirt recht eingeschränkt... Passiert da alles im Hintergrund oder muss ich mich auch um entsprechende Updates/Korrekturen kümmern?
@Tanja: nein, um die Administrierung musst du dich nicht kümmern, dazu bist du bei einem Hoster, der das für dich übernimmt.
Ist es nicht auch so, dass bei dem WordPress 2.9 auch das "hallo welt" wegfällt? Das hat mich nämlich total genervt... Updatet sich das eigentlich von allein, oder muss ich da erst wieder was runterladen und das selber aktualisieren?
@Regina: "hallo welt" soll in neuer Form implementiert werden, fällt also nicht weg, sondern soll inhaltlich Mehrwert bieten. In diesem Zusammenhang kann ich nur empfehlen, dass man sich eine eigene Install aufsetzt, wenn man WP oft installiert und diese Inhalte nicht benötigt. Alternativ nutze ich ein Plugin, was einfach diese Inhalte löscht und meine Konfig setzt, direkt nach der Install.
Hallo,
na das ging aber schnell als ich diese Zeile in wp-config.php eingefügt habe und auf volle Optimierung klickte. Das hatte gerade mal 5 s gedauert, was sicherlich auf die meinerseits fortlaufende Optimierung durch die Datenbank-Plugins zurückzuführen ist.
Trotzdem vielen Dank für diesen Tipp..
Also ich finde solch versteckte Funktionen nicht sehr gut. Ist dann ja wirklich nur was für Profi-Blogbetreiber. Warum nicht einfach eine Seite im Adminbereich unter Werzeuge einfügen und dann nur für Admin user freigeben - fertig. Warum immer so kompliziert.
Noch besser wäre wirklich, das diese Funktion selbständig per cron batch job ausgeführt würde.
@Stefan B.
Den wahren Sinn der Funktion habe ich bis jetzt nicht verstanden.
So wie ich das weiß führt WP auch ohne Login ins Backend die Reperatur durch um eben eine unter Umständen beschädigte Datenbanken wieder herstellen zu können. Deshalb hat das im Normalfall nichts in der wp_config.php zu suchen, sondern eben nur wenn man es braucht. Ob dies jetzt sinnvoll ist oder nicht sollen andere beurteilen.