Aggiornamento MySQL alla versione 5.0.33

Categoria: Tech corner
Questa pomeriggio i nostri server sono stati aggiornati alla versione 5.0.33 del celebre server database, contenente numerosi bugfix ed ottimizzazioni.
Ecco di seguito le note ufficiali dal sito del produttore (http://dev.mysql.com/doc/refman/5.0/en/releasenotes-cs-5-0-33.html):

Functionality added or changed:

  • Incompatible change: The prepared_stmt_count system variable has been converted to the Prepared_stmt_count global status variable (viewable with the SHOW GLOBAL STATUS statement). (Bug#23159)

  • NDB Cluster: Setting the configuration parameter LockPagesInMainMemory had no effect. (Bug#24461)

  • NDB Cluster: It is now possible to create a unique hashed index on a column that is not defined as NOT NULL. Note that this change applies only to tables using the NDB storage engine.

    Unique indexes on columns in NDB tables do not store null values because they are mapped to primary keys in an internal index table (and primary keys cannot contain nulls).

    Normally, an additional ordered index is created when one creates unique indexes on NDB table columns; this can be used to search for NULL values. However, if USING HASH is specified when such an index is created, no ordered index is created.

    The reason for permitting unique hash indexes with null values is that, in some cases, the user wants to save space if a large number of records are pre-allocated but not fully initialized. This also assumes that the user will not try to search for null values. Since MySQL does not support indexes that are not allowed to be searched in some cases, the NDB storage engine uses a full table scan with pushed conditions for the referenced index columns to return the correct result.

    Note that a warning is returned if one creates a unique nullable hash index, since the query optimizer should be provided a hint not to use it with NULL values if this can be avoided.

    (Bug#21507)

  • In MySQL 5.0.13 and up, InnoDB rolls back only the last statement on a transaction timeout. A new option, --innodb_rollback_on_timeout, causes InnoDB to abort and roll back the entire transaction if a transaction timeout occurs (the same behavior as before MySQL 5.0.13). (Bug#24200)

  • DROP TRIGGER now supports an IF EXISTS clause. (Bug#23703)

  • The Com_create_user status variable was added (for counting CREATE USER statements). (Bug#22958)

  • The --memlock option relies on system calls that are unreliable on some operating systems. If a crash occurs, the server now checks whether --memlock was specified and if so issues some information about possible workarounds. (Bug#22860)

  • The bundled yaSSL library was upgraded to version 1.5.0.

  • If the user specified the server options --max-connections=N or --table-open-cache=M, a warning would be given in some cases that some values were recalculated, with the result that --table-open-cache could be assigned greater value.

    It should be noted that, in such cases, both the warning and the increase in the --table-open-cache value were completely harmless. Note also that it is not possible for the MySQL Server to predict or to control limitations on the maximum number of open files, since this is determined by the operating system.

    The recalculation code has now been fixed to ensure that the value of --table-open-cache is no longer increased automatically, and that a warning is now given only if some values had to be decreased due to operating system limits.

    (Bug#21915)

  • NDB Cluster: The HELP command in the Cluster management client now provides command-specific help. For example, HELP RESTART in ndb_mgm provides detailed information about the START command. (Bug#19620)

  • NDB Cluster: Added the --bind-address option for ndbd. This allows a data node process to be bound to a specific network interface. (Bug#22195)

  • NDB Cluster: The Ndb_number_of_storage_nodes system variable was renamed to Ndb_number_of_data_nodes. (Bug#20848)

  • NDB Cluster: The ndb_config utility now accepts -c as a short form of the --ndb-connectstring option. (Bug#22295)

  • SHOW STATUS is no longer logged to the slow query log. (Bug#19764)

  • mysqldump --single-transaction now uses START TRANSACTION /*!40100 WITH CONSISTENT SNAPSHOT */ rather than BEGIN to start a transaction, so that a consistent snapshot will be used on those servers that support it. (Bug#19660)

  • mysql_upgrade now passes all the parameters specified on the command line to both mysqlcheck and mysql using the upgrade_defaults file. (Bug#20100)

  • For the CALL statement, stored procedures that take no arguments now can be invoked without parentheses. That is, CALL p() and CALL p are equivalent. (Bug#21462)

Bugs fixed: