There's 10 million articles out there comparing MyISAM to InnoDB (two so-called database engines), which Wikipedia vaguely defines as:
"...the underlying software component that a database management system (DBMS) uses to create, read, update and delete (CRUD) data from a database."
But what does that really mean? Surprisingly, I couldn't find a single article talking about the relationship of a DB to its engine!
How does an engine manifest itself in the concrete, real world? Is it that a database is really just a binary file, and that its "engine" is the .exe
that handles all I/O to and from the file? Does the engine handle EXPLAIN
AND QEPs?
I guess what I'm asking is: how do you define which responsibilities are MySQL's, and which activities are the responsibility of its underlying engine?