Percona Server 5.7 正式版发布了，下载地址：
下面是在 5.6 版本存在的功能，但是在 5.7 中被移除的：
- Handlersocket – This feature might be included in a future release if HandlerSocket starts supporting 5.7.
- Support for Fake Changes – Instead of slave prefetching using the fake changes, a 5.7 intra-schema parallel replication slave should be used.
- SHOW ENGINE INNODB STATUS no longer prints the count of active Read-Only transactions.
- InnoDB redo log archiving has been removed due to lack of user uptake of the feature.
5.6 的功能在 5.7 中有变化的：
- The minor Percona Server version number (“y” in “5.a.b-x.y”) has been dropped to simplifyPercona Server versioning.
- Performance Schema memory instrumentation support has been added to the Audit Log Plugin, Metrics for scalability measurement, and PAM Authentication Plugin, and to the core server to track memory used by User Statistics, Per-query variable statement, XtraDB changed page tracking, and Thread Pool features.
- Audit Log Plugin now produces diagnostics in a format consistent with the rest of the server.
- The performance_schema.metadata_locks table now displays backup and binlog lock information too. The object_type column has two new valid values: backup, and binlog.
- XTRADB_RSEG table schema has been changed to support new possible InnoDB page sizes. The zip_size column has been removed and replaced by new columnsphysical_page_size, logical_page_size, and is_compressed.
- XTRADB_READ_VIEW table no longer contains the READ_VIEW_UNDO_NUMBER column, which was associated with unused code and always contained zero.
- Interaction between --hidden- option modifier and session_track_system_variables has been implemented as follows: any variables with --hidden- modifier become hidden from the latter variable too. Thus, they should not be present there. Even if you never setsession_track_system_variables, care must be taken if a variable contained in its default value (i.e. autocommit) is hidden.
- Nested SET STATEMENT ... FOR SET STATEMENT ... FOR ... statements will have different effect in the innermost clause in case the nested clauses set the same variables: in 5.6 the innermost assignment had effect whereas in 5.7 the outermost assignment is effective.
- Utility user is treated as a SUPER user for the purposes of offline mode: utility user connections are not dropped if server switches to offline mode and new utility user connections can be established to such server.
- The server will abort startup with an error message if conflicting enforce_storage_engineand disabled_storage_engines option values are specified, that is, if the enforced storage engine is in the list of disabled storage engines.
5.6 的功能被 5.7 替换的：
- Lock-Free SHOW SLAVE STATUS NONBLOCKING has been replaced by a regular SHOW SLAVESTATUS implementation. Oracle implementation forbids calling it from a stored function.
- Behavior corresponding to slow_query_log_timestamp_precision set tomicrosecond is now the default, the variable itself and the behavior corresponding to the variable’s second value is removed.
- Behavior corresponding to slow_query_log_timestamp_always set to TRUE is now the default, the variable itself and the behavior corresponding to the variable’s FALSE value is removed.
- Statement timeout feature has been replaced by Oracle Server-side SELECT statement timeouts implementation. Differences: the Oracle variable is named max_execution_timeinstead of max_statement_time; variable have_statement_timeout variable has been removed removed; the timeouts only apply for read-only SELECTs.
- Atomic write support on fusionIO devices with NVMFS has been replaced by Oracle implementation. It is no longer required to enable innodb_use_atomic_writes variable, and this variable has been removed. The atomic write support will be enabled, and the doublewrite buffer disabled, on supporting devices automatically. The Oracle implementation does not silently adjust innodb_flush_method to O_DIRECT if it has a different value. The user must set it to O_DIRECT explicitly, or atomic writes will not be enabled.
- Online GTID migration patch has been replaced by an upstream variable gtid_mode made dynamic.
- The Error Code Compatibility has been replaced by the multiple start-error-number directive in sql/share/errmsg-utf8.txt support.
- Ignoring missing tables in mysqldump with --ignore-create-error option has been replaced by the more general upstream option –ignore-error option.
- innodb_log_block_size has been replaced by innodb_log_write_ahead_size variable. To avoid read on write when the storage block size is not equal to 512 bytes, the latter should be set to the same value the former was. If innodb_log_block_size was set to non-default values, new log files must be created during the upgrade.
- Extended secure-file-priv server option, which was used to disable LOAD DATA INFILE,SELECT INTO OUTFILE statements, and LOAD_FILE() function completely, has been replaced by upstream introducing NULL as a possible value to this variable. To migrate, any value-less settings must be replaced by NULL.
- innodb_sched_priority_cleaner variable has been removed, as the effect of setting it to 39 (corresponding to nice value of -20), is now enabled by default.
- innodb_adaptive_hash_index_partitions has been replaced byinnodb_adaptive_hash_index_parts.
- In the default server setup (with InnoDB being the only one XA-capable storage engine), --tc-heuristic-recover=COMMIT is silently converted to ROLLBACK. If TokuDB or another XA-supporting 3rd party storage engine is installed, --tc-heuristic-recover=ROLLBACKoption is unavailable. The default value of tc-heuristic-recover option in Percona Server 5.6 but not in MySQL 5.6 was NONE as a result of fix for upstream bug #70860. Since Oracle fixed the same bug in 5.7, the default value is OFF now.
- innodb_log_checksum_algorithm feature has been replaced by innodb_log_checksums option. In particular, to get the effect of setting the innodb_log_checksum_algorithm to crc32,innodb_log_checksums should be set to ON, which is a default setting for this variable.
- innodb_buffer_pool_populate server option and numa_interleave mysql_safe.sh option have been replaced by innodb_numa_interleave server option. Note that flush_cachesoption still remains.
- Ability to change database for mysqlbinlog implementation has been replaced from MariaDBone with MySQL rewrite-db one. The feature is mostly identical with two differences: 1) multiple rewrite rules must be given as separate options, and the ability to list them in a single rule, separated by commas, is lost. That is, any --rewrite-db='a->b,c->d' occurrences must be replaced with --rewrite-db='a->b' --rewrite-db='c->d'. 2) Whitespace around database names is not ignored.
- INFORMATION_SCHEMA.PROCESSLIST.TID column has been has been replaced byPERFORMANCE_SCHEMA.THREADS.THREAD_OS_ID column. If running under thread pool,THREAD_OS_ID column will always be NULL, whereas in the 5.6 implementation TID column showed either NULL or the assigned worker thread id at the moment.
- innodb_foreground_preflush server variable has been removed as the upstream implemented a similar feature without a controlling option.
- Log All Client Commands (syslog) feature has been replaced by Oracle mysql Loggingimplementation.
- Support for Multiple user level locks per connection has been replaced by Oracle implementation, which is based on the same contributed patch by Kostja Osipov.
- super-read-only option has been replaced by Oracle super_read_only variable implementation.
- Mutex names in SHOW ENGINE INNODB MUTEX have been replaced by Oracle mutex name implementation.
- Percona Server now uses packaging similar to the upstream MySQL version. Most important change is that for Debian/Ubuntu upgrades you now need to run mysql_upgrade manually.
其中还包括很多变量在 5.6 中存在，但是在 5.7 被删除的。