相關文件 下載本手冊
PDF (美式信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  MySQL 9.0 常見問題  /  MySQL 9.0 常見問題:一般

A.1 MySQL 9.0 常見問題:一般

A.1.1. 哪個版本的 MySQL 可用於生產環境(GA)?
A.1.2. 為什麼 MySQL 版本編號跳過 6 和 7 版,直接到 8.0?
A.1.3. MySQL 可以執行子查詢嗎?
A.1.4. MySQL 可以執行多表格的插入、更新和刪除嗎?
A.1.5. MySQL 有序列(Sequences)嗎?
A.1.6. MySQL 的 NOW() 函數是否有秒的小數部分?
A.1.7. MySQL 是否支援多核心處理器?
A.1.8. 為什麼我會看到 mysqld 有多個處理程序?
A.1.9. MySQL 可以執行 ACID 事務嗎?

A.1.1.

哪個版本的 MySQL 可用於生產環境(GA)?

MySQL 9.0、8.4 和 8.0 都積極支援生產環境使用。

MySQL 9 創新系列始於 2024 年 7 月 1 日發行的 MySQL 9.0.0。

MySQL 8.4 LTS 系列始於 2024 年 4 月 30 日發行的 MySQL 8.4.0。

MySQL 8 創新系列始於 2023 年 7 月 18 日發行的 MySQL 8.1.0。活躍開發於 2024-01-16 隨著 MySQL 8.3.0 版本的發行而結束。

MySQL 8.0 透過 2018 年 4 月 19 日發布供生產環境使用的 MySQL 8.0.11 達到正式可用(GA)狀態。隨著 創新和 LTS 發行模式 的引入,它從 MySQL 8.0.34 開始成為一個錯誤修正系列。

MySQL 5.7 透過 2015 年 10 月 21 日發布供生產環境使用的 MySQL 5.7.9 達到正式可用(GA)狀態。MySQL 5.7 的活躍開發於 2023 年 10 月 25 日隨著 MySQL 5.7.44 版本的發行而結束。

MySQL 5.6 透過 2013 年 2 月 5 日發布供生產環境使用的 MySQL 5.6.10 達到正式可用(GA)狀態。MySQL 5.6 的活躍開發已結束。

MySQL 5.5 透過 2010 年 12 月 3 日發布供生產環境使用的 MySQL 5.5.8 達到正式可用(GA)狀態。MySQL 5.5 的活躍開發已結束。

MySQL 5.1 透過 2008 年 11 月 14 日發布供生產環境使用的 MySQL 5.1.30 達到正式可用(GA)狀態。MySQL 5.1 的活躍開發已結束。

MySQL 5.0 透過 2005 年 10 月 19 日發布供生產環境使用的 MySQL 5.0.15 達到正式可用(GA)狀態。MySQL 5.0 的活躍開發已結束。

A.1.2.

為什麼 MySQL 版本編號跳過 6 和 7 版,直接到 8.0?

由於我們在這個 MySQL 版本中引入了許多新的重要功能,我們決定開始一個全新的系列。由於系列編號 6 和 7 實際上以前被 MySQL 使用過,所以我們直接跳到 8.0。

A.1.3.

MySQL 可以執行子查詢嗎?

可以。請參閱 第 15.2.15 節「子查詢」

A.1.4.

MySQL 可以執行多表格的插入、更新和刪除嗎?

可以。如需執行多表格更新所需的語法,請參閱 第 15.2.17 節「UPDATE 陳述式」;如需執行多表格刪除所需的語法,請參閱 第 15.2.2 節「DELETE 陳述式」

可以使用觸發程序來完成多表格插入,其 FOR EACH ROW 子句在 BEGIN ... END 區塊內包含多個 INSERT 陳述式。請參閱 第 27.4 節「使用觸發程序」

A.1.5.

MySQL 有序列(Sequences)嗎?

沒有。但是,MySQL 有一個 AUTO_INCREMENT 系統,它也可以處理多來源複寫設定中的插入。使用 auto_increment_incrementauto_increment_offset 系統變數,您可以設定每個伺服器產生不與其他伺服器衝突的自動遞增值。auto_increment_increment 值應大於伺服器的數量,並且每個伺服器應具有唯一的偏移量。

A.1.6.

MySQL 的 NOW() 函數是否有秒的小數部分?

有,請參閱 第 13.2.6 節「時間值中的秒的小數部分」

A.1.7.

MySQL 是否支援多核心處理器?

是。MySQL 完全是多執行緒的,並且會使用所有提供給它的 CPU。並非所有 CPU 都可用;現代作業系統應能利用所有底層 CPU,但也可以將程序限制為特定 CPU 或 CPU 集。

在 Windows 上,目前 mysqld 可以使用的(邏輯)處理器數量有限:單一處理器群組,最多限制為 64 個邏輯處理器。

在以下幾種情況下可以看到使用多核心

  • 通常使用單一核心來處理一個會話發出的命令。

  • 一些背景執行緒會有限度地使用額外的核心;例如,保持背景 I/O 任務的運行。

  • 如果資料庫受 I/O 限制(表示 CPU 消耗低於容量),則增加更多 CPU 是徒勞的。如果資料庫分為受 I/O 限制的部分和受 CPU 限制的部分,則增加 CPU 可能仍然有用。

A.1.8.

為什麼我會看到 mysqld 有多個處理程序?

mysqld 是一個單一處理程序程式,而不是多處理程序程式,並且不會分叉或啟動其他處理程序。但是,mysqld 是多執行緒的,並且一些處理程序回報系統公用程式會為多執行緒處理程序的每個執行緒顯示單獨的條目,這可能會導致出現多個 mysqld 處理程序的外觀,而實際上只有一個。

A.1.9.

MySQL 可以執行 ACID 事務嗎?

可以。所有目前的 MySQL 版本都支援事務。InnoDB 儲存引擎提供具有行級鎖定、多版本控制、非鎖定可重複讀取和所有四個 SQL 標準隔離級別的完整 ACID 事務。

NDB 儲存引擎僅支援 READ COMMITTED 事務隔離級別。