[1.3.X] Fixed #17573 -- Documented MySQL's switch to InnoDB as default storage engine. Backport of r17552 from trunk.

git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.3.X@17553 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Aymeric Augustin 2012-02-19 07:42:02 +00:00
parent 9729ad7466
commit 1addaafa0a
2 changed files with 11 additions and 13 deletions

View File

@ -147,12 +147,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 drawback of MyISAM is that it
doesn't currently support transactions or foreign keys. 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.
.. _storage engines: http://dev.mysql.com/doc/refman/5.5/en/storage-engines.html
.. _MyISAM: http://dev.mysql.com/doc/refman/5.5/en/myisam-storage-engine.html

View File

@ -371,15 +371,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
~~~~~~~~~~~~~~~~~~~~~~~~~~