Hallo,
bei meinem Kunden ( www.hifi-im-hinterhof.de ) läuft seit 2 Wochen die CE von Oxid.
Heute habe ich eine E-Mail von 1und1 erhalten, weil anscheinend die Datenbankbelastung zu hoch sei. Ich soll mich innerhalb von 2 Tagen melden und die Programmierung ändern, andernfalls würden sie die Datenbank sperren oder auf einen langsameren Server verschieben.
Da ich die Programmierung von Oxid wohl kaum ändern kann, müsste ich auf einen eigenen Server wechseln.
Hier noch einige Auszüge der E-Mail:
Wir haben festgestellt das Abfragen Ihres Datenbankbenutzers
xxxxxxxx auf dem Server yyyyyyyyyy zu einer erhöhten
Belastung führen. Es handelt sich hierbei um Abfragen in folgender Form:
/var/log/anna.log:dbo283306720@infong17: 3979 Queries: 3796 Selects, 1
Ins, 20 Upd, 23 Connects
/var/log/anna.log.0:dbo283306720@infong17: 44251 Queries: 42147 Selects,
9 Ins, 549 Upd, 219 Connects
/var/log/anna.log.1.gz:dbo283306720@infong17: 102200 Queries: 96370
Selects, 32 Ins, 1618 Upd, 3 Del, 585 Connects
/var/log/anna.log.2.gz:dbo283306720@infong17: 84273 Queries: 80105
Selects, 18 Ins, 1315 Upd, 402 Connects
/var/log/anna.log.3.gz:dbo283306720@infong17: 93839 Queries: 89197
Selects, 1 Ins, 1289 Upd, 476 Connects
/var/log/anna.log.4.gz:dbo283306720@infong17: 64861 Queries: 62022
Selects, 2 Ins, 695 Upd, 305 Connects
/var/log/anna.log.5.gz:dbo283306720@infong17: 72554 Queries: 69351
Selects, 14 Ins, 869 Upd, 329 Connects
/var/log/anna.log.6.gz:dbo283306720@infong17: 7036 Queries: 6676
Selects, 1 Ins, 113 Upd, 35 Connects
Die obigen Zeilen sind stündlich zu betrachten. Innerhalb einer Stunde
sollten nicht mehr als 1.000 Schreibvorgänge (Inserts, Updates und
Deletes) auf die Datenbank in der Summe erfolgen. Höhere Zahlen gehen
auf Kosten der Performance des Datenbankservers.
Zur Senkung der hohen Zugriffszahlen sollten Sie Sessions nicht mehr per
MySQL speichern und verwalten.
Beispielhafte Schreibzugriffe:
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘fc0db7e281eb713caaec500b29364ca7’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘2491ddc7fce8370e6c5bb407795c4c2d’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘c8b23972329ad6f6a1b85a11d2793d92’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘c8b674280b8b5a6e9a78541087a50384’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘2491ddc7fce8370e6c5bb407795c4c2d’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘aa71ad1c4c80aa8c9d80e62a6c56179a’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxcategory’ and
oxobjectid = ‘b1ccebf91073940f4595d850f86e584b’ and oxshopid =
‘oxbaseshop’ and oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘aa7bc00b46f772bb01d9dfb09fd1d7d9’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘2491ddc7fce8370e6c5bb407795c4c2d’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘c8b23972329ad6f6a1b85a11d2793d92’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘c8b674280b8b5a6e9a78541087a50384’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘2491ddc7fce8370e6c5bb407795c4c2d’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘aa71ad1c4c80aa8c9d80e62a6c56179a’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxcategory’ and
oxobjectid = ‘b1ccebf91073940f4595d850f86e584b’ and oxshopid =
‘oxbaseshop’ and oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘aa7bc00b46f772bb01d9dfb09fd1d7d9’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘c8b23972329ad6f6a1b85a11d2793d92’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘c8b674280b8b5a6e9a78541087a50384’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘2491ddc7fce8370e6c5bb407795c4c2d’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
select oxarticles.oxid, oxarticles.oxparentid, oxarticles.oxvarcount,
oxarticles.oxvarstock, oxarticles.oxicon, oxarticles.oxstock,
oxarticles.oxprice, oxarticles.oxvat, oxarticles.oxskipdiscounts,
oxarticles.oxunitquantity, oxarticles.oxshopid, oxarticles.oxinsert,
oxarticles.oxtimestamp, oxarticles.oxactive, oxarticles.oxtemplate,
oxarticles.oxblfixedprice, oxarticles.oxpic1, oxarticles.oxpic2,
oxarticles.oxpic3, oxarticles.oxpic4, oxarticles.oxpic5,
oxarticles.oxpic6, oxarticles.oxpic7, oxarticles.oxpic8,
oxarticles.oxpic9, oxarticles.oxpic10, oxarticles.oxpic11,
oxarticles.oxpic12, oxarticles.oxzoom1, oxarticles.oxzoom2,
oxarticles.oxzoom3, oxarticles.oxzoom4, oxarticles.oxtitle,
oxarticles.oxsearchkeys, oxarticles.oxvendorid,
oxarticles.oxmanufacturerid, oxarticles.oxvarselect,
oxarticles.oxtprice, oxarticles.oxurldesc, oxarticles.oxexturl,
oxarticles.oxrating, oxarticles.oxshortdesc, oxarticles.oxactivefrom,
oxarticles.oxactiveto, oxarticles.oxweight, oxarticles.oxbundleid,
oxarticles.oxfreeshipping, oxarticles.oxnonmaterial from oxarticles
where 1 and oxarticles.oxid = 'fc0db7e281eb713caaec500b29364ca7’
update oxseo set oxexpired = 0 where oxtype = ‘oxarticle’ and oxobjectid
= ‘c8b674280b8b5a6e9a78541087a50384’ and oxshopid = ‘oxbaseshop’ and
oxlang = 0 limit 1
Untige Abfragen sind sog. SlowQueries (Abfragen und Zugriffe deren
Abarbeitung länger als 13.25 Sekunden Ausführungszeit benötigt). Die
durchschnittliche Laufzeit der Abfragen beträgt 8 Sekunden. Höhere
Laufzeiten gehen auf Kosten der Performance des Datenbankservers. Nutzen
Sie bitte für die Sessionverwaltung das lokale Dateisystem des
Webservers. Speziell dafür vorgesehen ist das Verzeichnis /tmp.
user count query_time lock_time rows_sent rows_examined
dbo283306720 4 5340 11 378126 924308
dbo283306720 3 select t.TABLE_NAME, c.COLUMN_NAME, c.COLLATION_NAME from
INFORMATION_SCHEMA.tables t LEFT JOIN INFORMATION_SCHEMA.columns c ON
t.TABLE_NAME = %% where t.TABLE_SCHEMA = %% and c.TABLE_SCHEMA = %% and
c.COLUMN_NAME in %% and ( t.TABLE_NAME != %% and c.COLUMN_NAME != %% )
and ( t.TABLE_NAME != %% and c.COLUMN_NAME != %% ) ORDER BY
(t.TABLE_NAME = %%) DESC;
dbo283306720 1 SELECT oxid FROM oxcategories WHERE oxvat IS NOT NULL
LIMIT %%;
- Wenn Sie Software wie z.B. ein CMS oder Shopsystem einsetzen,
kontaktieren Sie bitte den Hersteller bzw. wenden sich an die
einschlägigen Foren. Benutzen Sie die MySQL-Datenbank nicht für
Anwendungen, welche die Datenbank stark belasten, z.B.
Logauswerteverfahren, Add - Clicks, Chatsysteme, Bannerrotation,
Sessionverwaltung oder Ähnliches. Nutzen Sie für die Sessionverwaltung
das lokale Dateisystem des Webservers.
Gruß
Michael