Online DDL / MySQL
#mysql #index #ddl #online_ddl
Last updated
#mysql #index #ddl #online_ddl
Last updated
ALTER TABLE によるテーブルロックの影響
MySQL 5.7 の InnoDB テーブルでは、ほとんどの ALTER TABLE 操作が テーブル全体のロックを取得 します。 特に インデックスの追加 (ADD INDEX) や削除 (DROP INDEX) では、テーブルの 書き込み (INSERT, UPDATE, DELETE) がブロックされます。
ALTER TABLE 実行時のロックモード
MySQL 5.7 の InnoDB テーブルでは、ほとんどの ALTER TABLE 操作が テーブル全体のロックを取得 します。 特に インデックスの追加 (ADD INDEX) や削除 (DROP INDEX) では、テーブルの 書き込み (INSERT, UPDATE, DELETE) がブロックされます。
ALGORITHM=INPLACE, LOCK=NONE;
でのテーブルロックの有無は時間が短すぎて判断できず。
テーブルロックかかる前提で進めるが安牌かもしれない。
FULLTEXT INDEXはOnlineを適用すると、初回はテーブルロックが発生する。
FULLTEXTユーザー定義の列がない場合、 最初のインデックスを追加するとテーブルが再構築されますFTS_DOC_ID。 FULLTEXTテーブルを再構築せずに追加のインデックスを追加できます。