Hallo zusammen,
ich habe ein Problem mit einer Typo3-Installation. Weil die Seite sehr gut besucht wird, füllt sich die Tabelle cache_pages viel zu schnell. Die Einträge werden zwar nach einer bestimmten Zeit gelöscht, aber der Index (id - auto_increment) zählt immer weiter. Resultat, wenn Tabelle voll -> große Fehlermeldung auf der Seite.
Tabelle muss manuell neu angelegt werden.
Kennt jemand die Problematik? Könnte einen Rat gebrauchen.
Gruß
Nico
ich habe keine antwort, würde aber gern noch einen drauflegen:
bei uns ging es noch mit einer ID von über 5 millionen und einer tabellen größe von etwa 1 GB
seit einem update auf TYPO3 4.2 werden die veralteten Seiten in der Tabelle 'cahe_pages' nicht mehr gelöscht und sie wächst auf ganze 4,5 GB an. seit dem stellt der server bei backups jedesmal den betrieb ein. suche jetzt händeringend nach der lösung, wie die tabelle automatisch wieder gelöscht/verkleinert wird.
Hi
lest euch das hier mal durch: http://www.typo3-handbuch.de/index.php?id=164 Das fand ich bei meiner Recherche ganz interessant.
Solltet ihr immernoch zu viele Einträge haben hilft es auch sicherlich den Datentyp von Int auf Longint zu ändern. Dazu findet man dann in der MySQL Hilfe mehr, da hab ich den Link nicht parat.
mfg
diese handbuch hatte ich dann auch gefunden, und finde es sehr gut beschrieben.
Ich konnte aber das Problem jetzt lösen:
Das löschen von veralteten Einträgen in der Tabelle 'cache_pages' wurde durch die Extension 'static_info_tables' verhindert.
Normalerweise werden in der Tabelle 'cache_pages' die alten, zeitlich abgelaufenen Einträge ('expires') gelöscht, während ein neuer Eintrag ('tstamp') der selben Seite (page_id) hinzugeführt wird (see 'Page generation & cache handling' in ../typo3/sysext/cms/tslib/class.tslib_fe.php).
Die Extension 'static_info_tables' in der Version 2.0.2 hat sämtliche clearPageCache Aktionen in dieser Tabelle verhindert. Aufgefallen (4,7GByte Tabellengröße) ist dies erst ab TYPO3 Version 4.2. Ich würde sagen, in der TYPO3 Version 4.0.6 war dieser Fehler mit der alten Extension nicht existent. Ein Update auf die Version 2.0.9 der Extension 'static_info_tables' von Rene Fritz behob diesen Fehler.
Zur Kontrolle empfehle ich, sich aus der Tabelle 'cache_pages' mal eine konkrete Seite herauszufischen field 'page_id'.
SELECT * FROM `cache_pages` WHERE `page_id` = 123
Die Seite im Frontend mit einem Browser öffnen der nicht gleichzeitig im Backend angemeldet ist (sonst kein neues Caching) sodass die Seite neu gecacht wird (evtl. für diese seite den Cache-Zeitraum heruntersetzen) und dann in der Tabelle im Feld 'expire' die Zeitstempel überprüfen, ob veraltete Einträge mit jedem Neueintrag in die Tabelle gelöscht werden. Aufpassen: Seitenaufrufe mit unterschiedlichen GET-Parametern werden getrennt behandelt/gecached und erzeugen auch getrennte Einträge in der Datenbank.
enobe.de schrieb
diese handbuch hatte ich dann auch gefunden, und finde es sehr gut beschrieben.
Ich konnte aber das Problem jetzt lösen:
Das löschen von veralteten Einträgen in der Tabelle 'cache_pages' wurde durch die Extension 'static_info_tables' verhindert.
Normalerweise werden in der Tabelle 'cache_pages' die alten, zeitlich abgelaufenen Einträge ('expires') gelöscht, während ein neuer Eintrag ('tstamp') der selben Seite (page_id) hinzugeführt wird (see 'Page generation & cache handling' in ../typo3/sysext/cms/tslib/class.tslib_fe.php).
Die Extension 'static_info_tables' in der Version 2.0.2 hat sämtliche clearPageCache Aktionen in dieser Tabelle verhindert. Aufgefallen (4,7GByte Tabellengröße) ist dies erst ab TYPO3 Version 4.2. Ich würde sagen, in der TYPO3 Version 4.0.6 war dieser Fehler mit der alten Extension nicht existent. Ein Update auf die Version 2.0.9 der Extension 'static_info_tables' von Rene Fritz behob diesen Fehler.
Zur Kontrolle empfehle ich, sich aus der Tabelle 'cache_pages' mal eine konkrete Seite herauszufischen field 'page_id'.
SELECT * FROM `cache_pages` WHERE `page_id` = 123
Die Seite im Frontend mit einem Browser öffnen der nicht gleichzeitig im Backend angemeldet ist (sonst kein neues Caching) sodass die Seite neu gecacht wird (evtl. für diese seite den Cache-Zeitraum heruntersetzen) und dann in der Tabelle im Feld 'expire' die Zeitstempel überprüfen, ob veraltete Einträge mit jedem Neueintrag in die Tabelle gelöscht werden. Aufpassen: Seitenaufrufe mit unterschiedlichen GET-Parametern werden getrennt behandelt/gecached und erzeugen auch getrennte Einträge in der Datenbank.
Ich habe die Version 2.1.0 der static_info_tables installiert und die Einträge in der cache_pages werden nach dem expire nicht gelöscht. Gibt es neue Erkenntnisse, warum die cache_pages sich unnötig aufbläht?
Andreas
Gleiches Problem mit Version 2.1.1 Irgendjemand eine Lösung.