Edgewall Software

Changes between Version 14 and Version 15 of MySqlDb


Ignore:
Timestamp:
Apr 3, 2007, 9:36:48 AM (17 years ago)
Author:
techtonik <techtonik@…>
Comment:

+ problem with 'too big' unicode indexes and MyISAM tables is actual for all databases

Legend:

Unmodified
Added
Removed
Modified
  • MySqlDb

    v14 v15  
    99=== MySQL ===
    1010
    11 In order to avoid several issues with unicode and international characters throughout Trac, we '''''strongly''''' advise MySQL users to only use databases having the ''`utf8`'' character set and the ''`utf8_general_ci`'' collation type. However, prior to [milestone:0.10.4] some of Trac indexes in ''utf8'' are incompatible with MySQL 4.1.x (too big), so anything before MySQL 5.0.x just will not work in this configuration.
     11In order to avoid several issues with unicode and international characters throughout Trac, we '''''strongly''''' advise MySQL users to only use databases having the ''`utf8`'' character set and the ''`utf8_general_ci`'' collation type. However, changing collation to ''utf8'' makes MySQL fail in 4.1.x and 5.0.x versions on MyISAM table type, because some Trac tables indexes become "too big". This will be (hopefully) addressed in [milestone:0.10.4]. As a workaround it has been [comment:ticket:3659:5 recommended] to use InnoDB tables instead of MyISAM where this limitation is absent.
    1212
    1313Such databases can be created with the MySQL monitor, like that:
     
    1616}}}
    1717
    18 To check what are the settings for your database, issue command:
     18To check character set settings for your database, issue command:
    1919{{{
    20 mysql> USE TRAC;
     20mysql> USE trac;
    2121Database changed
    2222mysql> SHOW VARIABLES LIKE '%character%';
     
    3838
    3939See also #3884.
    40 
    41 It has also been [comment:ticket:3659:5 recommended] to use InnoDB instead of MyISAM tables, though it's not completely clear at this point if this really helps. [http://dev.mysql.com/doc/refman/5.0/en/innodb-overview.html InnoDB] provides referential integrity
    42 and transactions, so this should help.
    4340
    4441=== MySQLdb ===