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 is nothing in earlier versions to conflict with. However, there are some differences and a few things to be aware of.
It is important to note that the “MySQL 4.0 character set” contains both character set and collation information in one single entity. Beginning in MySQL 4.1, character sets and collations are separate entities. Though each collation corresponds to a particular character set, the two are not bundled together.
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:
./configure --with-charset=... --with-collation=...shell>
./mysqld --default-character-set=... --default-collation=...
If you used mysqld with, for example, the
danish character set, you should
latin1 character set and the
./configure --with-charset=latin1 \
./mysqld --default-character-set=latin1 \
Use the table shown in Section 22.214.171.124, “4.0 Character Sets and Corresponding 4.1 Character Set/Collation Pairs”, 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
Section 126.96.36.199, “Converting 4.0 Character Columns to 4.1 Format”.