InnoDB is a storage engine. InnoDB is a storage engine which is the permanent storage engine for MySQL. It gives you a complete standard feature of ACID-compliant transaction. This adds to advantage along with the addon functionality of foreign key support which helps in declarative referential integrity as well. Where as the standard version includes one of the most binaries distributed by MySQL A as well as B, the exception being some OEM versions. InnoDB also works for MySQL 5.5

InnoDB is an invention of Oracle Corporation after their gain of Innobase Oy in October 2005. InnoDB comes with a GNU General Public License as well the software could be bought by a client by the dual licensing. They also allow licenses to parties wishing to combine InnoDB in proprietary software.

As every one knows the backbone for any website is MySQL, admins are always ready to support InnoDB. InnoDB comes with the default setting and the end user doesn’t requires to make any changes because it is being configured with all the settings. We can also say that the InnoDB is basically a complete package that also comprises of storage engine basically meant for MySQL. This is being completely supported by all the releases of MySQL and its edge over the default storage engine is that it supports ACID (Automactiy, Consistency, Integrity, Durability). If the end user needs complete optimization of innodb configuration, open /etc/my.cnf file and if we think that the optimization parameters. Make sure to restart mysql whenever you make changes to my.cnf.

If we talk about some of the pros and cons of InnoDB tables, the end user had few. The technical professionals can easily recover the table from the crash automatically but some how the MyISAM tables usually needs to be repaired. InnoDB stores data according to the order of primary key while in default mechanism, MyISAM saves data in the order in which it is entered. MyISAM provides data compression facility but InnoDB does not yet support it. Here is the list of parameters which should be set in my.cnf if you are using InnoDB.

* innodb_data_home_dir
* innodb_data_file_path
* set-variable = innodb_buffer_pool_size
* set-variable = innodb_additional_mem_pool_size
* innodb_flush_log_at_trx_commit.