MySQL 5.6中新增特性、不推荐使用的功能以及废弃的功能有哪些

这篇文章是关于MySQL 5.6中的新特性、不推荐使用的函数和过时的函数 。我觉得边肖挺实用的 , 就分享给大家参考 , 和边肖一起来看看 。安全改进 。您可以使用mysql_config_editor以加密方式将登录身份验证信息保存在mylogin.cnf文件中 , 客户端可以从该文件中读取 , 以避免以明文形式使用登录信息 。内置的sha256_password身份验证插件支持更强的帐户密码加密 。mysql.user表添加了password_expired来标识密码是否已经过期 。可以通过alter user语句设置密码过期 。通过validate_password插件实现密码安全检查 。4.1版之前用mysql的Hash方法加密的帐户密码mysql_upgrade将被警告 。在Unix平台上 , mysql_install_db支持-random-password , 可以为初始根用户生成更强的密码 , 设置密码过期时间 , 删除匿名用户 。各种日志(慢查询、二进制日志、通用日志) , 包括不再出现在mysql客户端命令历史中的明文密码内容 。START SLVAE的语法改进可以在这个语句中指定连接MASTER的参数 , 可以避免在master.info文件中保存密码等信息 。到服务器默认值 。提供更好的性能 , 减少管理员对设置的手动修改 。InnoDB增强功能 。开始支持全文索引 。在线DDL(即一些ALTER TABLE操作不需要复制表 , 也不阻止添加、删除和修改) 。CREATE TABLE语句支持DATA DIRECTORY= directory  , 它可以存储 。ibd文件对应于数据目录之外的目录中的每表文件下的每个表 , 从而提高灵活性和性能 , 例如放置 。ibd在单独的SSD磁盘中 。支持可传输表空间 , 以及单个表空间的动态导入和导出( 。每个表的ibd文件) 。FLUSH TABLE的FOR EXPORT子句可以将缓冲区中未保存的更改刷到 。ibd文件 。然后 , 您可以复制 。ibd文件和元数据文件到其他服务器实例(如SSD和HDD) 。ALTER TABLE的TABLE和IMPORT TABLE子句可以将数据加载到不同的MySQL实例中 。InnoDB页面大小可以通过innodb_page_size设置(默认16KB可以设置为8KB和4KB) , 以适应特定的负载和硬件 , 从而减少冗余 , 提高系统性能 。对缓冲池刷新算法进行了改进 , 提高了性能和并发性 , 可以通过一系列参数进行调整 。与memcached的集成可以使用NoSQL风格的API来访问数据 , 并避免解析和构建查询计划的开销(适用于简单的查询、更新等) 。).nbsp;优化用的统计信息更加精确且可在服务重启后保持并可控制采样率 。
优化只读事务对于ad-hoc queries和report-generating 应用提升了性能和并发 。
可将InnoDB undo log 从系统表空间移至一个或多个独立表空间(如移动到SSD盘) 。
可通过 innodb_checksum_algorithm=crc32指定使用更快的checksum算法 。
redo log文件总大小可达到512G(之前为4G) , 通过innodb_log_file_size指定单个文件大小 , innodb_log_files_in_group指定文件数量、innodb_log_group_home_dir指定存放路径 。
可将MySQL中InnoDB表配置为只读模式(通过 innodb-read-only) , 这样可在只读媒介如DVD、CD上访问InnoDB表或者搭建多实例共享数据目录的数据仓库 。
可通过innodb_compression_level指定InnoDB compressed表的压缩级别并通过innodb_log_compressed_pages指定是否将buffer pool中compressed pages由于更新操作引起的re-compressed
pages存储在redo log中 。
可通过innodb_compression_failure_threshold_pct,
innodb_compression_pad_pct_max动态调整InnoDB压缩表中的填充块(用以避免DML时的重新压缩 , 但数量过多时会增加压缩失败的几率)的比例 , 以降低压缩失败率而无需通过新的参数重建表或者以不同的页大小重建整个实例 。

推荐阅读