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 Page34 :: 軟體兄弟

MySQL 歷史版本列表 Page34

最新版本 [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 Workbench 6.3.8 (32-bit) 查看版本資訊

更新時間:2016-10-21
更新細節:

What's new in this version:

MySQL Workbench 6.3.8 (32-bit)
- Change log not available for this version

MySQL Workbench 6.3.7 (32-bit)
Functionality Added or Changed:
- The Default target MySQL version model preference is now an open text field instead of a dropdown select box. For example, rather than choosing a version such as "5.7", you can now enter a specific version such as 5.7.12.

Bugs Fixed:
- A typo was fixed on the Configure Server Management page.
- On OS X, after creating a new model, and new diagram, right-clicking on the empty diagram background would freeze Workbench.
- Executing Data Import/Restore would emit an unhandled exception with Import from Self-Contained File enabled.
- On Linux, the Table Data Export wizard failed to complete the export process.
- The MySQL Enterprise Backup Restore functionality could emit an unhandled exception under some circumstances.
- Editing a remote MySQL options file via the Options File management tool would emit an unhandled exception after clicking Apply.
- Exporting data to JSON was exporting NULL values as NULL instead of null, thus breaking the JSON output.
- Under Users and Privileges, Workbench did not allow hyphens for host names in the "limit to hosts matching" field.
- When viewing the code for an existing view (SQL to create the view), hexadecimal values were truncated.
- Migrating a MySQL source to a MySQL target database would fail for tables that had generated columns, as the target server rejected attempts to insert data into generated columns.
- Selecting "5.7" from Default target MySQL version did not take into account changes to newer versions, as 5.7 behaved like 5.7.0 instead of a newer version. For example, it was not possible to use the JSON data type for variables inside the stored procedure editor as JSON was added in MySQL 5.7.7.
- The Schema filter was slow (poor performance) when a lot (1000+) of schemas were present.
- The database migration wizard database field was described as "Leave blank to select it later" but this text was updated to read as "Cannot be blank" because it is a required field
- The generated SQL generated by the forward engineering wizard would incorrectly output "VIRTUALCOMMENT" instead of "VIRTUAL COMMENT".
- An new option is available to specify a path to the SSH configuration and/or known hosts file. This option overwrites the defaults.
- Workbench's Alter Table functionality did not behave correctly when a column was defined using a TIMESTAMP with fractional seconds, such as TIMESTAMP(1). In this case, some columns would be hidden from the editor.
- Under Reverse Engineering, the information provided in the wild card description to select objects contained a typo.
- After successfully executing the database migration wizard, executing it a second time required Workbench to be restarted.
- When executing Data Export using a remote MySQL connection, the error resulting from a missing mysqldump binary was unclear.
- The PostgreSQL migration wizard could fail to migrate PostgreSQL databases that were generated with tryton.
- The Dashboard and Server Status reported different Select per second values. The Server Status page reported incorrect (inflated by about 3x) values
- The PostgreSQL migration wizard could fail with an "pg_catalog.pg_enum does not exist" error.
- The Workbench interface would incorrectly orient itself to display as Right-To-Left (RTL) when a system's language is set to a RTL language, despite Workbench not being translated to that language.
- Attempting to test custom connection details (a connection not yet created by Workbench) caused Workbench to fail and exit. The Test Connection functionality only functioned for existing or new connections.
- The "Limit to Hosts Matching" field in the user manager would incorrectly report a "Host name contains incorrect characters" error if the host named contained numeric characters.
- Import and export to JSON format failed if the table had column names that were keywords such as key or value.
- The Alter Table functionality did not detect a default value change from no default value to an empty string. In other words, adding a default value of "" resulted in Workbench reporting "No changes detected".
- The DBMS connection keep-alive interval option did not function properly. As a result, Workbench could lose the connection and result in errors similar to "Error Code: 2013. Lost connection to MySQL server during query".
- All generated paths now will use "/" as the directory separator in order to avoid the "s" being interpreted as a space, such as "C:pathtocertsserver-cert.pem" for generated SSL certificates.
- Importing CSV data with from a properly UTF-8 encoded source would sometimes fail, and instead could result with errors such as "'ascii' codec can't encode character u'xcf' at position 29: ordinal not in range(128)".
- With Fabric, Workbench cached the topology information and did not update it when the topology changed, like when switching to a new master.
- Code completion has been further improved to only show relevant details, such as if a table is referenced in the FROM clause then only show columns from that table and not all from the default schema, and entries have been reordered to show columns first (only preceded by keywords).
- Some stored procedure definitions were incorrectly reported as having invalid syntax.
- Executing Alter Stored Procedure with a user lacking SELECT privileges would crash MySQL Workbench
- With the MySQL Firewall plugin enabled, having a user name containing a single quote character (rare, but not illegal) the queries would fail and produce an error in the Users and Privileges area of Workbench. These checks are now properly escaped.
- With the validate_password plugin enabled, when Workbench attempted to check the strength of a new password by sending a query to the server, the password was not properly escaped in this query. In such cases, the password was incorrectly reported as a strong or weak password. The associated "SELECT VALIDATE_PASSWORD_STRENGTH" query is now properly escaped.
- Some internal Workbench queries failed to execute with sql_mode set to ANSI_QUOTES.
- The Total Time field within the Recent Activity grid of the Online Backup / MySQL Enterprise Backup section of Workbench showed an incorrect duration value.
- With MySQL Server 5.5 and lower, executing Alter Table on tables with partitions would fail with an error similar to "Syntax error: 'PARTITION' (identifier) is not valid input at this position".
- MySQL Workbench lacked a CentOS profile, so could fail to make remote connections to a CentOS machine.
- After opening the stored procedure editor from the object browser, clicking Execute would execute a query that did not take into account the IN parameters.
- On Windows, the "DEFAULT NULL" value could unintentionally be removed from the "Alter Table" window when clicking on it.
- The Database Migration migration link on the home page was not functioning immediately after a successful migration.
- Several grammar and spelling corrections were implemented into the GUI.
- Under certain circumstances, sub-queries were reported as syntax errors
- Several SQL Server 2014 database migration improvements.
- While modeling, pressing the Enter key while editing a document's properties would close the document properties window instead of adding a new line
- When copying tables, Workbench makes one connection at the start to disable triggers, makes a separate connection to do the data copy, then returns to the first connection to re-enable triggers. If the copy takes longer than the server's wait_timeout, the first connection timed out.
- The Driver sends Unicode data as UTF-8 advanced database migration option that is available when using an ODBC driver is now disabled by default. Also, connections could hang when this option was enabled.
- Executing Delete Row(s) after selecting more than six rows from the results grid would not delete all of the selected rows.
- Adding a DATETIME with precision (such as DATETIME(3)) from the Table Editor would eventually get reverted to DATETIME (without precision).
- The search (magnifying glass) icon in the schema search field was misplaced after the left sidebar was resized.
- Workbench will now prompt to continue the execution of operations containing loops in stored procedures, instead of just canceling it after ~200 executions.
- The Performance Schema installation procedure in Workbench failed to check user privileges before attempting the installation. For example, if the user had all privileges except "ALTER ROUTINE", it would update sys.version but fail to complete the installation, and also fail to back out thereby leaving the sys.version as current but none of the functions were updated.
- On Linux and OS X, the Options File viewer shortened (cut) long option names in the GUI, although editing their values changed the correct options.
- MySQL connections were leaked when connecting and disconnecting to MySQL databases. It leaked one connection per re-connect to a database.
- A large database caused the size reported under the Schema Inspector to wrap around and display a negative number.
- From the Options File management feature, clicking Discard with the Advanced tab open would always revert the thread_handling option value to "one-thread-per-connection" even if it was set to "no threads".
- The print preview icon dialog was missing the Workbench icon.
- Changes to the modeling Appearance font preference did not save properly, or have an effect.
- On Windows, the Query Stats graph would not render with MySQL Server 5.7.
- The Query Stats information tab was populated even when the Performance Schema was disabled.
- The Toggle whether execution of SQL script should continue after failed statements button was updated to better indicate when the option is enabled or disabled.
- On Windows, after closing and reopening Workbench with several SQL Editor tabs open, the tabs names were hash values (instead of MySQL connection names) if the connection names contained non-standard text.
- In the Table Editor, if a column has NN checked, and NN is then unchecked, then a default NULL value is automatically added to the CREATE TABLE statement when Apply is clicked. The column then shows a default value of NULL in the Table Editor.
- If a setting is (incorrectly) defined twice in my.ini, Workbench separates its values with a newline ("n"). For example, if sort_buffer_size is defined twice, Workbench displays it as "sort_buffer_size=256Kn256K". Workbench now follows MySQL Server behavior, and uses the last defined option.
- The cursor could seemingly disappear after executing a query, as it could remain at its last position when the query started to execute. (Bug #19703074, Bug #74128)
- The model Page setup... functionality was not always preserved when choosing a size for printing.

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

更新時間:2016-10-13
更新細節:

What's new in this version:

Security Notes:
- Incompatible Change: For STANDALONE and WIN builds, the default secure_file_priv value has changed from the empty string to NULL. This is a secure-by-default setting because it disables import and export operations. To permit those operations, set secure_file_priv to the path name of the directory to use for those operations.
- The linked OpenSSL library for the MySQL Commercial Server has been updated to version 1.0.1u. For a description of issues fixed in this version. This change does not affect the Oracle-produced MySQL Community build of MySQL Server, which uses the yaSSL library instead.

Functionality Added or Changed:
- yaSSL was upgraded to version 2.4.2. This upgrade corrects issues with: Potential AES side channel leaks; DSA padding for unusual sizes; the SSL_CTX_load_verify_locations() OpenSSL compatibility function failing to handle long path directory names.

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

更新時間:2016-10-13
更新細節:

What's new in this version:

Security Notes:
- Incompatible Change: For STANDALONE and WIN builds, the default secure_file_priv value has changed from the empty string to NULL. This is a secure-by-default setting because it disables import and export operations. To permit those operations, set secure_file_priv to the path name of the directory to use for those operations.
- The linked OpenSSL library for the MySQL Commercial Server has been updated to version 1.0.1u. For a description of issues fixed in this version. This change does not affect the Oracle-produced MySQL Community build of MySQL Server, which uses the yaSSL library instead.

Functionality Added or Changed:
- yaSSL was upgraded to version 2.4.2. This upgrade corrects issues with: Potential AES side channel leaks; DSA padding for unusual sizes; the SSL_CTX_load_verify_locations() OpenSSL compatibility function failing to handle long path directory names.

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

更新時間:2016-09-07
更新細節:

What's new in this version:

Security Notes:
- The validate_password plugin now supports the capability of rejecting passwords that match the current session user name, either forward or in reverse. To enable control over this capability, the plugin exposes a validate_password_check_user_name system variable. By default, this variable is disabled; the default will change to enabled in MySQL 8.0. For more information, see Password Validation Plugin Options and Variables.

Test Suite Notes:
- In mysql-test-run.pl, a limit of 50 was imposed on the number of workers for parallel testing, which on systems with more than 50 CPUs resulted in exhaustion of unique thread IDs. The ID-exhaustion problem has been corrected, and the limit of 50 on number of workers has been lifted. Thanks to Daniel Black for the patch on which this change was based.

Functionality Added or Changed:
- InnoDB: A new dynamic configuration option, innodb_deadlock_detect, can be used to disable deadlock detection. On high concurrency systems, deadlock detection can cause a slowdown when numerous threads wait for the same lock. At times, it may be more efficient to disable deadlock detection and rely on the innodb_lock_wait_timeout setting for transaction rollback when a deadlock occurs.
- The systemd support script for the unit file (mysqld_pre_systemd) now assists in creating the error log file only if its location matches the pattern /var/log/mysql*.log. In other cases, the error log directory must be writable or the error log must be present and writable for the user running the mysqld process. Also, mysqld_pre_systemd now avoids creating insecure temporary files.
- The CMake WITH_LZ4 option has been added to control which LZ4 library is used during compilation. By default WITH_LZ4 is set to bundled, so the library provided with MySQL is used. Setting WITH_LZ4 to system uses the LZ4 library from the operating system.

Bugs Fixed:
- InnoDB: An ALTER TABLE ... ENCRYPTION='Y', ALGORITHM=COPY operation on a table residing in the system tablespace raised an assertion.
- InnoDB: Creating an encrypted table on a Fusion-io disk with an innodb_flush_method setting of O_DIRECT caused a fatal error.
- InnoDB: An operation that dropped and created a full-text search table raised an assertion.
- InnoDB: Accessing full-text search auxiliary tables while dropping the indexed table raised an assertion.
- InnoDB: An online DDL operation on a table with indexed BLOB columns raised an assertion during logging of table modifications.
- InnoDB: In some cases, code that locates a buffer pool chunk corresponding to given pointer returned the wrong chunk.
- Thanks to Alexey Kopytov for the patch.
- Replication: The addition of the transaction-write-set-extraction=XXH64 option uses xxHash symbols from liblz4. Although the xxHash symbols are exported by liblz4, the header file is not part of the API, so compilation failed when building with WITH_LZ4=system. The fix ensures that xxHash is built separately from liblz4 so that it is available both when using the system and bundled LZ4 libraries.
- Replication: mysqlbinlog --read-from-remote-server log1 log2 was opening a new connection for log2 without freeing the connection used for log1. Thanks to Laurynas Biveinis for the contribution.
- Replication: The MTR binary log test suite failed to clean up copied files. Thanks to Daniel Black for the contribution.
- Replication: With binlog_row_image=FULL, when updating single tables temporary tables were unnecessarily being used. The fix ensures single table update follows the same pattern as multi-table update.
- mysqld_safe attempted to read my.cnf in the data directory, although that is no longer a standard option file location.
- For mysqld_safe, the argument to --malloc-lib now must be one of the directories /usr/lib, /usr/lib64, /usr/lib/i386-linux-gnu, or /usr/lib/x86_64-linux-gnu. In addition, the --mysqld and --mysqld-version options can be used only on the command line and not in an option file.
- It was possible to write log files ending with .ini or .cnf that later could be parsed as option files. The general query log and slow query log can no longer be written to a file ending with .ini or .cnf.
- Privilege escalation was possible by exploiting the way REPAIR TABLE used temporary files.
- The client library failed to build on Solaris using the Cstd library.
- If the basedir system variable was set at server startup from the command line or option file, the value was not normalized (on Windows, / was not replaced with /).
- kevent statement timer subsystem deinitialization was revised to avoid a mysqld hang during shutdown on OS X 10.12.
- For accounts for which multiple GRANT statements applied, mysqlpump could fail to dump them all.
- The MYSQL_ADD_PLUGIN macro had a spelling error that caused MYSQL_SERVER not to be defined.
- In-place ALTER TABLE operations which when executed separately caused no table rebuild could when combined into a single statement result in a table rebuild.
- For keyring plugins, the data access layer is now created only as necessary, not once per operation, which improves keyring performance.
- A blank server name in CREATE SERVER statements produced a server exit rather than an error.
- The optimizer failed to check a function return value for an area calculation, leading to a server exit.
- The server could fail to free memory allocated for execution of queries that used generated columns.
- mysqlpump output for triggers that contained multiple statements in the trigger body failed to load correctly.
- Queries that satisfied the following conditions could return different results than in MySQL 5.6: 1) A subquery appeared in the select list; 2) The subquery contained a WHERE condition that referenced a value in the outer query; 3) The outer query contained a GROUP BY that required creation of a temporary table.
- Passwords that were rejected by the validate_password plugin were written by the server to the error log as cleartext.
- A prepared statement that used a parameter in the select list of a derived table that was part of a join could cause a server exit.
- MEDIUMINT columns used in operations with long integer values could result in buffer overflow.
- A spurious ER_NO_SUCH_TABLE error could occur when attempting to execute a prepared CREATE TABLE ... SELECT statement that used a temporary table in the FROM clause and called a stored function. The same error could occur for a nonprepared version of the statement if used in a stored procedure when the procedure was re-executed.
- EINTR handling in the client library has been fixed so that interrupted read and write calls are retried. Previously, EINTR was ignored.

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

更新時間:2016-09-07
更新細節:

What's new in this version:

Security Notes:
- The validate_password plugin now supports the capability of rejecting passwords that match the current session user name, either forward or in reverse. To enable control over this capability, the plugin exposes a validate_password_check_user_name system variable. By default, this variable is disabled; the default will change to enabled in MySQL 8.0. For more information, see Password Validation Plugin Options and Variables.

Test Suite Notes:
- In mysql-test-run.pl, a limit of 50 was imposed on the number of workers for parallel testing, which on systems with more than 50 CPUs resulted in exhaustion of unique thread IDs. The ID-exhaustion problem has been corrected, and the limit of 50 on number of workers has been lifted. Thanks to Daniel Black for the patch on which this change was based.

Functionality Added or Changed:
- InnoDB: A new dynamic configuration option, innodb_deadlock_detect, can be used to disable deadlock detection. On high concurrency systems, deadlock detection can cause a slowdown when numerous threads wait for the same lock. At times, it may be more efficient to disable deadlock detection and rely on the innodb_lock_wait_timeout setting for transaction rollback when a deadlock occurs.
- The systemd support script for the unit file (mysqld_pre_systemd) now assists in creating the error log file only if its location matches the pattern /var/log/mysql*.log. In other cases, the error log directory must be writable or the error log must be present and writable for the user running the mysqld process. Also, mysqld_pre_systemd now avoids creating insecure temporary files.
- The CMake WITH_LZ4 option has been added to control which LZ4 library is used during compilation. By default WITH_LZ4 is set to bundled, so the library provided with MySQL is used. Setting WITH_LZ4 to system uses the LZ4 library from the operating system.

Bugs Fixed:
- InnoDB: An ALTER TABLE ... ENCRYPTION='Y', ALGORITHM=COPY operation on a table residing in the system tablespace raised an assertion.
- InnoDB: Creating an encrypted table on a Fusion-io disk with an innodb_flush_method setting of O_DIRECT caused a fatal error.
- InnoDB: An operation that dropped and created a full-text search table raised an assertion.
- InnoDB: Accessing full-text search auxiliary tables while dropping the indexed table raised an assertion.
- InnoDB: An online DDL operation on a table with indexed BLOB columns raised an assertion during logging of table modifications.
- InnoDB: In some cases, code that locates a buffer pool chunk corresponding to given pointer returned the wrong chunk.
- Thanks to Alexey Kopytov for the patch.
- Replication: The addition of the transaction-write-set-extraction=XXH64 option uses xxHash symbols from liblz4. Although the xxHash symbols are exported by liblz4, the header file is not part of the API, so compilation failed when building with WITH_LZ4=system. The fix ensures that xxHash is built separately from liblz4 so that it is available both when using the system and bundled LZ4 libraries.
- Replication: mysqlbinlog --read-from-remote-server log1 log2 was opening a new connection for log2 without freeing the connection used for log1. Thanks to Laurynas Biveinis for the contribution.
- Replication: The MTR binary log test suite failed to clean up copied files. Thanks to Daniel Black for the contribution.
- Replication: With binlog_row_image=FULL, when updating single tables temporary tables were unnecessarily being used. The fix ensures single table update follows the same pattern as multi-table update.
- mysqld_safe attempted to read my.cnf in the data directory, although that is no longer a standard option file location.
- For mysqld_safe, the argument to --malloc-lib now must be one of the directories /usr/lib, /usr/lib64, /usr/lib/i386-linux-gnu, or /usr/lib/x86_64-linux-gnu. In addition, the --mysqld and --mysqld-version options can be used only on the command line and not in an option file.
- It was possible to write log files ending with .ini or .cnf that later could be parsed as option files. The general query log and slow query log can no longer be written to a file ending with .ini or .cnf.
- Privilege escalation was possible by exploiting the way REPAIR TABLE used temporary files.
- The client library failed to build on Solaris using the Cstd library.
- If the basedir system variable was set at server startup from the command line or option file, the value was not normalized (on Windows, / was not replaced with /).
- kevent statement timer subsystem deinitialization was revised to avoid a mysqld hang during shutdown on OS X 10.12.
- For accounts for which multiple GRANT statements applied, mysqlpump could fail to dump them all.
- The MYSQL_ADD_PLUGIN macro had a spelling error that caused MYSQL_SERVER not to be defined.
- In-place ALTER TABLE operations which when executed separately caused no table rebuild could when combined into a single statement result in a table rebuild.
- For keyring plugins, the data access layer is now created only as necessary, not once per operation, which improves keyring performance.
- A blank server name in CREATE SERVER statements produced a server exit rather than an error.
- The optimizer failed to check a function return value for an area calculation, leading to a server exit.
- The server could fail to free memory allocated for execution of queries that used generated columns.
- mysqlpump output for triggers that contained multiple statements in the trigger body failed to load correctly.
- Queries that satisfied the following conditions could return different results than in MySQL 5.6: 1) A subquery appeared in the select list; 2) The subquery contained a WHERE condition that referenced a value in the outer query; 3) The outer query contained a GROUP BY that required creation of a temporary table.
- Passwords that were rejected by the validate_password plugin were written by the server to the error log as cleartext.
- A prepared statement that used a parameter in the select list of a derived table that was part of a join could cause a server exit.
- MEDIUMINT columns used in operations with long integer values could result in buffer overflow.
- A spurious ER_NO_SUCH_TABLE error could occur when attempting to execute a prepared CREATE TABLE ... SELECT statement that used a temporary table in the FROM clause and called a stored function. The same error could occur for a nonprepared version of the statement if used in a stored procedure when the procedure was re-executed.
- EINTR handling in the client library has been fixed so that interrupted read and write calls are retried. Previously, EINTR was ignored.

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

更新時間:2016-07-30
更新細節:

What's new in this version:

SYS SCHEMA NOTES:
- The sys schema now has a quote_identifier() function that, given a string argument, produces a quoted identifier suitable for inclusion in SQL statements. (Bug #22011361, Bug #78823)
- Output from the sys schema diagnostics() procedure now includes the Tls_version column from the mysql.slave_master_info system table.

FUNCTIONALITY ADDED OR CHANGED:
- The %global compatver value for RPM packages for RHEL/OEL and Fedora releases was updated from 5.6.25 to 5.6.31. (Bug #23038018)
- Specifying an empty value for the --port option (for example, --port=, --port="") is now deprecated and results in a warning. An empty value will be an error in MySQL 8.0. (Bug #23023457, Bug #80903)
- CMake support for compiling with Solaris Studio 12.5 was added. (Bug #82249, Bug #24303829, Bug #81274, Bug #23212938)
- The INFORMATION_SCHEMA INNODB_LOCKS and INNODB_LOCK_WAITS tables are now deprecated and will be removed in a future MySQL release.

BUGS FIXED:
- Performance: A flaw in the allocation of memory for appending string values caused some operations to be performed slowly, including creation of tables having generated columns and inserts of large values into JSON columns. (Bug #80556, Bug #22843444)
- InnoDB: Full-text search auxiliary tables could be dropped by one session while being access by another. (Bug #23742339)
- InnoDB: Selecting full-text index information schema tables for a deleted table caused a segmentation fault. (Bug #23479595)
- InnoDB: A tablespace operation did not properly update the SYS_VIRTUAL system table. (Bug #23325659)
- InnoDB: Rollback of a full-text index synchronization operation raised an assertion. The rollback operation attempted to acquire a mutex still held by the background synchronization thread. (Bug #23320569)
- InnoDB: After compressing a table, an incorrect data length was passed to an internal tablespace encryption function, causing an assertion. (Bug #23279788)
- InnoDB: An r-tree page lock placed during a search operation prevented an undo operation within the same transaction from merging pages. (Bug #23241575)
- InnoDB: A bulk load insert of a record with a compressed size greater than half of the compressed page size resulted in infinite B-tree page splitting when compressing the uncompressed page. (Bug #23120933)
- InnoDB: A lock order violation related to InnoDB full-text search caused errors and raised an assertion. (Bug #23120005)
- InnoDB: In read-only mode, InnoDB attempted to set a corrupt bit in the SYS_INDEXES system table. In read-only mode, the corruption should only be marked in memory. (Bug #23077748)
- InnoDB: InnoDB attempted to materialize non-key generated virtual columns that were not required for partitioning. (Bug #23037025)
- InnoDB: An insert operation on a table containing virtual and spatial indexes raised an assertion due to an invalid parent path encountered during page splitting. (Bug #23008863)
- InnoDB: An ALTER TABLE operation on a table with an indexed virtual column raised an assertion. (Bug #22965271)
- InnoDB: Adding or dropping a generated virtual column could raise an assertion due to a table handle held by an active memcached connection. (Bug #22922527)
- InnoDB: A full-text query that involved a large number of records exceeded the result cache limit and caused a server exit. (Bug #22709692, Bug #80296)
- InnoDB: InnoDB did not block the creation of a foreign key constraint with referential actions on the base column of a generated stored column. (Bug #22687023, Bug #80304)
- InnoDB: The optimizer failed to mark the columns required for MATCH function evaluation when the secondary index used for the full-text query was not chosen by the optimizer. (Bug #22679209, Bug #80298)
- InnoDB: In READ COMMITTED isolation level, InnoDB unnecessarily acquired the lock_sys mutex at COMMIT for a transaction block consisting of read-only SELECT statements.
- InnoDB: Setting innodb_monitor_enable to all did not enable all counters. (Bug #22576241, Bug #80083)
- InnoDB: InnoDB now permits defining a foreign key constraint with a cascading referential action on the base column of an indexed virtual column, and defining cascading referential actions on non-virtual foreign key columns that are explicitly included in a virtual index. (Bug #22469130, Bug #79772)
- InnoDB: An assertion was raised during rollback of an ALTER TABLE operation that dropped and added a secondary index. (Bug #22005726)
- Partitioning: In some cases, an issue with partition pruning being attempted a second time during optimization after all partitions had already been pruned at parsing time led to an assert. (Bug #23194259)
- Replication: Replication slaves could exit trying to apply an UPDATE row event containing virtual generated columns received from a master that was set to binlog_row_image=minimal. (Bug #23604483)
- Replication: When using row-based replication and InnoDB, replication slaves reverted to using an older locking scheme when a transaction had already acquired an AUTOINC lock related to a LOAD FILE or INSERT ... SELECT type of statement, reducing replication slave performance. The fix ensures that sql_command is set correctly for any of the DML events such as WRITE_ROWS_EVENT, UPDATE_EVENT, and DELETE_EVENT. (Bug #79324, Bug #22247668)
- Replication: When using statement-based or mixed binary logging format with --read-only=ON, it was not possible to modify temporary tables. (Bug #62008, Bug #12818255)
- References: See also: Bug #14294223, Bug #16561483.
- MySQL Server upgrades performed using RPM packages failed when upgrading from MySQL 5.6 Community to MySQL 5.7 Community or MySQL 5.6 Commercial to MySQL 5.7 Commercial. (Bug #23736787)
- On CentOS, mysqld installed from a MySQL Community distribution failed to start if a my.cnf file with no datadir value specified was used. (Bug #23721277, Bug #82049)
- The -DWITH_EDITLINE=system CMake option failed with recent versions of the editline library. (Bug #23708332)
- Executing prepared statements with the audit_log plugin installed could cause a server exit. (Bug #23699991)
- The sys schema ps_trace_statement_digest() procedure failed for statements not supported by EXPLAIN, for statements for which EXPLAIN could not find tables, and for statements with no digest found during the monitored period. (Bug #23621189)
- A SELECT Performance Schema tables when an internal buffer was full could cause a server exit. (Bug #23550835, Bug #23298025, Bug #81464)
- The code for reading character set information from Performance Schema statement events tables (for example, events_statements_current) did not prevent simultaneous writing to that information. As a result, the SQL query text character set could be invalid, which could result in a server exit. Now an invalid character set causes SQL_TEXT column truncation. (Bug #23540008)
- An error message spelling error was corrected. Thanks to Derek Jones for the patch. (Bug #23525874, Bug #81713)
- In the Performance Schema, allocating a record when a buffer was full could lead to a server exit. (Bug #23515302)
- A buffer overflow in the regex library was fixed. (Bug #23498283)
- Upgrading from native MySQL 5.6 Debian/Ubuntu packages to Oracle-supplied MySQL 5.7 packages caused server restart failures. (Bug #23498230)
- The CMake configuration was too aggressive in making symbols invisible, resulting in link problems with GCC 5.3 on Solaris. (Bug #23344916, Bug #81593)
- Audit log filtering against the user was performing comparisons against USER(), not CURRENT_USER(). (Bug #23344762)
- After upgrading only the server using RPM packages, the server could fail to start, complaining about a bad errmsg.sys file. (Bug #23338603)
- Upgrading from native Ubuntu 5.7.12 packages to MySQL 5.7.13 packages failed with conflict messages. (Bug #23327563)
- For debug builds, the server exited abnormally if a shutdown command was issued while the audit_log plugin was loaded and an active connection existed. (Bug #23310864)
- The server could fail to interpret expired passwords as expired. (Bug #23291841)
- Certain arguments to NAME_CONST() could cause a server exit. (Bug #23279858)
- For unit-testing with the MySQL test suite, the make unit-test command is no longer available. The ctest program should be used instead. See Unit Tests Added to Main Test Runs. (Bug #23273434)
- Audit log plugins (including query rewrite plugins, which use the audit API) were being acquired and released per statement, negatively affecting scalability. To improve performance, these plugins now are acquired once and released only when the connection ends. (Bug #23236404, Bug #81298)
- mysql-test-run.pl now has a --manual-boot-gdb option that is similar to --boot-gdb but attaches the debugger to the server during the bootstrapping process, permitting the use of a remote debugger. (Bug #23090633)
- The -fexpensive-optimizations option to GCC caused ARM64 and PowerPC builds to compute floating-point operations slightly differently from other platforms. CMake now checks for this problem and disables the option as necessary. (Bug #23046775)
- The test_service_sql_api.test_session_general_log test case now cleans up the general_log table by truncating it at the end of the test. Thanks to Daniel Black for the patch. (Bug #23021111, Bug #80895)
- Lines written to the error log had no space separating the timestamp and thread ID columns if the thread ID took five or more characters. (Bug #23005009, Bug #80854)
- For the innodb_buffer_stats_by_schema and innodb_buffer_stats_by_table sys schema views, the pages_hashed and pages_old columns were incorrect. Thanks to Tsubasa Tanaka for the patch. (Bug #22988461, Bug #80833)
- An incorrect result could be returned for a query using a merged derived table or a view when compared to a similar query using a base table directly, if the query included a WHERE condition in a scalar subquery inside a HAVING condition of the main query block. (Bug #22967439)
- ST_GeomFromGeoJSON() treated JSON NULL as invalid input. Now it treats JSON NULL as SQL NULL and thus returns SQL NULL for JSON NULL input. (Bug #22930020, Bug #80712)
- For the host_summary_by_statement_latency and x$host_summary_by_statement_latency sys schema views, the max_latency column was incorrect. (Bug #22848110, Bug #80569)
- ST_Distance() could raise an assertion for NULL return values. (Bug #22760390)
- In the absence of SQL_CALC_FOUND_ROWS, FOUND_ROWS() for a UNION statement always returned the actual number of rows found even when LIMIT was present. (Bug #22602381, Bug #80148)
- A statement containing a format specifier resulted in a server exit when the query rewrite plugin tried to log the statement. (Bug #22601485)
- With the query cache enabled, executing a prepared statement with CURSOR_TYPE_READ_ONLY and then again with CURSOR_TYPE_NO_CURSOR caused the server to return an error. (Bug #22559575, Bug #80026)
- mysql_real_connect() was not thread-safe when invoked with the MYSQL_READ_DEFAULT_FILE or MYSQL_READ_DEFAULT_GROUP option enabled. (Bug #22322504, Bug #79510)
- With GTIDs enabled, XA COMMIT on a disconnected XA transaction within a multiple-statement transaction raised an assertion. (Bug #22173903)
- The sys schema create_synonym_db() function failed if the synonym name was a reserved word or contained backtick (`) characters. (Bug #22011361, Bug #78823)
- The sys schema host_summary view could fail with a division-by-zero error. (Bug #21970078)
- The GCC workaround for compiling on ARM64 added by Bug #21552524 is needed only for GCC before 5.2.1. (Bug #21845828)
- The sys schema format_path() function replaced substrings of the path name argument without verifying that the substrings were delimited by path name separators. Replacement now works correctly, including on Windows. A consequence is that backslashes in Windows path names are no longer converted to forward slashes in the result. (Bug #21512106)
- MySQL now supports compiling using the GCC __atomic builtins introduced in GCC 4.7 that permit a more efficient implementation of the MySQL atomics API. These __atomic builtins are only used for platforms where the old GCC __sync builtins are not available, such as PowerPC where the server otherwise would not build. (Bug #21221500)
- If a stored function updated a view for which the view table had a trigger defined that updated another table, it could fail and report an error that an existing table did not exist. (Bug #21142859, Bug #76808)
- mysql_upgrade failed to upgrade the sys schema if a sys database directory existed but was empty. (Bug #81352, Bug #23249846, Bug #22875519)
- The bundled Protobuf sources (under the extra directory) were upgraded from version 2.6.0 to 2.6.1. (Bug #81280, Bug #23213376)
- Protobuf is currently used only by the X plugin, but MySQL builds built the protobuf libraries and executables even if X plugin building was disabled with -DWITH_RAPID=0. (Bug #81066, Bug #23097750)
- On Solaris, a misaligned memory buffer could cause a server exit when selecting from the global_status Performance Schema table. (Bug #81065, Bug #23097305)
- A compilation error was corrected for a make_link() call when compiling in C++11 mode. Thanks for Daniel Black for the contribution. (Bug #80996, Bug #23080289)
- Two mysql-test-run.pl tests (ctype_gb18030_binlog and ctype_ldml) failed to produce repeatable output due to improper cleanup. Thanks to Daniel Black for the patch. (Bug #80896, Bug #23021095)
- MySQL failed to build with GCC 6 using the default mode for C++ of -std=gnu++14. The CMake configuration has been adjusted to explicitly set the mode to -std=gnu++03 for GCC 6. (Bug #80371, Bug #22732697)
- Ubuntu packages create the root user account using the auth_socket authentication plugin to achieve secure-by-default installation if installation was done with a blank root password. However, auth_socket was being used even if the password was not blank. (Bug #80137, Bug #22594846, Bug #23321113, Bug #81518)
- Compiling the InnoDB memcached plugin did not work on some platforms where MySQL was configured using -DWITH_LIBEVENT=system. (Bug #80073, Bug #22573379, Bug #23567441)
- The client-side plugin deinitialization function signature was changed from int (*deinit)() to int (*deinit)(void) to avoid warnings when compiling with -Wstrict-prototypes. (Bug #78177, Bug #21680094, Bug #81419, Bug #23282498)
- Several issues were addressed in the sys schema stored procedures that show enabled or disabled Performance

Schema setup:
- Enabled and disabled accounts were shown as host@user, not user@host.
- Disabled users in ps_setup_show_disabled were called enabled_users.
- ps_setup_show_enabled() showed disabled objects.
- setup_actors content was not filtered (all rows were returned whether the actor was enabled or disabled).
- Output order is more deterministic.

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

更新時間:2016-07-30
更新細節:

What's new in this version:

SYS SCHEMA NOTES:
- The sys schema now has a quote_identifier() function that, given a string argument, produces a quoted identifier suitable for inclusion in SQL statements. (Bug #22011361, Bug #78823)
- Output from the sys schema diagnostics() procedure now includes the Tls_version column from the mysql.slave_master_info system table.

FUNCTIONALITY ADDED OR CHANGED:
- The %global compatver value for RPM packages for RHEL/OEL and Fedora releases was updated from 5.6.25 to 5.6.31. (Bug #23038018)
- Specifying an empty value for the --port option (for example, --port=, --port="") is now deprecated and results in a warning. An empty value will be an error in MySQL 8.0. (Bug #23023457, Bug #80903)
- CMake support for compiling with Solaris Studio 12.5 was added. (Bug #82249, Bug #24303829, Bug #81274, Bug #23212938)
- The INFORMATION_SCHEMA INNODB_LOCKS and INNODB_LOCK_WAITS tables are now deprecated and will be removed in a future MySQL release.

BUGS FIXED:
- Performance: A flaw in the allocation of memory for appending string values caused some operations to be performed slowly, including creation of tables having generated columns and inserts of large values into JSON columns. (Bug #80556, Bug #22843444)
- InnoDB: Full-text search auxiliary tables could be dropped by one session while being access by another. (Bug #23742339)
- InnoDB: Selecting full-text index information schema tables for a deleted table caused a segmentation fault. (Bug #23479595)
- InnoDB: A tablespace operation did not properly update the SYS_VIRTUAL system table. (Bug #23325659)
- InnoDB: Rollback of a full-text index synchronization operation raised an assertion. The rollback operation attempted to acquire a mutex still held by the background synchronization thread. (Bug #23320569)
- InnoDB: After compressing a table, an incorrect data length was passed to an internal tablespace encryption function, causing an assertion. (Bug #23279788)
- InnoDB: An r-tree page lock placed during a search operation prevented an undo operation within the same transaction from merging pages. (Bug #23241575)
- InnoDB: A bulk load insert of a record with a compressed size greater than half of the compressed page size resulted in infinite B-tree page splitting when compressing the uncompressed page. (Bug #23120933)
- InnoDB: A lock order violation related to InnoDB full-text search caused errors and raised an assertion. (Bug #23120005)
- InnoDB: In read-only mode, InnoDB attempted to set a corrupt bit in the SYS_INDEXES system table. In read-only mode, the corruption should only be marked in memory. (Bug #23077748)
- InnoDB: InnoDB attempted to materialize non-key generated virtual columns that were not required for partitioning. (Bug #23037025)
- InnoDB: An insert operation on a table containing virtual and spatial indexes raised an assertion due to an invalid parent path encountered during page splitting. (Bug #23008863)
- InnoDB: An ALTER TABLE operation on a table with an indexed virtual column raised an assertion. (Bug #22965271)
- InnoDB: Adding or dropping a generated virtual column could raise an assertion due to a table handle held by an active memcached connection. (Bug #22922527)
- InnoDB: A full-text query that involved a large number of records exceeded the result cache limit and caused a server exit. (Bug #22709692, Bug #80296)
- InnoDB: InnoDB did not block the creation of a foreign key constraint with referential actions on the base column of a generated stored column. (Bug #22687023, Bug #80304)
- InnoDB: The optimizer failed to mark the columns required for MATCH function evaluation when the secondary index used for the full-text query was not chosen by the optimizer. (Bug #22679209, Bug #80298)
- InnoDB: In READ COMMITTED isolation level, InnoDB unnecessarily acquired the lock_sys mutex at COMMIT for a transaction block consisting of read-only SELECT statements.
- InnoDB: Setting innodb_monitor_enable to all did not enable all counters. (Bug #22576241, Bug #80083)
- InnoDB: InnoDB now permits defining a foreign key constraint with a cascading referential action on the base column of an indexed virtual column, and defining cascading referential actions on non-virtual foreign key columns that are explicitly included in a virtual index. (Bug #22469130, Bug #79772)
- InnoDB: An assertion was raised during rollback of an ALTER TABLE operation that dropped and added a secondary index. (Bug #22005726)
- Partitioning: In some cases, an issue with partition pruning being attempted a second time during optimization after all partitions had already been pruned at parsing time led to an assert. (Bug #23194259)
- Replication: Replication slaves could exit trying to apply an UPDATE row event containing virtual generated columns received from a master that was set to binlog_row_image=minimal. (Bug #23604483)
- Replication: When using row-based replication and InnoDB, replication slaves reverted to using an older locking scheme when a transaction had already acquired an AUTOINC lock related to a LOAD FILE or INSERT ... SELECT type of statement, reducing replication slave performance. The fix ensures that sql_command is set correctly for any of the DML events such as WRITE_ROWS_EVENT, UPDATE_EVENT, and DELETE_EVENT. (Bug #79324, Bug #22247668)
- Replication: When using statement-based or mixed binary logging format with --read-only=ON, it was not possible to modify temporary tables. (Bug #62008, Bug #12818255)
- References: See also: Bug #14294223, Bug #16561483.
- MySQL Server upgrades performed using RPM packages failed when upgrading from MySQL 5.6 Community to MySQL 5.7 Community or MySQL 5.6 Commercial to MySQL 5.7 Commercial. (Bug #23736787)
- On CentOS, mysqld installed from a MySQL Community distribution failed to start if a my.cnf file with no datadir value specified was used. (Bug #23721277, Bug #82049)
- The -DWITH_EDITLINE=system CMake option failed with recent versions of the editline library. (Bug #23708332)
- Executing prepared statements with the audit_log plugin installed could cause a server exit. (Bug #23699991)
- The sys schema ps_trace_statement_digest() procedure failed for statements not supported by EXPLAIN, for statements for which EXPLAIN could not find tables, and for statements with no digest found during the monitored period. (Bug #23621189)
- A SELECT Performance Schema tables when an internal buffer was full could cause a server exit. (Bug #23550835, Bug #23298025, Bug #81464)
- The code for reading character set information from Performance Schema statement events tables (for example, events_statements_current) did not prevent simultaneous writing to that information. As a result, the SQL query text character set could be invalid, which could result in a server exit. Now an invalid character set causes SQL_TEXT column truncation. (Bug #23540008)
- An error message spelling error was corrected. Thanks to Derek Jones for the patch. (Bug #23525874, Bug #81713)
- In the Performance Schema, allocating a record when a buffer was full could lead to a server exit. (Bug #23515302)
- A buffer overflow in the regex library was fixed. (Bug #23498283)
- Upgrading from native MySQL 5.6 Debian/Ubuntu packages to Oracle-supplied MySQL 5.7 packages caused server restart failures. (Bug #23498230)
- The CMake configuration was too aggressive in making symbols invisible, resulting in link problems with GCC 5.3 on Solaris. (Bug #23344916, Bug #81593)
- Audit log filtering against the user was performing comparisons against USER(), not CURRENT_USER(). (Bug #23344762)
- After upgrading only the server using RPM packages, the server could fail to start, complaining about a bad errmsg.sys file. (Bug #23338603)
- Upgrading from native Ubuntu 5.7.12 packages to MySQL 5.7.13 packages failed with conflict messages. (Bug #23327563)
- For debug builds, the server exited abnormally if a shutdown command was issued while the audit_log plugin was loaded and an active connection existed. (Bug #23310864)
- The server could fail to interpret expired passwords as expired. (Bug #23291841)
- Certain arguments to NAME_CONST() could cause a server exit. (Bug #23279858)
- For unit-testing with the MySQL test suite, the make unit-test command is no longer available. The ctest program should be used instead. See Unit Tests Added to Main Test Runs. (Bug #23273434)
- Audit log plugins (including query rewrite plugins, which use the audit API) were being acquired and released per statement, negatively affecting scalability. To improve performance, these plugins now are acquired once and released only when the connection ends. (Bug #23236404, Bug #81298)
- mysql-test-run.pl now has a --manual-boot-gdb option that is similar to --boot-gdb but attaches the debugger to the server during the bootstrapping process, permitting the use of a remote debugger. (Bug #23090633)
- The -fexpensive-optimizations option to GCC caused ARM64 and PowerPC builds to compute floating-point operations slightly differently from other platforms. CMake now checks for this problem and disables the option as necessary. (Bug #23046775)
- The test_service_sql_api.test_session_general_log test case now cleans up the general_log table by truncating it at the end of the test. Thanks to Daniel Black for the patch. (Bug #23021111, Bug #80895)
- Lines written to the error log had no space separating the timestamp and thread ID columns if the thread ID took five or more characters. (Bug #23005009, Bug #80854)
- For the innodb_buffer_stats_by_schema and innodb_buffer_stats_by_table sys schema views, the pages_hashed and pages_old columns were incorrect. Thanks to Tsubasa Tanaka for the patch. (Bug #22988461, Bug #80833)
- An incorrect result could be returned for a query using a merged derived table or a view when compared to a similar query using a base table directly, if the query included a WHERE condition in a scalar subquery inside a HAVING condition of the main query block. (Bug #22967439)
- ST_GeomFromGeoJSON() treated JSON NULL as invalid input. Now it treats JSON NULL as SQL NULL and thus returns SQL NULL for JSON NULL input. (Bug #22930020, Bug #80712)
- For the host_summary_by_statement_latency and x$host_summary_by_statement_latency sys schema views, the max_latency column was incorrect. (Bug #22848110, Bug #80569)
- ST_Distance() could raise an assertion for NULL return values. (Bug #22760390)
- In the absence of SQL_CALC_FOUND_ROWS, FOUND_ROWS() for a UNION statement always returned the actual number of rows found even when LIMIT was present. (Bug #22602381, Bug #80148)
- A statement containing a format specifier resulted in a server exit when the query rewrite plugin tried to log the statement. (Bug #22601485)
- With the query cache enabled, executing a prepared statement with CURSOR_TYPE_READ_ONLY and then again with CURSOR_TYPE_NO_CURSOR caused the server to return an error. (Bug #22559575, Bug #80026)
- mysql_real_connect() was not thread-safe when invoked with the MYSQL_READ_DEFAULT_FILE or MYSQL_READ_DEFAULT_GROUP option enabled. (Bug #22322504, Bug #79510)
- With GTIDs enabled, XA COMMIT on a disconnected XA transaction within a multiple-statement transaction raised an assertion. (Bug #22173903)
- The sys schema create_synonym_db() function failed if the synonym name was a reserved word or contained backtick (`) characters. (Bug #22011361, Bug #78823)
- The sys schema host_summary view could fail with a division-by-zero error. (Bug #21970078)
- The GCC workaround for compiling on ARM64 added by Bug #21552524 is needed only for GCC before 5.2.1. (Bug #21845828)
- The sys schema format_path() function replaced substrings of the path name argument without verifying that the substrings were delimited by path name separators. Replacement now works correctly, including on Windows. A consequence is that backslashes in Windows path names are no longer converted to forward slashes in the result. (Bug #21512106)
- MySQL now supports compiling using the GCC __atomic builtins introduced in GCC 4.7 that permit a more efficient implementation of the MySQL atomics API. These __atomic builtins are only used for platforms where the old GCC __sync builtins are not available, such as PowerPC where the server otherwise would not build. (Bug #21221500)
- If a stored function updated a view for which the view table had a trigger defined that updated another table, it could fail and report an error that an existing table did not exist. (Bug #21142859, Bug #76808)
- mysql_upgrade failed to upgrade the sys schema if a sys database directory existed but was empty. (Bug #81352, Bug #23249846, Bug #22875519)
- The bundled Protobuf sources (under the extra directory) were upgraded from version 2.6.0 to 2.6.1. (Bug #81280, Bug #23213376)
- Protobuf is currently used only by the X plugin, but MySQL builds built the protobuf libraries and executables even if X plugin building was disabled with -DWITH_RAPID=0. (Bug #81066, Bug #23097750)
- On Solaris, a misaligned memory buffer could cause a server exit when selecting from the global_status Performance Schema table. (Bug #81065, Bug #23097305)
- A compilation error was corrected for a make_link() call when compiling in C++11 mode. Thanks for Daniel Black for the contribution. (Bug #80996, Bug #23080289)
- Two mysql-test-run.pl tests (ctype_gb18030_binlog and ctype_ldml) failed to produce repeatable output due to improper cleanup. Thanks to Daniel Black for the patch. (Bug #80896, Bug #23021095)
- MySQL failed to build with GCC 6 using the default mode for C++ of -std=gnu++14. The CMake configuration has been adjusted to explicitly set the mode to -std=gnu++03 for GCC 6. (Bug #80371, Bug #22732697)
- Ubuntu packages create the root user account using the auth_socket authentication plugin to achieve secure-by-default installation if installation was done with a blank root password. However, auth_socket was being used even if the password was not blank. (Bug #80137, Bug #22594846, Bug #23321113, Bug #81518)
- Compiling the InnoDB memcached plugin did not work on some platforms where MySQL was configured using -DWITH_LIBEVENT=system. (Bug #80073, Bug #22573379, Bug #23567441)
- The client-side plugin deinitialization function signature was changed from int (*deinit)() to int (*deinit)(void) to avoid warnings when compiling with -Wstrict-prototypes. (Bug #78177, Bug #21680094, Bug #81419, Bug #23282498)
- Several issues were addressed in the sys schema stored procedures that show enabled or disabled Performance

Schema setup:
- Enabled and disabled accounts were shown as host@user, not user@host.
- Disabled users in ps_setup_show_disabled were called enabled_users.
- ps_setup_show_enabled() showed disabled objects.
- setup_actors content was not filtered (all rows were returned whether the actor was enabled or disabled).
- Output order is more deterministic.

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

更新時間:2016-06-09
更新細節:

What's new in this version:

Functionality Added or Changed:
- The Default target MySQL version model preference is now an open text field instead of a dropdown select box. For example, rather than choosing a version such as "5.7", you can now enter a specific version such as 5.7.12.

Bugs Fixed:
- A typo was fixed on the Configure Server Management page.
- On OS X, after creating a new model, and new diagram, right-clicking on the empty diagram background would freeze Workbench.
- Executing Data Import/Restore would emit an unhandled exception with Import from Self-Contained File enabled.
- On Linux, the Table Data Export wizard failed to complete the export process.
- The MySQL Enterprise Backup Restore functionality could emit an unhandled exception under some circumstances.
- Editing a remote MySQL options file via the Options File management tool would emit an unhandled exception after clicking Apply.
- Exporting data to JSON was exporting NULL values as NULL instead of null, thus breaking the JSON output.
- Under Users and Privileges, Workbench did not allow hyphens for host names in the "limit to hosts matching" field.
- When viewing the code for an existing view (SQL to create the view), hexadecimal values were truncated.
- Migrating a MySQL source to a MySQL target database would fail for tables that had generated columns, as the target server rejected attempts to insert data into generated columns.
- Selecting "5.7" from Default target MySQL version did not take into account changes to newer versions, as 5.7 behaved like 5.7.0 instead of a newer version. For example, it was not possible to use the JSON data type for variables inside the stored procedure editor as JSON was added in MySQL 5.7.7.
- The Schema filter was slow (poor performance) when a lot (1000+) of schemas were present.
- The database migration wizard database field was described as "Leave blank to select it later" but this text was updated to read as "Cannot be blank" because it is a required field
- The generated SQL generated by the forward engineering wizard would incorrectly output "VIRTUALCOMMENT" instead of "VIRTUAL COMMENT".
- An new option is available to specify a path to the SSH configuration and/or known hosts file. This option overwrites the defaults.
- Workbench's Alter Table functionality did not behave correctly when a column was defined using a TIMESTAMP with fractional seconds, such as TIMESTAMP(1). In this case, some columns would be hidden from the editor.
- Under Reverse Engineering, the information provided in the wild card description to select objects contained a typo.
- After successfully executing the database migration wizard, executing it a second time required Workbench to be restarted.
- When executing Data Export using a remote MySQL connection, the error resulting from a missing mysqldump binary was unclear.
- The PostgreSQL migration wizard could fail to migrate PostgreSQL databases that were generated with tryton.
- The Dashboard and Server Status reported different Select per second values. The Server Status page reported incorrect (inflated by about 3x) values
- The PostgreSQL migration wizard could fail with an "pg_catalog.pg_enum does not exist" error.
- The Workbench interface would incorrectly orient itself to display as Right-To-Left (RTL) when a system's language is set to a RTL language, despite Workbench not being translated to that language.
- Attempting to test custom connection details (a connection not yet created by Workbench) caused Workbench to fail and exit. The Test Connection functionality only functioned for existing or new connections.
- The "Limit to Hosts Matching" field in the user manager would incorrectly report a "Host name contains incorrect characters" error if the host named contained numeric characters.
- Import and export to JSON format failed if the table had column names that were keywords such as key or value.
- The Alter Table functionality did not detect a default value change from no default value to an empty string. In other words, adding a default value of "" resulted in Workbench reporting "No changes detected".
- The DBMS connection keep-alive interval option did not function properly. As a result, Workbench could lose the connection and result in errors similar to "Error Code: 2013. Lost connection to MySQL server during query".
- All generated paths now will use "/" as the directory separator in order to avoid the "s" being interpreted as a space, such as "C:pathtocertsserver-cert.pem" for generated SSL certificates.
- Importing CSV data with from a properly UTF-8 encoded source would sometimes fail, and instead could result with errors such as "'ascii' codec can't encode character u'xcf' at position 29: ordinal not in range(128)".
- With Fabric, Workbench cached the topology information and did not update it when the topology changed, like when switching to a new master.
- Code completion has been further improved to only show relevant details, such as if a table is referenced in the FROM clause then only show columns from that table and not all from the default schema, and entries have been reordered to show columns first (only preceded by keywords).
- Some stored procedure definitions were incorrectly reported as having invalid syntax.
- Executing Alter Stored Procedure with a user lacking SELECT privileges would crash MySQL Workbench
- With the MySQL Firewall plugin enabled, having a user name containing a single quote character (rare, but not illegal) the queries would fail and produce an error in the Users and Privileges area of Workbench. These checks are now properly escaped.
- With the validate_password plugin enabled, when Workbench attempted to check the strength of a new password by sending a query to the server, the password was not properly escaped in this query. In such cases, the password was incorrectly reported as a strong or weak password. The associated "SELECT VALIDATE_PASSWORD_STRENGTH" query is now properly escaped.
- Some internal Workbench queries failed to execute with sql_mode set to ANSI_QUOTES.
- The Total Time field within the Recent Activity grid of the Online Backup / MySQL Enterprise Backup section of Workbench showed an incorrect duration value.
- With MySQL Server 5.5 and lower, executing Alter Table on tables with partitions would fail with an error similar to "Syntax error: 'PARTITION' (identifier) is not valid input at this position".
- MySQL Workbench lacked a CentOS profile, so could fail to make remote connections to a CentOS machine.
- After opening the stored procedure editor from the object browser, clicking Execute would execute a query that did not take into account the IN parameters.
- On Windows, the "DEFAULT NULL" value could unintentionally be removed from the "Alter Table" window when clicking on it.
- The Database Migration migration link on the home page was not functioning immediately after a successful migration.
- Several grammar and spelling corrections were implemented into the GUI.
- Under certain circumstances, sub-queries were reported as syntax errors
- Several SQL Server 2014 database migration improvements.
- While modeling, pressing the Enter key while editing a document's properties would close the document properties window instead of adding a new line
- When copying tables, Workbench makes one connection at the start to disable triggers, makes a separate connection to do the data copy, then returns to the first connection to re-enable triggers. If the copy takes longer than the server's wait_timeout, the first connection timed out.
- The Driver sends Unicode data as UTF-8 advanced database migration option that is available when using an ODBC driver is now disabled by default. Also, connections could hang when this option was enabled.
- Executing Delete Row(s) after selecting more than six rows from the results grid would not delete all of the selected rows.
- Adding a DATETIME with precision (such as DATETIME(3)) from the Table Editor would eventually get reverted to DATETIME (without precision).
- The search (magnifying glass) icon in the schema search field was misplaced after the left sidebar was resized.
- Workbench will now prompt to continue the execution of operations containing loops in stored procedures, instead of just canceling it after ~200 executions.
- The Performance Schema installation procedure in Workbench failed to check user privileges before attempting the installation. For example, if the user had all privileges except "ALTER ROUTINE", it would update sys.version but fail to complete the installation, and also fail to back out thereby leaving the sys.version as current but none of the functions were updated.
- On Linux and OS X, the Options File viewer shortened (cut) long option names in the GUI, although editing their values changed the correct options.
- MySQL connections were leaked when connecting and disconnecting to MySQL databases. It leaked one connection per re-connect to a database.
- A large database caused the size reported under the Schema Inspector to wrap around and display a negative number.
- From the Options File management feature, clicking Discard with the Advanced tab open would always revert the thread_handling option value to "one-thread-per-connection" even if it was set to "no threads".
- The print preview icon dialog was missing the Workbench icon.
- Changes to the modeling Appearance font preference did not save properly, or have an effect.
- On Windows, the Query Stats graph would not render with MySQL Server 5.7.
- The Query Stats information tab was populated even when the Performance Schema was disabled.
- The Toggle whether execution of SQL script should continue after failed statements button was updated to better indicate when the option is enabled or disabled.
- On Windows, after closing and reopening Workbench with several SQL Editor tabs open, the tabs names were hash values (instead of MySQL connection names) if the connection names contained non-standard text.
- In the Table Editor, if a column has NN checked, and NN is then unchecked, then a default NULL value is automatically added to the CREATE TABLE statement when Apply is clicked. The column then shows a default value of NULL in the Table Editor.
- If a setting is (incorrectly) defined twice in my.ini, Workbench separates its values with a newline ("n"). For example, if sort_buffer_size is defined twice, Workbench displays it as "sort_buffer_size=256Kn256K". Workbench now follows MySQL Server behavior, and uses the last defined option.
- The cursor could seemingly disappear after executing a query, as it could remain at its last position when the query started to execute. (Bug #19703074, Bug #74128)
- The model Page setup... functionality was not always preserved when choosing a size for printing.

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

更新時間:2016-06-09
更新細節:

What's new in this version:

Functionality Added or Changed:
- The Default target MySQL version model preference is now an open text field instead of a dropdown select box. For example, rather than choosing a version such as "5.7", you can now enter a specific version such as 5.7.12.

Bugs Fixed:
- A typo was fixed on the Configure Server Management page.
- On OS X, after creating a new model, and new diagram, right-clicking on the empty diagram background would freeze Workbench.
- Executing Data Import/Restore would emit an unhandled exception with Import from Self-Contained File enabled.
- On Linux, the Table Data Export wizard failed to complete the export process.
- The MySQL Enterprise Backup Restore functionality could emit an unhandled exception under some circumstances.
- Editing a remote MySQL options file via the Options File management tool would emit an unhandled exception after clicking Apply.
- Exporting data to JSON was exporting NULL values as NULL instead of null, thus breaking the JSON output.
- Under Users and Privileges, Workbench did not allow hyphens for host names in the "limit to hosts matching" field.
- When viewing the code for an existing view (SQL to create the view), hexadecimal values were truncated.
- Migrating a MySQL source to a MySQL target database would fail for tables that had generated columns, as the target server rejected attempts to insert data into generated columns.
- Selecting "5.7" from Default target MySQL version did not take into account changes to newer versions, as 5.7 behaved like 5.7.0 instead of a newer version. For example, it was not possible to use the JSON data type for variables inside the stored procedure editor as JSON was added in MySQL 5.7.7.
- The Schema filter was slow (poor performance) when a lot (1000+) of schemas were present.
- The database migration wizard database field was described as "Leave blank to select it later" but this text was updated to read as "Cannot be blank" because it is a required field
- The generated SQL generated by the forward engineering wizard would incorrectly output "VIRTUALCOMMENT" instead of "VIRTUAL COMMENT".
- An new option is available to specify a path to the SSH configuration and/or known hosts file. This option overwrites the defaults.
- Workbench's Alter Table functionality did not behave correctly when a column was defined using a TIMESTAMP with fractional seconds, such as TIMESTAMP(1). In this case, some columns would be hidden from the editor.
- Under Reverse Engineering, the information provided in the wild card description to select objects contained a typo.
- After successfully executing the database migration wizard, executing it a second time required Workbench to be restarted.
- When executing Data Export using a remote MySQL connection, the error resulting from a missing mysqldump binary was unclear.
- The PostgreSQL migration wizard could fail to migrate PostgreSQL databases that were generated with tryton.
- The Dashboard and Server Status reported different Select per second values. The Server Status page reported incorrect (inflated by about 3x) values
- The PostgreSQL migration wizard could fail with an "pg_catalog.pg_enum does not exist" error.
- The Workbench interface would incorrectly orient itself to display as Right-To-Left (RTL) when a system's language is set to a RTL language, despite Workbench not being translated to that language.
- Attempting to test custom connection details (a connection not yet created by Workbench) caused Workbench to fail and exit. The Test Connection functionality only functioned for existing or new connections.
- The "Limit to Hosts Matching" field in the user manager would incorrectly report a "Host name contains incorrect characters" error if the host named contained numeric characters.
- Import and export to JSON format failed if the table had column names that were keywords such as key or value.
- The Alter Table functionality did not detect a default value change from no default value to an empty string. In other words, adding a default value of "" resulted in Workbench reporting "No changes detected".
- The DBMS connection keep-alive interval option did not function properly. As a result, Workbench could lose the connection and result in errors similar to "Error Code: 2013. Lost connection to MySQL server during query".
- All generated paths now will use "/" as the directory separator in order to avoid the "s" being interpreted as a space, such as "C:pathtocertsserver-cert.pem" for generated SSL certificates.
- Importing CSV data with from a properly UTF-8 encoded source would sometimes fail, and instead could result with errors such as "'ascii' codec can't encode character u'xcf' at position 29: ordinal not in range(128)".
- With Fabric, Workbench cached the topology information and did not update it when the topology changed, like when switching to a new master.
- Code completion has been further improved to only show relevant details, such as if a table is referenced in the FROM clause then only show columns from that table and not all from the default schema, and entries have been reordered to show columns first (only preceded by keywords).
- Some stored procedure definitions were incorrectly reported as having invalid syntax.
- Executing Alter Stored Procedure with a user lacking SELECT privileges would crash MySQL Workbench
- With the MySQL Firewall plugin enabled, having a user name containing a single quote character (rare, but not illegal) the queries would fail and produce an error in the Users and Privileges area of Workbench. These checks are now properly escaped.
- With the validate_password plugin enabled, when Workbench attempted to check the strength of a new password by sending a query to the server, the password was not properly escaped in this query. In such cases, the password was incorrectly reported as a strong or weak password. The associated "SELECT VALIDATE_PASSWORD_STRENGTH" query is now properly escaped.
- Some internal Workbench queries failed to execute with sql_mode set to ANSI_QUOTES.
- The Total Time field within the Recent Activity grid of the Online Backup / MySQL Enterprise Backup section of Workbench showed an incorrect duration value.
- With MySQL Server 5.5 and lower, executing Alter Table on tables with partitions would fail with an error similar to "Syntax error: 'PARTITION' (identifier) is not valid input at this position".
- MySQL Workbench lacked a CentOS profile, so could fail to make remote connections to a CentOS machine.
- After opening the stored procedure editor from the object browser, clicking Execute would execute a query that did not take into account the IN parameters.
- On Windows, the "DEFAULT NULL" value could unintentionally be removed from the "Alter Table" window when clicking on it.
- The Database Migration migration link on the home page was not functioning immediately after a successful migration.
- Several grammar and spelling corrections were implemented into the GUI.
- Under certain circumstances, sub-queries were reported as syntax errors
- Several SQL Server 2014 database migration improvements.
- While modeling, pressing the Enter key while editing a document's properties would close the document properties window instead of adding a new line
- When copying tables, Workbench makes one connection at the start to disable triggers, makes a separate connection to do the data copy, then returns to the first connection to re-enable triggers. If the copy takes longer than the server's wait_timeout, the first connection timed out.
- The Driver sends Unicode data as UTF-8 advanced database migration option that is available when using an ODBC driver is now disabled by default. Also, connections could hang when this option was enabled.
- Executing Delete Row(s) after selecting more than six rows from the results grid would not delete all of the selected rows.
- Adding a DATETIME with precision (such as DATETIME(3)) from the Table Editor would eventually get reverted to DATETIME (without precision).
- The search (magnifying glass) icon in the schema search field was misplaced after the left sidebar was resized.
- Workbench will now prompt to continue the execution of operations containing loops in stored procedures, instead of just canceling it after ~200 executions.
- The Performance Schema installation procedure in Workbench failed to check user privileges before attempting the installation. For example, if the user had all privileges except "ALTER ROUTINE", it would update sys.version but fail to complete the installation, and also fail to back out thereby leaving the sys.version as current but none of the functions were updated.
- On Linux and OS X, the Options File viewer shortened (cut) long option names in the GUI, although editing their values changed the correct options.
- MySQL connections were leaked when connecting and disconnecting to MySQL databases. It leaked one connection per re-connect to a database.
- A large database caused the size reported under the Schema Inspector to wrap around and display a negative number.
- From the Options File management feature, clicking Discard with the Advanced tab open would always revert the thread_handling option value to "one-thread-per-connection" even if it was set to "no threads".
- The print preview icon dialog was missing the Workbench icon.
- Changes to the modeling Appearance font preference did not save properly, or have an effect.
- On Windows, the Query Stats graph would not render with MySQL Server 5.7.
- The Query Stats information tab was populated even when the Performance Schema was disabled.
- The Toggle whether execution of SQL script should continue after failed statements button was updated to better indicate when the option is enabled or disabled.
- On Windows, after closing and reopening Workbench with several SQL Editor tabs open, the tabs names were hash values (instead of MySQL connection names) if the connection names contained non-standard text.
- In the Table Editor, if a column has NN checked, and NN is then unchecked, then a default NULL value is automatically added to the CREATE TABLE statement when Apply is clicked. The column then shows a default value of NULL in the Table Editor.
- If a setting is (incorrectly) defined twice in my.ini, Workbench separates its values with a newline ("n"). For example, if sort_buffer_size is defined twice, Workbench displays it as "sort_buffer_size=256Kn256K". Workbench now follows MySQL Server behavior, and uses the last defined option.
- The cursor could seemingly disappear after executing a query, as it could remain at its last position when the query started to execute. (Bug #19703074, Bug #74128)
- The model Page setup... functionality was not always preserved when choosing a size for printing.

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

更新時間:2016-06-06
更新細節:

What's new in this version:

Functionality Added or Changed:
- The version of the tcmalloc library included in MySQL distributions was very old. It has been removed and is no longer included with MySQL

Bugs Fixed:
- INSERT with ON DUPLICATE KEY UPDATE and REPLACE on a table with a foreign key constraint defined failed with an incorrect “duplicate entry” error rather than a foreign key constraint violation error
- Setting sort_buffer_size to a very large value could cause some operations to fail with an out-of-memory error
- Several potential buffer overflow issues were corrected
- If the CA certificate as given to the --ssl-ca option had an invalid path, yaSSL returned an error message different from OpenSSL. Now both return SSL connection error: SSL_CTX_set_default_verify_paths failed
- Some string functions returned one or a combination of their parameters as their result. If one of the parameters had a non-ASCII character set, the result string had the same character set, resulting in incorrect behavior when an ASCII string was expected
- A null pointer dereference of a parser structure could occur during stored procedure name validation
- mysqld_multi displayed misleading error messages when it was unable to execute my_print_defaults