mysql5.6和5.7的区别是什么?

mysql5.6和5.7的区别是什么?,第1张

mysql5.7是5.6的新版本,在没有减少功能的情况下新增了功能与进行了优化,例如新增了新的优化器、原生JSON支持、多源复制,还优化了整体的性能、GIS空间扩展、InnoDB。

1、原生json支持

MySQL 5.7可以定义原生json类型数据,对json数据进行有效性检查,查询不需要遍历所有字符串才能找到数据,通过虚拟列的功能可以对JSON中的部分数据进行索引。

2、多源复制

MySQL 5.7开始支持多源复制,也就是多主一从的复制架构。各个库汇总在一起,就算是其他库都挂了(整个机房都无法连接了),还有最后一个救命稻草。不需要每个库都做一个实例,也减少了DBA的维护成本。

3、InnoDB优化

MySQL 5.7针对innodb_buffer_pool_size、innodb_log_file_size、innodb_flush_method提供了更加合适的默认值。

参考资料来源:MYSQL-MySQL 5.7的新增功能

对于MySQL的历史,相信很多人早已耳熟能详,这里就不要赘述。下面仅从产品特性的角度梳理其发展过程中的里程碑事件。

1995年,MySQL 1.0发布,仅供内部使用。

1996年,MySQL 3.11.1发布,直接跳过了MySQL 2.x版本。

1999年,MySQL AB公司成立。同年,发布MySQL 3.23,该版本集成了Berkeley DB存储引擎。该引擎由Sleepycat公司开发,支持事务。在集成该引擎的过程中,对源码进行了改造,为后续可插拔式存储引擎架构奠定了基础。

2000年,ISAM升级为MyISAM存储引擎。同年,MySQL基于GPL协议开放源码。

2002年,MySQL 4.0发布,集成了后来大名鼎鼎的InnoDB存储引擎。该引擎由Innobase公司开发,支持事务,支持行级锁,适用于OLTP等高并发场景。

2005年,MySQL 5.0发布,开始支持游标,存储过程,触发器,视图,XA事务等特性。同年,Oracle收购Innobase公司。

2008年,Sun以10亿美金收购MySQL AB。同年,发布MySQL 5.1,其开始支持定时器(Event scheduler),分区,基于行的复制等特性。

2009年,Oracle以74亿美金收购Sun公司。

2010年, MySQL 5.5 发布,其包括如下重要特性及更新。

2013年, MySQL 5.6 发布,其包括如下重要特性及更新。

可以说,MySQL 5.6是MySQL历史上一个里程碑式的版本,这也是目前生产上应用得最广泛的版本。

2015年, MySQL 5.7 发布,其包括如下重要特性及更新。

2018年, MySQL 8.0 发布,其包括如下重要特性及更新。

需要注意的是,上面提到的发布,一般指的是GA版本。

来,看看MySQL 5.6, 5.7, 8.0的新特性

https://www.cnblogs.com/ivictor/p/9807284.html

一,安全提高

1.提供保存加密认证信息的方法,使用.mylogin.cnf文件。使用mysql_config_editor可以创建此文件。这个文件可以进行连接数据库的访问授权。mysql_config_editor会进行加密而不是明文存储。客户端只会在内存中进行解密。这样密码以非明文方式存储,不会在命令行或者环境变量中暴露。更多信息,访问 Section 4.6.6, “mysql_config_editor — MySQL Configuration Utility”.

2.使用sha256_password,支持更为强大的用户密码加密方式。这个插件是内置的。更多信息访问 Section 6.3.6.2, “The SHA-256 Authentication Plugin

3.mysql.user表现在增加password_expired列,默认值是’N',使用新的ALTER USER命令可以设置为’Y'。当密码过期后,使用此账号的后续连接都会报错,只到用户使用SET PASSWORD命令创建一个新密码。更多信息访问Section 13.7.1.1, “ALTER USERSyntax”

4.现在提供密码安全策略

 使用明文指定密码时,密码会被当前的密码策略检查,如果太弱会被拒绝(返回ER_NOT_VALID_PASSWORD 错误)。会影响 CREATE USER, GRANT, 和 SET PASSWORD命令。密码作为参数被password(),old_password()引用时也会被检查。

 密码的强状程度可以被新函数VALIDATE_PASSWORD_STRENGTH() 检查。此函数把密码做为参数,返回0(弱)-100(强)。

 以上都是validate_password插件提供,更多信息见 Section 6.1.2.6, “The Password Validation Plugin”.

 mysql_upgrade如果发现使用4.1以前的哈希密码会警告。这样的账号必须升级到更安全的哈希密码。见Section 6.1.2.4, “Password Hashing in MySQL”


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5905585.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存