MySQL und innoDB Konfiguration
globe
- datenbank
n'abend,
kurz vorweg:
ich habe massive probleme mit dem locking von MyISAM. leider bietet die standard storage-engine nur table-locking. den meisten webanwendungen fällt die locking-geschichte wegen kleiner zugriffszahlen gar nicht erst auf, aber hier wird es zum verhängnis.
problem erkannt, gefahr gebannt?
nun, da ich weiss, dass durch das locking-verfahren von MyISAM die gesamte tabelle gesperrt wird, komme ich zu dem Schluss, dass ich um eine höhere parallelität zu erhalten auf eine andere storage engine wechseln muss.
versuche mit BDB sind gescheitert - tolle horrorgeschichten über BDB ließen diese Option dann komplett sterben...
versuche mit InnoDB sind auch gescheitert - hier glaube ich aber an konfigurationsfehler.
vorgehensweise:
table-creation gedumped auf innoDB geändert und in andere DB geladen.
daten gedumped (mit --no-autocommit --single-transaction) und in andere DB geladen. dabei kam dann folgender Fehler:
1114 table mytablename
is full.
aus den "infos" aus der doku wurde ich leider nicht schlau - finde das problem nicht.
MySQL innoDB "tuning tips"
die einstellungen von innoDB sind die default einstellungen. bislang habe ich mich nur mit MyISAM beschäftigt - was ich momentan bitter bereue...
ich bin über jeden tipp dankbar, wie ich die InnoDB Konfigruation ein bisschen tunen kann :)
(4GB RAM vorhanden... genug rechenleistung ist auch da, zu spitzenzeiten können es >300 Queries/Sekunde werden)
entweder ist InnoDB nicht so verbreitet und dementsprechend gut dokumentiert (auch ausserhalb mysql.com).. oder ich bin schlichtweg zu plöt was ordentliches zu finden... :(
weiterhin schönen abend...
hi,
daten gedumped (mit --no-autocommit --single-transaction) und in andere DB geladen. dabei kam dann folgender Fehler:
1114 tablemytablename
is full.
Zum einen scheint es da Bugs gegeben zu haben (sollten in aktuellen Versionen behoben sein),
und zum anderen besagt http://zipkid.com/documents/innodb-mysql-man.html, dass InnoDBs wohl erheblich größere Tablespaces brauchen ("Make sure you do not run out of tablespace: InnoDB tables take a lot more space than MyISAM tables", "If you run out of file space in the tablespace, you will get the MySQL 'Table is full' error and InnoDB rolls back the SQL statement.") - also vielleicht da mal schauen, ob du da was erhöhen müsstest.
gruß,
wahsaga
n'abend,
Zum einen scheint es da Bugs gegeben zu haben (sollten in aktuellen Versionen behoben sein),
der bug dürfte mich wohl nicht mehr tangieren: MySQL 4.0.25
aber danke für den hinweis!
und zum anderen besagt http://zipkid.com/documents/innodb-mysql-man.html, dass InnoDBs wohl erheblich größere Tablespaces brauchen ("Make sure you do not run out of tablespace: InnoDB tables take a lot more space than MyISAM tables", "If you run out of file space in the tablespace, you will get the MySQL 'Table is full' error and InnoDB rolls back the SQL statement.") - also vielleicht da mal schauen, ob du da was erhöhen müsstest.
gut, ressourcen kann ich ja noch massenweise zuordnen... dann kämpf ich mich mal durch die doku...
gracias
weiterhin schönen abend...