EMS logo

Навигация по продуктам

выберите Ваш продукт

Наш партнерский статус

Microsoft Certified Partner
Oracle Certified Partner
Embarcadero Technology Partner

Новости SQL индустрии

Все SQL новости

15/07/2005
MySQL 5.0.9-beta released.

A new version of MySQL Community Edition 5.0.9-beta Open Source database management system has been released. This version now includes support for Stored Procedures, Triggers, Views and many other features. It is now available in source and binary form for a number of platforms from our download pages at http://dev.mysql.com/downloads/ and mirror sites.

Note that not all mirror sites may be up-to-date at this point. If you cannot find this version on a particular mirror, please try again later or choose another download site.

This is the fifth Beta release in the 5.0 series. All attention will continue to be focused on fixing bugs and stabilizing 5.0 for later production release.

NOTE: This Beta release, as any other pre-production release, should not be installed on ``production'' level systems or systems with critical data. It is good practice to back up your data before installing any new version of software. Although MySQL has done its best to ensure a high level of quality, protect your data by making a backup as you would for any software beta release.

Please refer to the bug database at http://bugs.mysql.com/ for more details about the individual open and resolved bugs in this version.

Changes in release 5.0.9:

Functionality added or changed:

  • InnoDB: When creating or extending an InnoDB data file, at most one megabyte at a time is allocated for initializing the file. Previously, InnoDB allocated and initialized 1 or 8 megabytes of memory, even if only a few 16-kilobyte pages were to be written. This improves the performance of CREATE TABLE in innodb_file_per_table mode.
  • InnoDB: Various optimizations. Removed unreachable debug code from non-debug builds. Added hints for the branch predictor in GCC. Made assertions occupy less space.
  • InnoDB: Make innodb_thread_concurrency=20 by default. Bypass the concurrency checking if the setting is greater than or equal to 20.
  • InnoDB: Make CHECK TABLE killable.
  • Recursion in stored routines is now disabled because it was crashing the server. We plan to modify stored routines to allow this to operate safely in a future release.
  • The handling of BIT columns has been improved, and should now be much more reliable in a number of cases.
  • Where a GROUP BY query uses a grouping column from the query's SELECT clause, MySQL now issues a warning. This is because the SQL standard states that any grouping column must unambiguously reference a column of the table resulting from the query's FROM clause, and allowing columns from the SELECT clause to be used as grouping columns is a MySQL extension to the standard.
    By way of example, consider the following table:
     CREATE TABLE users (
     userid INT NOT NULL PRIMARY KEY,
     username VARCHAR(25),
     usergroupid INT NOT NULL
     );
    
    MySQL allows you to use the alias in this query:
     SELECT usergroupid AS id, COUNT(userid) AS number_of_users
     FROM users
     GROUP BY id;
    
    However, the SQL standard requires that the column name be used, as shown here:
     SELECT usergroupid AS id, COUNT(userid) AS number_of_users
     FROM users
     GROUP BY usergroupid;
    
    Queries such as the first of the two shown above will continue to be supported in MySQL; however, beginning with MySQL 5.0.8, using a column alias in this fashion will generate a warning. Note that in the event of a collision between column names and/or aliases used in joins, MySQL attempts to resolve the conflict by giving preference to columns arising from tables named in the query's FROM clause.

Bugs fixed:

  • Security fix: On Windows systems, a user with any of the following privileges
    • REFERENCES
    • CREATE TEMPORARY TABLES
    • GRANT OPTION
    • CREATE
    • SELECT
    on *.* could crash mysqld by issuing a USE LPT1; or USE PRN; command. In addition, any of the commands USE NUL;, USE CON;, USE COM1;, or USE AUX; would report success even though the database was not in fact changed. Note: Although this bug was thought to be fixed previously, it was later discovered to be present in the MySQL 5.0.7-beta release for Windows.
  • mysqld_safe would sometimes fail to remove the pid file for the old mysql process after a crash. As a result, the server would fail to start due to a false A mysqld process already exists... error.
  • CAST( ... AS DECIMAL) didn't work for strings.
  • NULLIF() function could produce incorrect results if first argument is NULL.
  • Converting a VARCHAR column having an index to a different type (such as TINYTEXT) gave rise to an incorrect error message.
    Note that this bugfix induces a slight change in the behaviour of indexes: If an index is defined to be the same length as a field (or is left to default to that field's length), and the length of the field is later changed, then the index will adopt the new length of the field. Previously, the size of the index did not change for some field types (such as VARCHAR) when the field type was changed.

And many more...

Source: dev.mysql.com

twitterfacebook