Fixed #17573 -- Documented MySQL's switch to InnoDB as default storage engine. Thanks Lenz Hirsch for the report and Claude Paroz for the patch.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@17552 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Aymeric Augustin 2012-02-19 07:39:05 +00:00
parent 03aa030f07
commit 0fe4218427
2 changed files with 11 additions and 14 deletions

View File

@ -154,13 +154,14 @@ Storage engines
MySQL has several `storage engines`_ (previously called table types). You can
change the default storage engine in the server configuration.
The default engine is MyISAM_ [#]_. The main drawbacks of MyISAM are that it
doesn't currently support transactions or enforce foreign keys constraints. On
the plus side, it's currently the only engine that supports full-text indexing
and searching.
Until MySQL 5.5.4, the default engine was MyISAM_ [#]_. The main drawbacks of
MyISAM are that it doesn't support transactions or enforce foreign keys
constraints. On the plus side, it's currently the only engine that supports
full-text indexing and searching.
The InnoDB_ engine is fully transactional and supports foreign key references
and is probably the best choice at this point in time.
Since MySQL 5.5.5, the default storage engine is InnoDB_. This engine is fully
transactional and supports foreign key references. It's probably the best
choice at this point in time.
.. versionchanged:: 1.4

View File

@ -376,15 +376,11 @@ fixture type are discovered (for example, if ``mydata.json`` and
installation will be aborted, and any data installed in the call to
``loaddata`` will be removed from the database.
.. admonition:: MySQL and Fixtures
.. admonition:: MySQL with MyISAM and fixtures
Unfortunately, MySQL isn't capable of completely supporting all the
features of Django fixtures. If you use MyISAM tables, MySQL doesn't
support transactions or constraints, so you won't get a rollback if
multiple transaction files are found, or validation of fixture data.
If you use InnoDB tables, you won't be able to have any forward
references in your data files - MySQL doesn't provide a mechanism to
defer checking of row constraints until a transaction is committed.
The MyISAM storage engine of MySQL doesn't support transactions or
constraints, so you won't get a rollback if multiple transaction files are
found, or validation of fixture data, if you use MyISAM tables.
Database-specific fixtures
~~~~~~~~~~~~~~~~~~~~~~~~~~