Table of Contents
As a general rule, we recommend that when upgrading from one release series to another, you should go to the next series rather than skipping a series. For example, if you currently are running MySQL 3.23 and wish to upgrade to a newer series, upgrade to MySQL 4.0 rather than to 4.1 or 5.0.
Before you do an upgrade, you should back up your old databases.
You can always move the MySQL format files and datafiles between different versions on the same architecture as long as you have the same base version of MySQL. The current base version is 4. If you change the character set when running MySQL, you must run myisamchk -r -q --set-character-set=charset on all tables. Otherwise, your indexes may not be ordered correctly, because changing the character set may also change the sort order.
If you are cautious about using new versions, you can always rename your old mysqld to something like mysqld-old-version-number. If your new mysqld then does something unexpected, you can simply shut it down and restart with your old mysqld.
If, after an upgrade, you experience problems with recompiled client programs, such as Commands out of sync or unexpected core dumps, you probably have used an old header or library file when compiling your programs. In this case you should check the date for your mysql.h file and libmysqlclient.a library to verify that they are from the new MySQL distribution. If not, please recompile your programs.
If problems occur, such as that the new mysqld server doesn't want to start or that you can't connect without a password, check that you don't have some old my.cnf file from your old installation. You can check this with: program-name --print-defaults. If this outputs anything other than the program name, you have an active my.cnf file that affects server operation.
It is a good idea to rebuild and reinstall the Perl DBD::mysql module whenever you install a new release of MySQL. The same applies to other MySQL interfaces as well, such as the Python MySQLdb module.
In general, you should do the following when upgrading to MySQL 5.0 from an earlier version:
Read the 5.0 news items to see what significant new features you can use in 5.0. See News-5.0.x.
If you are running MySQL Server on Windows, please also see Windows upgrading.
If you are using replication, please also see Replication Upgrade for information on upgrading your replication setup.
MySQL 5.0 adds support for stored procedures. This support requires the proc table in the mysql database. To create this file you should run the mysql_fix_privilege_tables script. This is described in Upgrading-grant-tables.