Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

A.1 MySQL 8.3 FAQ:常见问题

A.1.1. 哪个版本的 MySQL 是生产就绪的(GA)?
A.1.2. 为什么 MySQL 版本编号跳过了 6 和 7,直接到了 8.0?
A.1.3. MySQL 8.3 是否可以执行子查询?
A.1.4. MySQL 8.3 是否可以执行多表插入、更新和删除?
A.1.5. MySQL 8.3 是否有序列?
A.1.6. MySQL 8.3 是否有 NOW() 函数带有秒分数?
A.1.7. MySQL 8.3 是否支持多核处理器?
A.1.8. 为什么我看到多个 mysqld 进程?
A.1.9. MySQL 8.3 是否可以执行 ACID 事务?
(No translation needed, as this is just HTML code without any translatable text.) Here is the translated HTML: Note: I translated "READ COMMITTED" to "已提交读取" which is the common translation in Chinese. If you want to use a different translation, please let me know.

A.1.1.

哪个版本的MySQL是生产就绪(GA)?

MySQL 8.3和8.0都是生产就绪(GA)的版本。

MySQL 8.1是第一个创新版本,于2023年7月18日发布生产版本。创新版本系列从8.1.0开始,并将继续增加小版本号,直到8.4.0开始新的LTS系列。创新版本包含新功能和bug修复。

MySQL 8.0于2018年4月19日发布生产版本,达到通用可用性(GA)状态。从MySQL 8.0.34开始,它变成了bugfix系列,并引入了创新版本系列。

MySQL 5.7于2015年10月21日发布生产版本,达到通用可用性(GA)状态。MySQL 5.7的活动开发于2023年10月25日结束,发布了MySQL 5.7.44版本。

MySQL 5.6于2013年2月5日发布生产版本,达到通用可用性(GA)状态。MySQL 5.6的活动开发已经结束。

MySQL 5.5于2010年12月3日发布生产版本,达到通用可用性(GA)状态。MySQL 5.5的活动开发已经结束。

MySQL 5.1于2008年11月14日发布生产版本,达到通用可用性(GA)状态。MySQL 5.1的活动开发已经结束。

MySQL 5.0于2005年10月19日发布生产版本,达到通用可用性(GA)状态。MySQL 5.0的活动开发已经结束。

A.1.2.

为什么MySQL版本号跳过6和7,直接到8.0?

由于我们在这个MySQL版本中引入了许多新的重要功能,我们决定开始一个新的系列。由于系列号6和7已经被MySQL使用过了,我们直接跳到8.0。

A.1.3.

MySQL 8.3是否支持子查询?

是的。请参阅第15.2.15节,“子查询”

A.1.4.

MySQL 8.3是否支持多表插入、更新和删除?

是的。要执行多表更新的语法,请参阅第15.2.17节,“UPDATE语句”;要执行多表删除的语法,请参阅第15.2.2节,“DELETE语句”

多表插入可以使用触发器,其中的FOR EACH ROW子句包含多个INSERT语句,位于BEGIN ... END块中。请参阅第27.3节,“使用触发器”

A.1.5.

MySQL 8.3是否有序列?

否。但是,MySQL有一个AUTO_INCREMENT系统,在MySQL 8.3中也可以处理多源复制设置中的插入。使用auto_increment_incrementauto_increment_offset系统变量,您可以设置每个服务器生成的自动递增值,以避免与其他服务器冲突。auto_increment_increment值应该大于服务器的数量,每个服务器应该有一个唯一的偏移量。

A.1.6.

MySQL 8.3是否有一个带有小数秒的NOW()函数?

是的,查看 第 13.2.6 节,“小数秒在时间值中”

A.1.7.

MySQL 8.3 是否支持多核处理器?

是的。MySQL 是完全多线程的,并且使用所有可用的 CPU。不所有的 CPU 都可能可用;现代操作系统应该能够使用所有底层的 CPU,但也可以限制进程到特定的 CPU 或一组 CPU。

在 Windows 上,当前有一个限制,即 mysqld 可以使用的逻辑处理器数量:单个处理器组,限制为最多 64 个逻辑处理器。

多核使用可以通过以下方式看到:

  • 通常情况下,一个核心用于服务一个会话中的命令。

  • 一些后台线程使用额外的核心;例如,用于保持后台 I/O 任务的移动。

  • 如果数据库是 I/O 绑定的(由 CPU 使用率小于容量所示),添加更多的 CPU 是徒劳的。如果数据库被分区为 I/O 绑定部分和 CPU 绑定部分,添加 CPU 可能仍然是有用的。

A.1.8.

为什么我看到多个 mysqld 进程?

mysqld 是一个单进程程序,不是一个多进程程序,不会 fork 或启动其他进程。然而,mysqld 是多线程的,一些进程报告系统实用程序将显示多线程进程的单独条目,这可能会导致出现多个 mysqld 进程的假象,而实际上只有一个。

A.1.9.

MySQL 8.3 是否可以执行 ACID 事务?

是的。所有当前的 MySQL 版本都支持事务。InnoDB 存储引擎提供了完整的 ACID 事务,具有行级锁定、多版本控制、非锁定可重复读取和所有四个 SQL 标准隔离级别。

NDB 存储引擎仅支持 已提交读取 事务隔离级别。