TinyButStrong Error in field [var.version...]: the key 'version' does not exist or is not set in VarRef. (VarRef seems refers to $GLOBALS) This message can be cancelled using parameter 'noerr'.

TinyButStrong Error in field [var.version...]: the key 'version' does not exist or is not set in VarRef. (VarRef seems refers to $GLOBALS) This message can be cancelled using parameter 'noerr'.
 MySQL 軟體舊版本 Download Page46 | 2024 軟體跟著走

MySQL 歷史舊版本 Page46

最新版本 [var.version]

MySQL 歷史版本列表

MySQL 是一個開源的 RDBMS(關係數據庫管理系統),它支持用 C,C ++,Java,Perl 和 PHP 等各種編程語言編寫的請求。由於其高速度和靈活性,MySQL 已成為主要用於開發各種形狀和大小的 Web 應用程序的最流行的數據庫系統之一。自 1995 年上市以來,這種非常受歡迎的開源數據庫管理系統已經應用於當今幾乎所有互聯網用戶的無數項目中。今天一些最受歡迎的 MySQL 用戶是 ... MySQL 軟體介紹

MySQL (32-bit)MySQL (64-bit)MySQL WorkbenchMySQL Workbench (32-bit)MySQL Workbench (64-bit)


MySQL 5.1.60 查看版本資訊

更新時間:2011-11-21
更新細節:

What's new in this version:

# Bugs Fixed
* InnoDB Storage Engine: This fix improves the performance of instrumentation code for InnoDB buffer pool operations. 
* InnoDB Storage Engine: Data from BLOB columns could be lost if the server crashed at a precise moment when other columns were being updated in an InnoDB table. 
* InnoDB Storage Engine: Lookups using secondary indexes could give incorrect matches under a specific set of conditions. The conditions involve an index defined on a column prefix, for a BLOB or other long column stored outside the index page, with a table using the Barracuda file format. 
* InnoDB Storage Engine: This fix corrects cases where the MySQL server could hang or abort with a long semaphore wait message. (This is a different issue than when these symptoms occurred during a CHECK TABLE statement.) 
* Replication: Issuing the following statements, in the order shown, could cause a deadlock between the user thread and I/O thread:
START SLAVE;
STOP SLAVE SQL_THREAD;
START SLAVE;
* Internal conversion of zero to binary and back could yield a result with incorrect precision.
* Valgrind warnings generated by filesort operations were fixed. 
* Several improvements were made to the libedit library bundled with MySQL distributions, and that is available for all platforms that MySQL supports except Windows.
- Navigation keys did not work for UTF-8 input.
- Word navigation and delete operations did not work for UTF-8 input with Cyrillic characters.
- Nonlatin characters were corrupted in overwrite mode for UTF-8 input.
- Long queries caused the statement history file to become corrupted.
- The Alt key caused history operations to fail.
* The help message for mysql_install_db did not indicate that it supports the --defaults-file, --defaults-extra-file and --no-defaults options. 
* An assertion designed to detect zero-length sort keys also was raised when the entire key set fit in memory. 
* myisampack could create corrupt FULLTEXT indexes when compressing tables.
* OPTIMIZE TABLE could corrupt MyISAM tables if myisam_use_mmap was enabled. 
* If MySQL was configured with --without-plugin-innobase and --with-plugin-innodb_plugin, to suppress building the built-in InnoDB storage engine and build the InnoDB Plugin instead, the innochecksum utility was not built. 
* A linking problem prevented the FEDERATED storage engine plugin from loading. 
* On Fedora, certain accesses to /var/lib/mysql/HOSTNAME.err were blocked by SELinux policy, which made the server fail at startup with the message: Manager of pid-file quit without updating file 
* For FEDERATED tables, loss of connection to the remote table during some insert operations could cause a server crash.

MySQL 5.5.18 (32-bit) 查看版本資訊

更新時間:2011-11-21
更新細節:

What's new in this version:

Bugs Fixed:
* Incompatible Change: Replication: The statements in the following list are now marked as unsafe for statement-based replication. This is due to the fact that each of these statements depends on the results of a SELECT statement whose order cannot always be determined. When using STATEMENT logging mode, a warning is issued in the binary log for any of these statements; when using MIXED logging mode, the statement is logged using the row-based format.
- INSERT ... SELECT ... ON DUPLICATE KEY UPDATE
- REPLACE ... SELECT
- CREATE TABLE ... IGNORE SELECT
- CREATE TABLE ... REPLACE SELECT
- INSERT IGNORE ... SELECT
- UPDATE IGNORE
When upgrading, you should note the use of these statements in your applications, keeping in mind that a statement that inserts or replaces rows obtained from a SELECT can take up many times as much space in the binary log when logged using row-based format than when only the statement itself is logged. Depending on the number and size of the rows selected and inserted (or replaced) by any such statements, the difference in size of the binary log after the logging of these statements is switched from statement-based to row-based can potentially be several orders of magnitude. See Section 15.1.2.1, “Advantages and Disadvantages of Statement-Based and Row-Based Replication”. 
* Replication: A replication master could send damaged events to slaves after the binary log disk on the master became full. To correct this issue, only complete events are now pushed by the master dump thread to the slave I/O thread. In addition, the error text that the master sends to the slave when an incomplete event is found now states that the incomplete event may have been caused by running out of disk space on the master, and provides coordinates of the first and the last event bytes read.
* mysql_plugin mishandled the --plugin-ini, --mysqld, and --my-print-defaults options under some circumstances. 
* mysql_plugin returned the wrong error code from failed server bootstrap execution. 
* Several improvements were made to the libedit library bundled with MySQL distributions, and that is available for all platforms that MySQL supports except Windows.
- Navigation keys did not work for UTF-8 input.
- Word navigation and delete operations did not work for UTF-8 input with Cyrillic characters.
- Nonlatin characters were corrupted in overwrite mode for UTF-8 input.
- Long queries caused the statement history file to become corrupted.
- The Alt key caused history operations to fail.
* ARCHIVE tables with NULL columns could cause server crashes or become corrupt under concurrent load. 
* OPTIMIZE TABLE could corrupt MyISAM tables if myisam_use_mmap was enabled. 
* A query that selected a GROUP_CONCAT() function result could return different values depending on whether an ORDER BY of the function result was present. 
* For FEDERATED tables, loss of connection to the remote table during some insert

MySQL 5.5.18 (64-bit) 查看版本資訊

更新時間:2011-11-21
更新細節:

What's new in this version:

Bugs Fixed:
* Incompatible Change: Replication: The statements in the following list are now marked as unsafe for statement-based replication. This is due to the fact that each of these statements depends on the results of a SELECT statement whose order cannot always be determined. When using STATEMENT logging mode, a warning is issued in the binary log for any of these statements; when using MIXED logging mode, the statement is logged using the row-based format.
- INSERT ... SELECT ... ON DUPLICATE KEY UPDATE
- REPLACE ... SELECT
- CREATE TABLE ... IGNORE SELECT
- CREATE TABLE ... REPLACE SELECT
- INSERT IGNORE ... SELECT
- UPDATE IGNORE
When upgrading, you should note the use of these statements in your applications, keeping in mind that a statement that inserts or replaces rows obtained from a SELECT can take up many times as much space in the binary log when logged using row-based format than when only the statement itself is logged. Depending on the number and size of the rows selected and inserted (or replaced) by any such statements, the difference in size of the binary log after the logging of these statements is switched from statement-based to row-based can potentially be several orders of magnitude. See Section 15.1.2.1, “Advantages and Disadvantages of Statement-Based and Row-Based Replication”. 
* Replication: A replication master could send damaged events to slaves after the binary log disk on the master became full. To correct this issue, only complete events are now pushed by the master dump thread to the slave I/O thread. In addition, the error text that the master sends to the slave when an incomplete event is found now states that the incomplete event may have been caused by running out of disk space on the master, and provides coordinates of the first and the last event bytes read.
* mysql_plugin mishandled the --plugin-ini, --mysqld, and --my-print-defaults options under some circumstances. 
* mysql_plugin returned the wrong error code from failed server bootstrap execution. 
* Several improvements were made to the libedit library bundled with MySQL distributions, and that is available for all platforms that MySQL supports except Windows.
- Navigation keys did not work for UTF-8 input.
- Word navigation and delete operations did not work for UTF-8 input with Cyrillic characters.
- Nonlatin characters were corrupted in overwrite mode for UTF-8 input.
- Long queries caused the statement history file to become corrupted.
- The Alt key caused history operations to fail.
* ARCHIVE tables with NULL columns could cause server crashes or become corrupt under concurrent load. 
* OPTIMIZE TABLE could corrupt MyISAM tables if myisam_use_mmap was enabled. 
* A query that selected a GROUP_CONCAT() function result could return different values depending on whether an ORDER BY of the function result was present. 
* For FEDERATED tables, loss of connection to the remote table during some insert

MySQL 5.5.17 (32-bit) 查看版本資訊

更新時間:2011-10-22
更新細節:

What's new in this version:

Bugs Fixed : 
- InnoDB Storage Engine: This fix improves the performance of instrumentation code for InnoDB buffer pool operations. 
- InnoDB Storage Engine: Data from BLOB columns could be lost if the server crashed at a precise moment when other columns were being updated in an InnoDB table. 
- InnoDB Storage Engine: Lookups using secondary indexes could give incorrect matches under a specific set of conditions. The conditions involve an index defined on a column prefix, for a BLOB or other long column stored outside the index page, with a table using the Barracuda file format. 
- InnoDB Storage Engine: This fix corrects cases where the MySQL server could hang or abort with a long semaphore wait message. (This is a different issue than when these symptoms occurred during a CHECK TABLE statement.) 
- Internal conversion of zero to binary and back could yield a result with incorrect precision. 
- Valgrind warnings generated by filesort operations were fixed. 
- mysqld_safe did not properly check for an already running instance of mysqld. 
- The help message for mysql_install_db did not indicate that it supports the --defaults-file, --defaults-extra-file and --no-defaults options. 
- An assertion designed to detect zero-length sort keys also was raised when the entire key set fit in memory. 
- myisampack could create corrupt FULLTEXT indexes when compressing tables. 
- A linking problem prevented the FEDERATED storage engine plugin from loading.

MySQL 5.5.17 (64-bit) 查看版本資訊

更新時間:2011-10-22
更新細節:

What's new in this version:

Bugs Fixed : 
- InnoDB Storage Engine: This fix improves the performance of instrumentation code for InnoDB buffer pool operations. 
- InnoDB Storage Engine: Data from BLOB columns could be lost if the server crashed at a precise moment when other columns were being updated in an InnoDB table. 
- InnoDB Storage Engine: Lookups using secondary indexes could give incorrect matches under a specific set of conditions. The conditions involve an index defined on a column prefix, for a BLOB or other long column stored outside the index page, with a table using the Barracuda file format. 
- InnoDB Storage Engine: This fix corrects cases where the MySQL server could hang or abort with a long semaphore wait message. (This is a different issue than when these symptoms occurred during a CHECK TABLE statement.) 
- Internal conversion of zero to binary and back could yield a result with incorrect precision. 
- Valgrind warnings generated by filesort operations were fixed. 
- mysqld_safe did not properly check for an already running instance of mysqld. 
- The help message for mysql_install_db did not indicate that it supports the --defaults-file, --defaults-extra-file and --no-defaults options. 
- An assertion designed to detect zero-length sort keys also was raised when the entire key set fit in memory. 
- myisampack could create corrupt FULLTEXT indexes when compressing tables. 
- A linking problem prevented the FEDERATED storage engine plugin from loading.

MySQL 5.1.59 查看版本資訊

更新時間:2011-09-17
更新細節:

What's new in this version:

Bugs Fixed:
- InnoDB Storage Engine: The “random read-ahead” feature that was removed from the InnoDB Plugin is now available again. Because it is only helpful for certain workloads, it is turned off by default. To turn it on, enable the innodb_random_read_ahead configuration option. Because this feature can improve performance in some cases and reduce performance in others, before relying on this setting, benchmark both with and without the setting enabled. 
- Partitioning: Auto-increment columns of partitioned tables were checked even when they were not being written to. In debug builds, this could lead to a server crash. 
- The option-parsing code for empty strings leaked memory. 
- Replication: Processing of corrupted table map events could cause the server to crash. This was especially likely if the events mapped different tables to the same identifier, such as could happen due to Bug#56226. Now, before applying a table map event, the server checks whether the table has already been mapped with different settings, and if so, an error is raised and the slave SQL thread stops. If it has been mapped with the same settings, or if the table is set to be ignored by filtering rules, there is no change in behavior: the event is skipped and IDs are not checked. 
- ALTER TABLE {MODIFY|CHANGE} ... FIRST did nothing except rename columns if the old and new versions of the table had exactly the same structure with respect to column data types. As a result, the mapping of column name to column data was incorrect. The same thing happened for ALTER TABLE DROP COLUMN ... ADD COLUMN statements intended to produce a new version of the table with exactly the same structure as the old version. 
- For a lower_case_table_names value of 1 or 2 and a database having a mixed-case name, calling a stored function using a fully qualified name including the database name failed. 
- Previously, Performance Schema table columns that held byte counts were BIGINT UNSIGNED. These were changed to BIGINT (signed). This makes it easier to perform calculations that compute differences between columns. 
- For MyISAM tables, attempts to insert incorrect data into an indexed GEOMETRY column could result in table corruption. 
- A race condition between loading a stored routine using the name qualified by the database name and dropping that database resulted in a spurious error message: The table mysql.proc is missing, corrupt, or contains bad data 
- Upgrades using an RPM package recreated the test database, which is undesirable when the DBA had removed it.

MySQL 5.5.16 (32-bit) 查看版本資訊

更新時間:2011-09-16
更新細節:

What's new in this version:

Bugs Fixed:
- InnoDB Storage Engine: The “random read-ahead” feature that was removed from the InnoDB Plugin is now available again. Because it is only helpful for certain workloads, it is turned off by default. To turn it on, enable the innodb_random_read_ahead configuration option. Because this feature can improve performance in some cases and reduce performance in others, before relying on this setting, benchmark both with and without the setting enabled. 
- The metadata locking subsystem added too much overhead for INFORMATION_SCHEMA queries that were processed by opening only .frm or .TRG files and had to scan many tables. For example, SELECT COUNT(-) FROM INFORMATION_SCHEMA.TRIGGERS was affected. 
- Compilation failed on Mac OS X 10.7 (Lion) with a warning: Implicit declaration of function 'pthread_init' 
- With profiling disabled or not compiled in, set_thd_proc_info() unnecessarily checked file name lengths. 
- A DBUG_ASSERT added by Bug #11792200 was overly aggressive in raising assertions. 
- CHECK TABLE and REPAIR TABLE failed to find problems with MERGE tables that had underlying tables missing or with the wrong storage engine. Issues were reported only for the first underlying table. 
- Replication: Processing of corrupted table map events could cause the server to crash. This was especially likely if the events mapped different tables to the same identifier, such as could happen due to Bug#56226. Now, before applying a table map event, the server checks whether the table has already been mapped with different settings, and if so, an error is raised and the slave SQL thread stops. If it has been mapped with the same settings, or if the table is set to be ignored by filtering rules, there is no change in behavior: the event is skipped and IDs are not checked. 
- For a lower_case_table_names value of 1 or 2 and a database having a mixed-case name, calling a stored function using a fully qualified name including the database name failed. 
- Previously, Performance Schema table columns that held byte counts were BIGINT UNSIGNED. These were changed to BIGINT (signed). This makes it easier to perform calculations that compute differences between columns. 
- The embedded server crashed when argc = 0. 
- The mysql_affected_rows() C API function returned 3 (instead of 2) for INSERT ... ON DUPLICATE KEY UPDATE statements where there was a duplicated key value.
- Upgrades using an RPM package recreated the test database, which is undesirable when the DBA had removed it.

MySQL 5.5.16 (64-bit) 查看版本資訊

更新時間:2011-09-16
更新細節:

What's new in this version:

Bugs Fixed:
- InnoDB Storage Engine: The “random read-ahead” feature that was removed from the InnoDB Plugin is now available again. Because it is only helpful for certain workloads, it is turned off by default. To turn it on, enable the innodb_random_read_ahead configuration option. Because this feature can improve performance in some cases and reduce performance in others, before relying on this setting, benchmark both with and without the setting enabled. 
- The metadata locking subsystem added too much overhead for INFORMATION_SCHEMA queries that were processed by opening only .frm or .TRG files and had to scan many tables. For example, SELECT COUNT(-) FROM INFORMATION_SCHEMA.TRIGGERS was affected. 
- Compilation failed on Mac OS X 10.7 (Lion) with a warning: Implicit declaration of function 'pthread_init' 
- With profiling disabled or not compiled in, set_thd_proc_info() unnecessarily checked file name lengths. 
- A DBUG_ASSERT added by Bug #11792200 was overly aggressive in raising assertions. 
- CHECK TABLE and REPAIR TABLE failed to find problems with MERGE tables that had underlying tables missing or with the wrong storage engine. Issues were reported only for the first underlying table. 
- Replication: Processing of corrupted table map events could cause the server to crash. This was especially likely if the events mapped different tables to the same identifier, such as could happen due to Bug#56226. Now, before applying a table map event, the server checks whether the table has already been mapped with different settings, and if so, an error is raised and the slave SQL thread stops. If it has been mapped with the same settings, or if the table is set to be ignored by filtering rules, there is no change in behavior: the event is skipped and IDs are not checked. 
- For a lower_case_table_names value of 1 or 2 and a database having a mixed-case name, calling a stored function using a fully qualified name including the database name failed. 
- Previously, Performance Schema table columns that held byte counts were BIGINT UNSIGNED. These were changed to BIGINT (signed). This makes it easier to perform calculations that compute differences between columns. 
- The embedded server crashed when argc = 0. 
- The mysql_affected_rows() C API function returned 3 (instead of 2) for INSERT ... ON DUPLICATE KEY UPDATE statements where there was a duplicated key value.
- Upgrades using an RPM package recreated the test database, which is undesirable when the DBA had removed it.

MySQL 5.5.15 (32-bit) 查看版本資訊

更新時間:2011-07-28
更新細節:

What's new in this version:

Bugs Fixed:
- InnoDB Storage Engine: A failed CREATE INDEX operation for an InnoDB table could result in some memory being allocated and not freed. This memory leak could affect tables created with the ROW_FORMAT=DYNAMIC and ROW_FORMAT=COMPRESSED settings.
- Partitioning: Auto-increment columns of partitioned tables were checked even when they were not being written to. In debug builds, this could lead to a crash of the server.
- Partitioning: The UNIX_TIMESTAMP() function was not treated as a monotonic function for purposes of partition pruning.
- Replication: If a LOAD DATA INFILE statement—replicated using statement-based replication—featured a SET clause, the name-value pairs were regenerated using a method (Item::print()) intended primarily for generating output for statements such as EXPLAIN EXTENDED, and which cannot be relied on to return valid SQL. This could in certain cases lead to a crash on the slave. To fix this problem, we now name each value in its original, user-supplied form, and use that to create LOAD DATA INFILE statements for statement-based replication.
- Previously, an inappropriate error message was produced if a multiple-table update for an InnoDB table with a clustered primary key would update a table through multiple aliases, and perform an update that may physically move the row in at least one of these aliases. Now the error message is: Primary key/partition key update is not allowed since the table is updated both as 'tbl_name1' and 'tbl_name2'
- ALTER TABLE {MODIFY|CHANGE} ... FIRST did nothing except rename columns if the old and new versions of the table had exactly the same structure with respect to column data types. As a result, the mapping of column name to column data was incorrect. The same thing happened for ALTER TABLE DROP COLUMN, ADD COLUMN statements intended to produce a new version of table with exactly the same structure as the old version.
- Incorrect handling of metadata locking for FLUSH TABLES WITH READ LOCK for statements requiring prelocking caused two problems:
- Execution of any data-changing statement that required prelocking (that is, involved a stored function or trigger) as part of transaction slowed down somewhat all subsequent statements in the transaction. Performance in a transaction that periodically involved such statements gradually degraded over time.
- Execution of any data-changing statement that required prelocking as part of transaction prevented a concurrent FLUSH TABLES WITH READ LOCK from proceeding until the end of transaction rather than at the end of the particular statement.
- The fractional part of the “Queries per second” value in MySQL status output could be displayed incorrectly.
- LOAD DATA INFILE incorrectly parsed relative data file path names that ascended more than three levels in the file system and as a consequence was unable to find the file.
- For MyISAM tables, attempts to insert incorrect data into an indexed GEOMETRY column could result in table corruption.
- In debug builds, Field_new_decimal::store_value() was subject to buffer overflows.
- A race condition between loading a stored routine using the name qualified by the database name and dropping that database resulted in a spurious error message: The table mysql.proc is missing, corrupt, or contains bad data

MySQL 5.5.15 (64-bit) 查看版本資訊

更新時間:2011-07-28
更新細節:

What's new in this version:

Bugs Fixed:
- InnoDB Storage Engine: A failed CREATE INDEX operation for an InnoDB table could result in some memory being allocated and not freed. This memory leak could affect tables created with the ROW_FORMAT=DYNAMIC and ROW_FORMAT=COMPRESSED settings.
- Partitioning: Auto-increment columns of partitioned tables were checked even when they were not being written to. In debug builds, this could lead to a crash of the server.
- Partitioning: The UNIX_TIMESTAMP() function was not treated as a monotonic function for purposes of partition pruning.
- Replication: If a LOAD DATA INFILE statement—replicated using statement-based replication—featured a SET clause, the name-value pairs were regenerated using a method (Item::print()) intended primarily for generating output for statements such as EXPLAIN EXTENDED, and which cannot be relied on to return valid SQL. This could in certain cases lead to a crash on the slave. To fix this problem, we now name each value in its original, user-supplied form, and use that to create LOAD DATA INFILE statements for statement-based replication.
- Previously, an inappropriate error message was produced if a multiple-table update for an InnoDB table with a clustered primary key would update a table through multiple aliases, and perform an update that may physically move the row in at least one of these aliases. Now the error message is: Primary key/partition key update is not allowed since the table is updated both as 'tbl_name1' and 'tbl_name2'
- ALTER TABLE {MODIFY|CHANGE} ... FIRST did nothing except rename columns if the old and new versions of the table had exactly the same structure with respect to column data types. As a result, the mapping of column name to column data was incorrect. The same thing happened for ALTER TABLE DROP COLUMN, ADD COLUMN statements intended to produce a new version of table with exactly the same structure as the old version.
- Incorrect handling of metadata locking for FLUSH TABLES WITH READ LOCK for statements requiring prelocking caused two problems:
- Execution of any data-changing statement that required prelocking (that is, involved a stored function or trigger) as part of transaction slowed down somewhat all subsequent statements in the transaction. Performance in a transaction that periodically involved such statements gradually degraded over time.
- Execution of any data-changing statement that required prelocking as part of transaction prevented a concurrent FLUSH TABLES WITH READ LOCK from proceeding until the end of transaction rather than at the end of the particular statement.
- The fractional part of the “Queries per second” value in MySQL status output could be displayed incorrectly.
- LOAD DATA INFILE incorrectly parsed relative data file path names that ascended more than three levels in the file system and as a consequence was unable to find the file.
- For MyISAM tables, attempts to insert incorrect data into an indexed GEOMETRY column could result in table corruption.
- In debug builds, Field_new_decimal::store_value() was subject to buffer overflows.
- A race condition between loading a stored routine using the name qualified by the database name and dropping that database resulted in a spurious error message: The table mysql.proc is missing, corrupt, or contains bad data