Hallo zusammen,
Ich habe folgendes Problem zu lösen.
Ausgangslage:
Habe bei einem bekannten ein TYPO3 Installation (version 3.8.x) mit MYSQL-DB. Der Zugriff auf MYSQL-DB ist über phpmyadmin vorhanden.
Problem:
- Mit der Zeit wachsen ja die index und cache Tabellen.
- Ich habe bis jetzt in TYPO3 im Backendbereich unter Datenbank Management die Tabellen manuell geleerht. Dies ist natürlich keine Dauerlösung.
Ich möchte nun, dass gewisse Tabellen automatisch mittels Scheduler geleert werden. Der Provider hat Windows Server und er hat jetzt die Verzeichnis eingerichtet wo ein Script-Datei abgelegt werden soll. Die Datei wird dann automatisch ausgeführt.
Da ich keine grosse Ahnung vom Ersellen des Scripts wäre echt Super wenn jemand mir ein Musterbeispiel geben kann.
Meine Fragen sind hier...
- Wie schreibe ich ein script für Windows Server das ausgeführt werden soll (cmd, cfm ????)
Ich bin für jeden Input SEHR DANKBAR
Vielen DANK..
gruss
Du kannst eine ganz normale PHP-Datei mit Zugriff auf die Datenbank und DELETE auf die gewünschten Tabellen schreiben und von Windows Scheduler ausführen lassen.
Also so
<Pfad auf dein PHP> <Name der auszuführenden Datei>
Gruß, Regina
Hallo Regina,
Besten Dank für den Input. Ich habe hier ein Script vorbereitet. wäre dies als Lösung denbar?
Gibt es einen Unterschied ob ich Unix oder Windows Server haben?
Vielen Dank für die Antwort
<?php
$host = "";
$user = "";
$pass = "";
$db = ""
$table1 = "index_words";
$table2 = "index_rel";
$table3 = "index_phash";
$table4 = "index_grlist";
$table5 = "index_section";
$table6 = "index_fulltext";
$con = mysql_connect($host, $user, $pass);
if ($con){
if(mysql_query("TRUNCATE TABLE ".$index_words."")){
echo "Tabelle ".$index_words." erfolgreich geleert";
}else{
echo "Fehler: Tabelle ".$table1." nicht erfolgreich geleert";
}
if(mysql_query("TRUNCATE TABLE ".$index_rel."")){
echo "Tabelle ".$index_rel." erfolgreich geleert";
}else{
echo "Fehler: Tabelle ".$table2." nicht erfolgreich geleert";
}
if(mysql_query("TRUNCATE TABLE ".$index_phash."")){
echo "Tabelle ".$index_words." erfolgreich geleert";
}else{
echo "Fehler: Tabelle ".$table3." nicht erfolgreich geleert";
}
if(mysql_query("TRUNCATE TABLE ".$index_grlist."")){
echo "Tabelle ".$index_words." erfolgreich geleert";
}else{
echo "Fehler: Tabelle ".$table4." nicht erfolgreich geleert";
}
if(mysql_query("TRUNCATE TABLE ".$index_section."")){
echo "Tabelle ".$index_words." erfolgreich geleert";
}else{
echo "Fehler: Tabelle ".$table5." nicht erfolgreich geleert";
}
if(mysql_query("TRUNCATE TABLE ".$index_fulltext."")){
echo "Tabelle ".$table2." erfolgreich geleert";
}else{
echo "Fehler: Tabelle ".$table6." nicht erfolgreich geleert";
}
mysql_close($con);
}else{
echo "Fehler: Datenbankverbindung fehlgeschlagen";
}
?>