EMS logo

Products Navigation

choose your database tool

Our Partnership Status

Microsoft Certified Partner
Oracle Certified Partner
Embarcadero Technology Partner

SQL Industry News

All SQL News

MySQL 5.0.16 released.

MySQL 5.0.16, a new GA/production version of the popular Open Source Database Management System, has been released. The Community Edition is now available in source and binary form for a number of platforms from our download pages and mirror sites.

Note that not all mirror sites may be up to date at this point in time - if you can't find this version on some mirror, please try again later or choose another download site.

This is a bugfix release for the current production version.

If you are not aware of the changes introduced with version 5.0, please see the high-level description and pay special attention to the manual, section 2.10.2, "Upgrading from Version 4.1 to 5.0."

Please refer to our bug database for more details about the individual bugs fixed in this version.

Changes in release 5.0.16:

Functionality added or changed:

  • The InnoDB, NDB, BDB, and ARCHIVE storage engines now support spatial columns. See Chapter 16, "Spatial Extensions in MySQL."
  • You must now declare a prefix for an index on any column of any Geometry class, the only exception being when the column is a POINT.
  • Added a --hexdump option to mysqlbinlog that displays a hex dump of the log in comments. This output can be helpful for replication debugging.
  • MySQL 5.0 now supports character set conversion for seven additional cp950 characters into the big5 character set: 0xF9D6, 0xF9D7, 0xF9D8, 0xF9D9, 0xF9DA, 0xF9DB, and 0xF9DC. Note: If you move data containing these additional characters to an older MySQL installation which does not support them, you may encounter errors.

Packaging changes:

  • The Solaris packages ("pkgadd" format) has changed. In earlier releases, running "pkgadd" simply unpacked the distribution into "/usr/local/mysql- -/", i.e. nothing more than unpacking a TAR package would do. The new packages
    • install into "/opt/mysql/mysql/" (vendor/product)
    • register the package with the name "mysql"
    • add and set group/user
    • initiate/update the data directory "/var/lib/mysql", run "mysql_install_db" to initialize system tables
    • install a startup script as "/etc/init.d/mysql"
    • add a soft link from "/usr/local/mysql" to "/opt/mysql/mysql" (for compatibility and to enable the binaries to find character set definitions etc)
    • add soft links in "/usr/bin", "/usr/sbin", "/usr/lib" and other locations to files in "/opt/mysql/mysql/"
    • stop the server when the package is removed with "pkgrm"

    Note that the server is *not* started as part of the package install, and that the directory "/var/lib/mysql" is not altered during package removal using "pkgrm".

  • Please see the "additional notes" in the 5.0.15 announcement mail, if you did not already do so earlier. The mail is archived here.

Bugs fixed:

  • ORDER BY DESC within the GROUP_CONCAT() function was not honored when used in a view.
  • A comparison with an invalid date (such as WHERE col_name > '2005-09-31') caused any index on col_name not to be used and a string comparison for each row, resulting in slow performance.
  • Within stored routines, REPLACE() could return an empty string (rather than the original string) when no replacement was done, and IFNULL() could return garbage results.
  • Inserts of too-large DECIMAL values were handled inconsistently (sometimes set to the maximum DECIMAL value, sometimes set to 0).
  • Executing REPAIR TABLE, ANALYZE TABLE, or OPTIMIZE TABLE on a view for which an underlying table had been dropped caused a server crash.
  • A prepared statement that selected from a view processed using the merge algorithm could crash on the second execution.
  • Deletes from a CSV table could cause table corruption.
  • An update of a CSV table could cause a server crash.
  • For queries with nested outer joins, the optimizer could choose join orders that query execution could not handle. The fix is that now the optimizer avoids choosing such join orders.

And many more...

Source: dev.mysql.com