Documentation Home
MySQL 5.0 Release Notes
Related Documentation Download these Release Notes
PDF (US Ltr) - 2.1Mb
PDF (A4) - 2.1Mb

MySQL 5.0 Release Notes  /  Changes in MySQL 5.0.0 (2003-12-22, Alpha)

Changes in MySQL 5.0.0 (2003-12-22, Alpha)

Functionality Added or Changed

  • Important Change: If you upgrade to MySQL 4.1.1 or higher, it is difficult to downgrade back to 4.0 or 4.1.0. That is because, for earlier versions, InnoDB is not aware of multiple tablespaces.

  • Replication: New binary log format that enables replication of these session variables: sql_mode, sql_auto_is_null, foreign_key_checks (which was replicated since 4.0.14, but here it is done more efficiently and takes less space in the binary logs), unique_checks. Other variables (like character sets, sql_select_limit, ...) will be replicated in upcoming 5.0.x releases.

  • Replication: Easier replication upgrade (5.0.0 masters can read older binary logs and 5.0.0 slaves can read older relay logs). See Replication Compatibility Between MySQL Versions, for more details). The format of the binary log and relay log is changed compared to that of MySQL 4.1 and older.

  • Added WEEK and QUARTER values as INTERVAL arguments for the DATE_ADD() and DATE_SUB() functions.

  • The output of the SHOW BINLOG EVENTS statement has been modified. The Orig_log_pos column has been renamed to End_log_pos and now represents the offset of the last byte of the event, plus one.

  • The KILL statement now takes CONNECTION and QUERY modifiers. The first is the same as KILL with no modifier (it kills a given connection thread). The second kills only the statement currently being executed by the connection.

  • Added support for SUM(DISTINCT), MIN(DISTINCT), and MAX(DISTINCT).

  • For user-defined functions (UDFs), the UDF_ARGS structure now has attributes and attribute_lengths members that provide information about the argument names. UDF Argument Processing.

  • The precedence of the XOR operator now lies between OR and AND. Previously, XOR had the same precedence as OR.

  • Basic support for stored procedures and functions (SQL:2003 style). See Using Stored Routines (Procedures and Functions).

  • Added TIMESTAMPADD() and TIMESTAMPDIFF() functions.

  • Added SELECT ... INTO list_of_vars, which can be of mixed (that is, global and local) types. See SELECT ... INTO Syntax.

  • LOAD DATA INFILE causes an implicit commit.


    The behavior of LOAD DATA INFILE in this regard was changed again in MySQL 5.0.26. See Changes in MySQL 5.0.26 (2006-10-03).

  • Implemented Index Merge optimization for OR clauses. See Index Merge Optimization.