Search the MySQL manual:

2.5 Upgrading/Downgrading MySQL

Before you do an upgrade, you should back up your old databases.

You can always move the MySQL form 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 afraid of 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 will affect things.

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.

Subsections

User Comments

Posted by Jeff Slatone on Tuesday February 4 2003, @6:02pm[Delete] [Edit]

Since the section named Upgrades/Downgrades it would be beneficial to include some notes on Version Downgrades as well as Uninstall options.

Posted by Dominique Peretti on Monday April 14 2003, @8:08am[Delete] [Edit]

If a mysqld-max binary is present, the safe_mysqld script runs it instead of the mysqld daemon.
So, if you installed a mysql3-max package before, you need to manually delete it to get a regular mysql4-server to run !

Add your own comment.