共用方式為


適用於 MySQL 的 Azure 資料庫 - 彈性伺服器中的「限制」

本文說明「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」中的限制。 MySQL 資料庫引擎的一般限制也適用。 如果您想要了解資源限制 (計算、記憶體、儲存體),請參閱關於計算和儲存體的文章

伺服器參數

「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」支援微調伺服器參數的值。 某些參數的最小值和最大值 (例如 max_connectionsjoin_buffer_sizequery_cache_size) 會由計算層在您計算伺服器大小前決定。 有關這些限制以及伺服器參數 (如 max_connectionsinnodb_buffer_pool_size) 的最小值和最大值的詳細資訊,請參閱有關伺服器參數的文章

產生的不可見主鍵

對於 MySQL 8.0 版和更新版本,所有「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」執行個體都預設啟用產生的不可見主鍵 (GIPK)

MySQL 8.0+ 伺服器會在資料表中新增隱藏的資料行 my_row_id 並在該資料行上新增主索引鍵,且在建立 InnoDB 資料表時不會有明確的主索引鍵。 基於這個理由,除非資料表建立陳述式也指定明確的主索引鍵,否則您無法建立有名為 my_row_id 之資料行的資料表。 深入了解

根據預設,GIPK 會出現在 SHOW CREATE TABLESHOW COLUMNSSHOW INDEX 的輸出中。 GIPK 也可在 INFORMATION_SCHEMACOLUMNSSTATISTICS 資料表中看到。

如需 GIPK 及其使用案例與資料輸入複寫的詳細資料,請參閱將資料複寫到「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」

停用 GIPK 的步驟

如果您想要停用 GIPK,您有兩個選項:

  • 使用 Azure 入口網站OFFsql_generate_invisible_primary_key 伺服器參數的值變更為

  • 連接到「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」執行個體並執行以下命令:

    mysql> SET sql_generate_invisible_primary_key=OFF;
    

lower_case_table_names

對於 MySQL 8.0+ 版 ,您只能在初始化伺服器時進行設定 lower_case_table_names深入了解。 禁止在初始化伺服器之後變更 lower_case_table_names 設定。 MySQL 8.0 版的支援值為適用於 MySQL 的 Azure 資料庫 - 彈性伺服器中的 12。 預設值是 1

您可以在建立伺服器期間,在入口網站中設定這些設定,方法是在 [其他組態] 頁面的 [伺服器參數] 下指定所需的值。 對於還原作業或建立複本伺服器,參數會自動從來源伺服器複製,且無法變更。

螢幕擷取畫面顯示如何在建立時設定小寫資料表名稱伺服器參數。

針對 MySQL 5.7 版,lower_case_table_names 的預設值是適用於 MySQL 的 Azure 資料庫中 - 彈性伺服器中的 1。 雖然可以將支援的值變更為 2,但不允許從 2 還原回 1。 如需變更預設值的協助,請建立支援票證

儲存引擎

MySQL 支援許多儲存引擎。 下列清單顯示「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」中支援和不支援的儲存引擎。

支援的引擎

備註

  • 單一 MySQL 檔案支援的大小上限為適用於 MySQL 的 Azure 資料庫 -Flexible 伺服器中的 8 TB。

不支援的引擎

權限和資料操作支援

許多伺服器參數與設定可能會在無意中造成伺服器效能降級,或是否定 MySQL 伺服器的 ACID (不可部分完成性、一致性、隔離性和持久性) 屬性。 為了在產品層級維護服務完整性和服務等級協定,「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」不會公開多個角色。

「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」不允許直接存取底層檔案系統。 不支援某些資料操作命令。

支援的權限

不支援的權限

  • 資料庫管理員 (DBA) 角色受到限制。 或者,您也可以使用在建立新伺服器期間指派的系統管理員使用者角色。 此角色可讓您執行大部分的資料定義語言 (DDL) 和資料操作語言 (DML) 陳述式。

  • 下列的靜態權限受到限制:

  • 不支援授與使用移轉工具進行備份的 BACKUP_ADMIN 權限。

  • DEFINER 需要 SUPER 權限才能建立且受到限制。 如果您使用備份來匯入資料,在您執行 CREATE DEFINER 備份時請以手動方式移除 --skip-definer 命令或使用 命令。

  • mysql 系統資料庫是唯讀的,並支援各種平台即服務 (PaaS) 功能。 您無法對 mysql 系統資料庫進行變更。

  • SELECT ... INTO OUTFILE 在該服務中不受支援。

功能限制

區域備援高可用性

您只能在伺服器建立期間設定區域備援高可用性組態。 此組態在高載計算層中不受支援。

網路

建立伺服器之後,您就無法變更連線方法。 如果您建立具有私人存取 (虛擬網路整合) 的伺服器,則在建立後無法將其變更為公用存取 (允許的 IP 位址),反之亦然。

停止/啟動作業

讀取複本組態 (來源和複本) 不支援停止和啟動伺服器的作業。

調整作業

不支援減少已佈建的伺服器儲存體。

伺服器版本升級

目前不支援在主要資料庫引擎版本間進行自動轉換。 如果您想要升級主要版本,請在使用新引擎版本建立的伺服器上使用傾印和還原

還原伺服器

透過時間點還原,新伺服器具有與其所基於的來源伺服器相同的計算和儲存體組態。 建立伺服器後,您可以縮減新還原的伺服器的運算能力。

功能比較

可在「適用於 MySQL 的 Azure 資料庫 - 單一伺服器」取得的功能,並非全都可在「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」中取得。

如需「適用於 MySQL 的 Azure 資料庫 - 單一伺服器」與「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」之間的功能比較的完整清單,請參閱有關在 Azure 中選擇正確的 MySQL 伺服器選項的文章