gleichzeitige zugriffe auf die db

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
eiskuh
Mitglied
Beiträge: 67
Registriert: 18.02.2005 17:11

Beitrag von eiskuh »

hi dave,

MySQL verfolgt das Konzept der "Storage Engines" d.h. als Entwickler kann man sich für verschiedene Speichertechnologien entscheiden, die für die Speicherung der Tabellen verwendet werden (vorausgesetzt sie wurden installiert). MySQL als DBMS liegt quasi eine Schicht darüber. Je nach Speichertechnologie kann MySQL unterschiedliche (zusätzliche) Operationen auf die zugrundeliegende Storage-Engine ausführen.

Derzeit gibt es unter anderem folgende Speichertechnologien:
- MYISAM: Speicherung auf Festplatte, geringer Oberhead, keine Transaktionen
- InnoDB: Speicherung auf Festplatte, volle ACID Kompatibilität --> Transaktionen, erhöhter Overhead, seit 3.23.34a
- HEAP: Speicherung im Hauptspeicher, sehr Schnell


MySQL ist also nicht grundsätzlich nicht Transaktionsfähig. Je nach Wahl der Storage-Engine sind Transaktionen verfügbar, weshalb man bei der Entwicklung einer Anwendung mit MySQL nicht darauf verzichten muss und auch nicht sollte.


Noch Links zum Thema:
MySQL Storage Engine Architecture
InnoDB-Tabellen
MyISAM-Tabellen


Guten Start in die neue Woche
~muh~ ;-)
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

D@ve hat geschrieben:MySQL4 gilt doch als DBMS ohne Transaktionen das habe ich schon mehrmals gelesen??
MySQL selbst unterstützt Transaktionen (sogar schon MySQL 3.23). Allerdings muss man dazu explizit einen Transaktionsfähigen Tabellentyp (z.B. InnoDB) angeben - der Standardmäßige Typ MyISAM unterstützt keine Transaktionen.

Siehe http://dev.mysql.com/doc/mysql/en/ansi- ... html[quote] MySQL Server (version 3.23-max and all versions 4.0 and above) supports transactions with the InnoDB and BDB transactional storage engines. InnoDB provides full ACID compliance. See Chapter 14, MySQL Storage Engines and Table Types.

The other non-transactional storage engines in MySQL Server (such as MyISAM) follow a different paradigm for data integrity called ``atomic operations.'' In transactional terms, MyISAM tables effectively always operate in AUTOCOMMIT=1 mode. Atomic operations often offer comparable integrity with higher performance[/quote]
KB:knigge
Antworten

Zurück zu „Coding & Technik“