tags:

views:

48

answers:

5

What is InnoDB and MyISAM in MySQL ?

+1  A: 

They're different storage engines in mysql. They have different pro & cons.

Ben Rowe
can we use both storage engines at the same time for our database ?
You can use different storage engines on different tables within the same database, however you can't have two or more engines on the same table.
Ben Rowe
perfect....got it...thanks for your help....
+1  A: 

They are storage engines.

http://dev.mysql.com/doc/refman/5.1/en/storage-engines.html

MyISAM: The default MySQL storage engine and the one that is used the most in Web, data warehousing, and other application environments. MyISAM is supported in all MySQL configurations, and is the default storage engine unless you have configured MySQL to use a different one by default.

InnoDB: A transaction-safe (ACID compliant) storage engine for MySQL that has commit, rollback, and crash-recovery capabilities to protect user data. InnoDB row-level locking (without escalation to coarser granularity locks) and Oracle-style consistent nonlocking reads increase multi-user concurrency and performance. InnoDB stores user data in clustered indexes to reduce I/O for common queries based on primary keys. To maintain data integrity, InnoDB also supports FOREIGN KEY referential-integrity constraints.

mluebke
So while we install MySQL do we need to specifically specify which storage engine to use as our MySQL database ?
As mentioned in my post, the default is MyISAM. If you want to use the features of a different storage engine such as INNODB, then yes you would need to specify. This is not done during install, rather it is done during initial table creation.
mluebke
+1  A: 

Have a look at

InnoDB and MyISAM

InnoDB is a storage engine for MySQL, included as standard in all current binaries distributed by MySQL AB. Its main enhancement over other storage engines available for use with MySQL is ACID-compliant transaction support

MyISAM is the default storage engine for the MySQL relational database management system versions prior to 5.5 1. It is based on the older ISAM code but has many useful extensions. The major deficiency of MyISAM is the absence of transactions support. Versions of MySQL 5.5 and greater have switched to the InnoDB engine to ensure referential integrity constraints, and higher concurrency.

astander
can we use both storage engines at the same time for our database ?
+1  A: 

It's the database engine... http://www.kavoir.com/2009/09/mysql-engines-innodb-vs-myisam-a-comparison-of-pros-and-cons.html

Matthieu
can we use both storage engines at the same time for our database ?
You can you them concurrently on different tables, but for one given table you will need to choose which one you want to use...
Matthieu