DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(mysql.info.gz) Charset-upgrading

Info Catalog (mysql.info.gz) Charset-national (mysql.info.gz) Charset (mysql.info.gz) Charset-charsets
 
 10.10 Upgrading Character Sets from MySQL 4.0
 =============================================
 

Menu

 
* Charset-map                 4.0 Character Sets and Corresponding 4.1 Character Set/Collation Pairs
* Charset-conversion          Converting 4.0 Character Columns to 4.1 Format
 
 What about upgrading from older versions of MySQL? MySQL 4.1 is almost
 upward compatible with MySQL 4.0 and earlier for the simple reason that
 almost all the features are new, so there's nothing in earlier versions
 to conflict with. However, there are some differences and a few things
 to be aware of.
 
 Most important: The "MySQL 4.0 character set" has the properties of
 both "MySQL 4.1 character sets" and "MySQL 4.1 collations." You will
 have to unlearn this. Henceforth, we will not bundle character
 set/collation properties in the same conglomerate object.
 
 There is a special treatment of national character sets in MySQL 4.1.
 `NCHAR' is not the same as `CHAR', and `N'...'' literals are not the
 same as `'...'' literals.
 
 Finally, there is a different file format for storing information about
 character sets and collations. Make sure that you have reinstalled the
 `/share/mysql/charsets/' directory containing the new configuration
 files.
 
 If you want to start `mysqld' from a 4.1.x distribution with data
 created by MySQL 4.0, you should start the server with the same
 character set and collation. In this case, you won't need to reindex
 your data.
 
 There are two ways to do so:
 
      shell> ./configure --with-charset=... --with-collation=...
      shell> ./mysqld --default-character-set=... --default-collation=...
 
 If you used `mysqld' with, for example, the MySQL 4.0 `danish'
 character set, you should use the `latin1' character set and the
 `latin1_danish_ci' collation:
 
      shell> ./configure --with-charset=latin1 \
                 --with-collation=latin1_danish_ci
      shell> ./mysqld --default-character-set=latin1 \
                 --default-collation=latin1_danish_ci
 
 Use the table shown in  Charset-map to find old 4.0 character set
 names and their 4.1 character set/collation pair equivalents.
 
 If you have non-`latin1' data stored in a 4.0 `latin1' table and want
 to convert the table column definitions to reflect the actual character
 set of the data, use the instructions in  Charset-conversion.
 
Info Catalog (mysql.info.gz) Charset-national (mysql.info.gz) Charset (mysql.info.gz) Charset-charsets
automatically generated byinfo2html