久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

MySQL5.6 Online DDL在線狀態是怎么樣的

137次閱讀
沒有評論

共計 2126 個字符,預計需要花費 6 分鐘才能閱讀完成。

這篇文章將為大家詳細講解有關 MySQL5.6 Online DDL 在線狀態是怎么樣的,文章內容質量較高,因此丸趣 TV 小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

Yes* 和 No* 表明結果依賴于其他一些附加條件:

執行操作
允許 ALGORITHM=INPLACE 

是否拷貝表  

允許并發 DML    

允許并發查詢

備注和注意事項

create index

add index

Yes*

No*

Yes

Yes

對于全文索引,有一些限制,具體看下一行。目前,該操作不是在原地執行,需要拷貝表.

add fulltext index

Yes

No*

No

Yes

創建第一個全文索引涉及到拷貝表,除非有使用 FTS_DOC_ID 列。后面的全文索引則在原地執行。

drop index 

Yes

No

Yes

Yes

 

optimize table

Yes

Yes

Yes

Yes

在 MySQL5.6.17 里使用  ALGORITHM=INPLACE.

如果設置 old_alter_table= 1 或使用 mysqld –skip-new 選項,則使用  ALGORITHM=COPY.

如果表使用了全文索引,則  ALGORITHM=INPLACE 不適用

set default value for  column

Yes

No

Yes

Yes

修改.frm 文件,不涉及數據文件

change auto-increment value

Yes

No

Yes

Yes

修改存儲到內存的一個值,不修改數據文件

add  foreign key constraint

Yes*

No*

Yes

Yes

禁用 foreign_key_checks, 則可以避免拷貝表

drop  forgien key constraing

Yes

No

Yes

Yes

foreign_key_checks 可以禁用或開啟

rename  column

Yes*

No*

Yes*

Yes

允許并發 DML,保持相同的數據類型,僅改變字段名

add  column

Yes

Yes

Yes*

Yes

增加 auto-increment 字段時不允許 DML 操作. 

雖然 ALGORITHM=INPLACE 可以允許, 

但是數據要重組,代價比較昂貴.

drop column

Yes

Yes

Yes

Yes

雖然 ALGORITHM=INPLACE 可以允許,

但是數據要重組,代價比較昂貴.

reorder columns

Yes

Yes

Yes

Yes

雖然 ALGORITHM=INPLACE 可以允許,

但是數據要重組,代價比較昂貴.

change ROW_FORMAT

property

Yes

Yes

Yes

Yes

雖然 ALGORITHM=INPLACE 可以允許,

但是數據要重組,代價比較昂貴.

change KEY_BLOCK_SIZE 

property

Yes

Yes

Yes

Yes

雖然 ALGORITHM=INPLACE 可以允許,

但是數據要重組,代價比較昂貴.

make column null 

Yes

Yes

Yes

Yes

雖然 ALGORITHM=INPLACE 可以允許,

但是數據要重組,代價比較昂貴.

make cplumn not null 

Yes*

Yes

Yes

Yes

當 SQL_MODE 為 strict_all_tables, 如果執行的列包含 null,則會執行失敗。

 

雖然 ALGORITHM=INPLACE 可以允許,

但是數據要重組,代價比較昂貴.

change data type 

of column

No

Yes

Yes

Yes

 

add primary key

Yes*

Yes

Yes

Yes

雖然 ALGORITHM=INPLACE 可以允許,

但是數據要重組,代價比較昂貴.

如果列必須轉換為非空的條件下,

ALGORITHM=INPLACE 是不允許的。

drop primary key 

and add other

Yes

Yes

Yes

Yes

當在同一個 alter table 新增主鍵時 ALGORITHM=INPLACE 是允許的. 數據要重組,因此代價比較昂貴.

 

drop primary key

No

Yes

No

Yes

刪除主鍵但是又不新增主鍵是被限制的

convert character set

No

Yes

No

Yes

如果新的字符編碼不同將會重建表

specify character set

No

Yes

No

Yes

如果新的字符編碼不同將會重建表

rebulid with 

force option

Yes

Yes

Yes

Yes

在 MySQL5.6.17 里使用 ALGORITHM=INPLACE.

如果設置 old_alter_table= 1 或使用 mysqld –skip-new 選項,則使用 ALGORITHM=COPY.

如果表使用了全文索引,則 ALGORITHM=INPLACE 不適用

rebulid with 

“null”

 

alter table …

engine=innodb

Yes

Yes

Yes

Yes

在 MySQL5.6.17 里使用  ALGORITHM=INPLACE.

如果設置 old_alter_table= 1 或使用 mysqld –skip-new 選項,則使用  ALGORITHM=COPY.

如果表使用了全文索引,則  ALGORITHM=INPLACE 不適用

關于 MySQL5.6 Online DDL 在線狀態是怎么樣的就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-19發表,共計2126字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 嘉峪关市| 温州市| 西乌珠穆沁旗| 吐鲁番市| 嫩江县| 丰县| 吉林市| 蓝田县| 龙门县| 石首市| 历史| 东莞市| 营口市| 莱阳市| 贵定县| 崇仁县| 阜平县| 苍溪县| 秦安县| 上虞市| 武平县| 惠东县| 成都市| 石渠县| 筠连县| 荔浦县| 临澧县| 大英县| 罗山县| 济阳县| 嘉荫县| 博客| 子洲县| 海丰县| 龙岩市| 青龙| 始兴县| 新沂市| 黑水县| 敖汉旗| 靖西县|