数据服务器
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
近日MySQL 8.0 正式版 8.0.21发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能!
注意:从 MySQL 5.7 升级到 MySQL 8.0 仅支持通过使用 in-place 方式进行升级,并且不支持从 MySQL 8.0 降级到 MySQL 5.7(或从某个 MySQL 8.0 版本降级到任意一个更早的 MySQL 8.0 版本)。唯一受支持的替代方案是在升级之前对数据进行备份。
ps:本软件是免安装版,进入MySQL Sever,其目录下的文件如下:
bin目录下保存了MySQL常用的命令工具以及管理工具、data目录是MySQL默认用来保存数据文件以及日志文件的地方(我的因刚安装还没有data文件夹)、docs目录下是MySQL的帮助文档、include目录和lib目录是MySQL所依赖的头文件以及库文件、share目录下保存目录文件以及日志文件。
进入bin目录,按住shift键然后点击鼠标右键可以选择在该目录下打开命令窗口,或者在地址栏中输入cmd进入命令窗口。输入mysql -u root -p后回车,然后会提示输入密码,输入密码后就会进入MySQL的操作管理界面。
输入show databases;(注意末尾有分号)可以查看当前MySQL中的数据库列表,输入use test;可以进入test数据库(前提是要有此数据库),输入show tables可以查看test数据库中的所有表,输入quit可以退出MySQL的操作管理界面。
软件特色
1.性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 在以下方面带来了更好的性能:读/写工作负载、IO 密集型工作负载、以及高竞争("hotspot"热点竞争问题)工作负载。
2. NoSQL:MySQL 从 5.7 版本开始提供 NoSQL 存储功能,目前在 8.0 版本中这部分功能也得到了更大的改进。该项功能消除了对独立的 NoSQL 文档数据库的需求,而 MySQL 文档存储也为 schema-less 模式的 JSON 文档提供了多文档事务支持和完整的 ACID 合规性。
3.窗口函数(Window Functions):从 MySQL 8.0 开始,新增了一个叫窗口函数的概念,它可以用来实现若干新的查询方式。窗口函数与 SUM()、COUNT() 这种集合函数类似,但它不会将多行查询结果合并为一行,而是将结果放回多行当中。即窗口函数不需要 GROUP BY。
4.隐藏索引:在 MySQL 8.0 中,索引可以被“隐藏”和“显示”。当对索引进行隐藏时,它不会被查询优化器所使用。我们可以使用这个特性用于性能调试,例如我们先隐藏一个索引,然后观察其对数据库的影响。如果数据库性能有所下降,说明这个索引是有用的,然后将其“恢复显示”即可;如果数据库性能看不出变化,说明这个索引是多余的,可以考虑删掉。
5.降序索引:MySQL 8.0 为索引提供按降序方式进行排序的支持,在这种索引中的值也会按降序的方式进行排序。
6. 通用表表达式(Common Table Expressions CTE):在复杂的查询中使用嵌入式表时,使用 CTE 使得查询语句更清晰。
7. UTF-8 编码:从 MySQL 8 开始,使用 utf8mb4 作为 MySQL 的默认字符集。
8. JSON:MySQL 8 大幅改进了对 JSON 的支持,添加了基于路径查询参数从 JSON 字段中抽取数据的 JSON_EXTRACT() 函数,以及用于将数据分别组合到 JSON 数组和对象中的 JSON_ARRAYAGG() 和 JSON_OBJECTAGG() 聚合函数。
9. 可靠性:InnoDB 现在支持表 DDL 的原子性,也就是 InnoDB 表上的 DDL 也可以实现事务完整性,要么失败回滚,要么成功提交,不至于出现 DDL 时部分成功的问题,此外还支持 crash-safe 特性,元数据存储在单个事务数据字典中。
10.高可用性(High Availability):InnoDB 集群为您的数据库提供集成的原生 HA 解决方案。
11. 安全性:对 OpenSSL 的改进、新的默认身份验证、SQL 角色、密码强度、授权。
仅使用就地升级方法支持从MySQL 5.7升级到MySQL 8.0。
不支持从MySQL 8.0降级到MySQL 5.7(或从MySQL 8.0发布到以前的MySQL 8.0发行版)。唯一受支持的替代方法是在升级之前恢复备份。
详细更新说明:https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-11.html
官方发布说明:https://blogs.oracle.com/mysql/announcing-general-availability-of-mysql-80
MySQL 8 正式版的新增功能:https://mysqlserverteam.com/whats-new-in-mysql-8-0-generally-available/
MD5: 0b4efe256a28cd391bf057d4c61ade09
MySQL的特性
使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
支持AIX、BSDi、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、NetBSD、OpenBSD、OS/2 Wrap、Solaris、SunOS、Windows等多种操作系统。
为多种编程语言提供了API。这些编程语言包括C、C++、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
支持多线程,充分利用CPU资源,支持多用户。
优化的SQL查询算法,有效地提高查询速度。
既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
提供用于管理、检查、优化数据库操作的管理工具。
可以处理拥有上千万条记录的大型数据库。
MySQL 8.0.21复制增强
2020年7月14日:组通信系统,组复制,高可用性,MySQL,MySQL复制,复制,XComLuis Soares
有一个新的MySQL 8.0版本,它具有一些有趣的复制功能。更改日志可以从通常的位置MySQL 8.0.21获得,但让我给您一个简短的摘要。
组复制的二进制日志校验和支持(WL#9038)。 Nuno Carvalho所做的这项工作实现了对组复制中二进制日志校验和的支持。因此,用户现在可以在打开二进制日志校验和的情况下使用组复制。
指定组复制中的哪些端点恢复通信流(WL#13767)。由Anibal Pinto实现的此功能允许用户指定施主服务器应将哪些端点作为连接者通告连接到的端点,以提取二进制日志以进行恢复。
将相关组复制信息日志消息重新分类为系统消息(WL#13769)。 Nuno Carvalho所做的这项工作使某些与组复制相关的消息始终输出到错误日志。具体来说,始终会发出与成员资格生命周期相关的日志消息。它们现在被分类为系统消息。
START GROUP_REPLICATION现在可以将恢复凭据作为参数(WL#13768)。 Jaideep Karande所做的这项工作允许用户通过START GROUP_REPLICATION语句指定恢复凭证。
除了新功能外,我们还对默认值进行了一些更改:
增加了默认的group_replication_member_expel_timeout(WL#13773)。 Pedro Ribeiro完成的这项工作将在组复制中将此变量的默认值设置为5,而不是0(秒)。这意味着默认情况下,系统将容忍持续10秒钟的瞬态网络故障(5秒以确认可疑,再加上5秒钟等待驱逐)。因此,如果这段时间过去了,并且服务器“ S”仍然无法访问,则服务器“ S”将被驱逐。
增加了默认的group_replication_autorejoin_tries(WL#13706)。 Parveez Baig的这项工作更改了“组复制”中自动重新加入框架的默认设置。默认情况下,它以前是不活动的(它设置为0)。使用新的默认值(3),只要解析了网络分区,等待解析并最终在该过程中被驱逐的成员将自动尝试重新加入群集,而不管他们等待分区多长时间。解决自己。
除了更改几个“组复制”变量的默认设置外,我们还放宽了现有变量的限制:
减小了group_replication_message_cache_size(WL#13979)的下界。 Luis Soares的这项工作可以将XCom消息缓存的最大限制设置为低至128MB的值(以前的下限为1GB)。
最后,我们对Paxos内核进行了一些内部增强:
XCom的重构和代码增强。 Ole-Hjalmar Kristensen的这项工作重构了一些XCom内部结构,并修复了一些小错误。
故障检测的增强。 Tiago Jorge和Tiago Vale的这项工作介绍了几个重要的修复方法,这些方法可在处理可能导致非对称故障检测的瞬态故障或网络断开时降低熵。
将XCom编译为C ++(WL#13842)。 Tiago vale的这项工作重构了XCom的一些内部结构,并使使用C ++构建XCom更加容易。
这次是一些稍长的增强功能和其他值得注意的列表。
8.0.18版本亮点
1.Hash Join
Hash Join 不需要任何索引来执行,并且在大多数情况下比当前的块嵌套循环算法更有效。
2.EXPLAIN ANALYZE
EXPLAIN ANALYZE 将运行查询,然后生成 EXPLAIN 输出,以及有关优化程序估计如何与实际执行相匹配的其他信息。
3.创建用户时可以随机生成密码
为 CREATE USER, ALTER USER和 SET PASSWORD语句添加了语法,以生成强随机密码,并将其作为结果返回给客户端。
添加的语法是:
CREATE USER user IDENTIFIED BY RANDOM PASSWORD,
ALTER USER user IDENTIFIED BY RANDOM PASSWORD,
SET PASSWORD [FOR user] TO RANDOM
4.群组复制
group_replication_exit_state_action 增加了 OFFLINE_MODE 模式,用于指定当服务器无意离开群组时群组复制的行为。
OFFLINE_MODE 行为将关闭所有连接,并禁止非 CONNECTION_ADMIN 或 SUPER 权限的用户建立新连接,否则它的行为类似于现有 READ_ONLY 模式。
5.innodb 增加一个空闲状态下控制写入 IOPs 的选项
该选项在 InnoDB 空闲时控制写 IOP。目的是减少写 IO,以延长闪存的寿命。
此外,还有很多内部细节的改进,详细请访问:
https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-18.html
下载地址
同类软件
-
Microsoft SQL Server 2019 Developer 简体中文正式版(附安装教程) 64位
大小:1.52GB -
MySQL 8.0 for Windows v8.0.21 官方免费正式版 64位
大小:110MB -
Microsoft SQL Server 2019 标准版 官方中文正式版(附安装教程) 64位
大小:1.52GB -
MongoDB For Windows数据可视化工具 v3.6 官方正式版(附安装配置方法)
大小:198MB -
Microsoft SQL Server 2019 Enterprise企业版 64位 中/英文正式免费版
大小:1.68GB -
MySQL 8 for windows 32位 v8.0.18 官方免费正式版
大小:415MB -
Microsoft SQL Server 2017 Evaluation Edition 安装包 多语中文免费版
大小:534KB -
Microsoft SQL Server 2017 Developer Edition 多语中文免费正式版 64位
大小:1.65GB -
MySQL v6.0.11 64位 for Windows 官方正式版(附安装教程)
大小:43.4MB -
Microsoft SQL Server 2017 Express Edition 官方简体中文免费版
大小:553KB