Commit 2671e98d authored by webchick's avatar webchick

#301362 by moshe weitzman, David Strauss, Narayan Newton, and chx: Default to InnoDB in MySQL.

parent 96ca81fb
......@@ -8,6 +8,8 @@ Drupal 7.0, xxxx-xx-xx (development version)
* Support for master/slave replication, transactions, multi-insert queries,
delayed inserts, and other features.
* Added support for the SQLite database engine.
* Default to InnoDB engine, rather than MyISAM, on MySQL when available.
This offers increased scalability and data integrity.
- Security:
* Protected cron.php -- cron will only run if the proper key is provided.
* Implemented much stronger password hashes that are also compatible with the
......
......@@ -38,3 +38,6 @@ If successful, MySQL will reply with:
Query OK, 0 rows affected
If the InnoDB storage engine is available, it will be used for all database
tables. InnoDB provides features over MyISAM such as transaction support,
row-level locks, and consistent non-locking reads.
......@@ -59,9 +59,11 @@ protected function buildTableNameCondition($table_name, $operator = '=') {
* An array of SQL statements to create the table.
*/
protected function createTableSql($name, $table) {
if (empty($table['mysql_suffix'])) {
$table['mysql_suffix'] = 'DEFAULT CHARACTER SET UTF8';
}
// Provide some defaults if needed
$table += array(
'mysql_engine' => 'InnoDB',
'mysql_character_set' => 'UTF8',
);
$sql = "CREATE TABLE {" . $name . "} (\n";
......@@ -79,7 +81,7 @@ protected function createTableSql($name, $table) {
// Remove the last comma and space.
$sql = substr($sql, 0, -3) . "\n) ";
$sql .= $table['mysql_suffix'];
$sql .= 'ENGINE = ' . $table['mysql_engine'] . ' DEFAULT CHARACTER SET ' . $table['mysql_character_set'];
// Add table comment.
if (!empty($table['description'])) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment