Prüfen der Datenbankintegrität

Gesperrt
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Prüfen der Datenbankintegrität

Beitrag von ozone »

hallo zusammen

nach dem aufruf von "style - templates" im contenido-backend dauert es bei einem meiner mandanten ca. 3 minuten, bis die templates angezeigt werden.

ich habe darauf direkt in die datenbank geschaut und festgestellt, dass die tabelle "con_template_conf" 606'251 (!!) records enthält!

ich kann mir vorstellen, woher die einträge stammen. hatte vor ca. 2 monaten probleme beim kopieren einer sprache (http://www.contenido.de/forum/viewtopic.php?t=5030) weil das script immer in einen timeout lief.

frage:
1. wie finde ich raus, welche records von "con_template_conf" ich bedenkenlos löschen kann?
2. gibt es bereits irgendein sql-script welches die referentielle integrität der datenbank prüft, bzw. datenleichen aufspührt?

danke für ein feedback.

grüsse
ozone
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Beitrag von ozone »

hallo contenido-gemeinde!

kann mir niemand weiterhelfen?
ist die datenbank-konsistenz denn kein thema da draussen? :wink:

gruss
ozone
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

nein. Es gibt derzeit keine Möglichkeit, dies zu überprüfen. Werden Datensätze nicht sauber gelöscht, ist dies ein Bug; dieser muß dann behoben werden.
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Beitrag von ozone »

hallo timo

schade. das solltet ihr aber gelegentlich in angriff nehmen. wenn die refererentielle integrität nicht bereits durch das datenmodell und das dbms sichergestellt ist, dann können solche "datenleichen" immer wieder vorkommen.
ich werd meine bitte mal ins bug-forum posten.

gruss ozone
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

Ähm nein, nicht wirklich. Mit MySQL ist das auch in dieser Art und Weise gar nicht möglich, deshalb müssen die Funktionen und Objekte das Löschen erledigen. Außerdem geht das automatisiert immer nur bis zu einem bestimmten Grad.
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Beitrag von ozone »

ich kenn mich da eben nur mit oracle aus. hab aber gemeint dass mysql mit der innodb die referentielle integrität auch unterstützt.

wie dem auch sei, was ich eigentlich benötigen würde ist die sql, welche die con_template_conf durchscannt und die leichen aufspührt. da ich bei der db-struktur nicht so durchblick, fällt mir das etwas schwer.
könntest du mir ein paar tipps geben, damit ich einen ansatz hab mir die sql zusammenzubasteln?
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

ähm erklären ist schwierig - irgendwo gabs mal eine Beschreibung.

Aber was ist so schlimm an den "Dateileichen"? Die Datenbank werden sie dir sicherlich nicht sprengen...
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Beitrag von ozone »

die "datenleichen" haben auswirkungen auf den zugriff der templates im backend.
wie ich eingangs beschrieben hab, braucht der aufruf von "style - templates" 3-4 minuten, bis die liste erscheint.
das ist ziemlich lästig. :(
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

bist du dir hundertprozentig sicher, daß dies an den Dateileichen liegt? Ich bin mir da nicht sicher.
Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix »

Hallo Ozone,
zu den Datei Zusammenhängen gibte es eine recht gute Übersicht (denke ich, ich habe noch nie damit gearbeitet :D ) in den FAQs http://www.contenido-faq.de Vielleicht hilft dir das weiter.
http://www.thilo-sommer.de/PHPMyFAQ/ind ... 75&lang=de
http://www.thilo-sommer.de/PHPMyFAQ/ind ... 76&lang=de
Gruß
Florian
Beleuchtfix
Beiträge: 1082
Registriert: Di 22. Jul 2003, 10:14
Wohnort: Hessen
Kontaktdaten:

Beitrag von Beleuchtfix »

Hallo Ozone,
zu den Datei Zusammenhängen gibte es eine recht gute Übersicht (denke ich, ich habe noch nie damit gearbeitet :D ) in den FAQs http://www.contenido-faq.de Vielleicht hilft dir das weiter.
http://www.thilo-sommer.de/PHPMyFAQ/ind ... 75&lang=de
http://www.thilo-sommer.de/PHPMyFAQ/ind ... 76&lang=de
Gruß
Florian
Gerade habe ich noch einen neue Info von Timo gefunden
http://contenido.de/forum/viewtopic.php ... highlight=
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Beitrag von ozone »

hallo timo
timo hat geschrieben:bist du dir hundertprozentig sicher, daß dies an den Dateileichen liegt? Ich bin mir da nicht sicher.
ja, bin ich mir. hab mal zum test alle records von con_template_conf mit idtplcfg > 1000 gelöscht. jetzt werden die templates wieder blitzschnell angezeigt.
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Beitrag von ozone »

hallo beleuchtfix

danke für die info.
das komplette datenbankmodell gibts ja hier: http://www.contenido.org/opensourcecms/ ... .model.pdf.
hab ich mir mal kurz angeschaut, blick aber ehrlich gesagt nicht 100% durch! :roll:
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

Klicke ich auf Style -> Templates, bekomme ich nur die Liste links. In dieser Liste wird kein Zugriff auf Templatekonfigurationen gemacht, ergo kann diese Liste auch nicht durch Änderungen in der Templatekonfiguration schneller oder langsamer werden...
ozone
Beiträge: 16
Registriert: Mo 18. Aug 2003, 10:38
Kontaktdaten:

Beitrag von ozone »

tja, dein statement leuchtet ein. ich würde dir auch gerne recht geben aber mein test spricht dagegen. vorher dauerte die anzeige der liste wirklich 3 minuten. jetzt ist sie blitzschnell da. irgendwo muss da ein select oder join über diese tabelle laufen.
Gesperrt