Commit 1addaafa authored by Aymeric Augustin's avatar Aymeric Augustin
Browse files

[1.3.X] Fixed #17573 -- Documented MySQL's switch to InnoDB as default storage...

[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
parent 9729ad74
Loading
Loading
Loading
Loading
+8 −6
Original line number Diff line number Diff line
@@ -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.

The InnoDB_ engine is fully transactional and supports foreign key references
and is probably the best choice at this point in time.
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.

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
+5 −9
Original line number Diff line number Diff line
@@ -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

    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.
.. admonition:: MySQL with MyISAM and fixtures

    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
~~~~~~~~~~~~~~~~~~~~~~~~~~