婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫(kù) > MySQL8.0 如何快速加列

MySQL8.0 如何快速加列

熱門標(biāo)簽:地圖標(biāo)注客戶付款 許昌外呼增值業(yè)務(wù)線路 廣東400企業(yè)電話申請(qǐng)流程 咸陽防封電銷卡 申請(qǐng)400電話電話價(jià)格 宜賓全自動(dòng)外呼系統(tǒng)廠家 臨沂做地圖標(biāo)注 石家莊400電話辦理公司 新鄉(xiāng)智能外呼系統(tǒng)好處

前言:

很早就聽說 MySQL8.0 支持快速加列,可以實(shí)現(xiàn)大表秒級(jí)加字段。筆者自己本地也有8.0環(huán)境,但一直未進(jìn)行測(cè)試。本篇文章我們就一起來看下 MySQL8.0 快速加列到底要如何操作。

1.了解背景信息

表結(jié)構(gòu)的變更是業(yè)務(wù)運(yùn)行過程中比較常見的需求之一,在 MySQL 的環(huán)境中,可以使用 Alter 語句來完成這些操作,這些 Alter 語句對(duì)應(yīng)的操作通常也稱之為 DDL 操作。通常情況下大表的 DDL 操作都會(huì)對(duì)業(yè)務(wù)有很明顯的影響,需要在業(yè)務(wù)空閑,或者是維護(hù)的時(shí)候做。MySQL 5.7 支持 Online DDL,大部分 DDL 不影響對(duì)表的讀取和寫入,但是依然會(huì)消耗非常多的時(shí)間,且占用額外的磁盤空間,并會(huì)造成主從延遲。所以大表 DDL 仍是一件令 DBA 頭痛的事。

聽聞 MySQL 8.0 解決了這件令 DBA 頭痛的事,那讓我們來詳細(xì)了解下吧。想了解新功能,最簡(jiǎn)單的方法就是查閱官方文檔。查閱官方文檔得知,快速加列即 Instant Add Column ,該功能自 MySQL 8.0.12 版本引入,是由騰訊游戲DBA團(tuán)隊(duì)貢獻(xiàn)。注意一下,此功能只適用于 InnoDB 表。

2.快速加列測(cè)試

快速加列采用的是 instant 算法,使得添加列時(shí)不再需要 rebuild 整個(gè)表,只需要在表的 metadata 中記錄新增列的基本信息即可。在 alter 語句后增加 ALGORITHM=INSTANT 即代表使用 instant 算法, 如果未明確指定,則支持 instant 算法的操作會(huì)默認(rèn)使用。如果 ALGORITHM=INSTANT 指定但不支持,則操作立即失敗并顯示錯(cuò)誤。

關(guān)于列的 DDL 操作,是否支持 instant 等算法,官方文檔給出了一個(gè)表格,現(xiàn)整理如下,星號(hào)表示不是全部支持,有依賴項(xiàng)。

操作 Instant In Place Rebuilds Table 允許并發(fā)DML 僅修改元數(shù)據(jù)
添加列 Yes* Yes No* Yes* No
刪除列 No Yes Yes Yes No
重命名列 No Yes No Yes* Yes
更改列順序 No Yes Yes Yes No
設(shè)置列默認(rèn)值 Yes Yes No Yes Yes
更改列數(shù)據(jù)類型 No No Yes No No
擴(kuò)展VARCHAR列大小 No Yes No Yes Yes
刪除列默認(rèn)值 Yes Yes No Yes Yes
更改自動(dòng)增量值 No Yes No Yes No*
設(shè)置列為null No Yes Yes* Yes No
設(shè)置列not null No Yes* Yes* Yes No
修改ENUM/SET列的定義 Yes Yes No Yes Yes

instant 算法使用最廣泛的應(yīng)該是添加列了,可以看到使用該算法還是有些限制的,一些限制如下:

  • 如果 alter 語句包含了 add column 和其他的操作,其中有操作不支持 instant 算法的,那么 alter 語句會(huì)報(bào)錯(cuò),所有的操作都不會(huì)執(zhí)行。
  • 只能順序加列, 僅支持在最后添加列,而不支持在現(xiàn)有列的中間添加列。
  • 不支持壓縮表,即該表行格式不能是 COMPRESSED。
  • 不支持包含全文索引的表。
  • 不支持臨時(shí)表。
  • 不支持那些在數(shù)據(jù)字典表空間中創(chuàng)建的表。

說的再多不如實(shí)際來測(cè)下,下面我們以 8.0.19 版本為例來實(shí)際驗(yàn)證下:

# 利用sysbench生成一張1000W的大表
mysql> select version();
+-----------+
| version() |
+-----------+
| 8.0.19  |
+-----------+
1 row in set (0.00 sec)

mysql> select count(*) from sbtest1;
+----------+
| count(*) |
+----------+
| 10000000 |
+----------+

# 增加無默認(rèn)值的列
mysql> alter table sbtest1 add column col1 varchar(20), algorithm=instant;
Query OK, 0 rows affected (0.63 sec)
Records: 0 Duplicates: 0 Warnings: 0

# 增加有默認(rèn)值的列
mysql> alter table sbtest1 add column create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間', algorithm=instant;
Query OK, 0 rows affected (0.58 sec)
Records: 0 Duplicates: 0 Warnings: 0

# 不顯式指定instant算法
mysql> alter table sbtest1 add column col2 varchar(20);
Query OK, 0 rows affected (0.55 sec)
Records: 0 Duplicates: 0 Warnings: 0

# 設(shè)置列的默認(rèn)值
mysql> alter table sbtest1 alter column col1 set default 'sql',algorithm=instant;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0

# 指定In Place算法添加列,(5.7版本添加列使用該算法)
mysql> alter table sbtest1 add column col_inplace varchar(20),algorithm=inplace;
Query OK, 0 rows affected (1 min 23.30 sec)
Records: 0 Duplicates: 0 Warnings: 0

通過以上測(cè)試,我們可以發(fā)現(xiàn),使用 instant 算法添加列基本都在 1s 內(nèi)完成,對(duì)于大表來說這個(gè)速度是非??斓?,業(yè)務(wù)基本無感知。當(dāng)使用 5.7 版本的 inplace 算法時(shí),則添加列的時(shí)間上升至數(shù)分鐘。對(duì)比看來 8.0 版本的快速加列功能確實(shí)非常實(shí)用!

總結(jié):

雖然快速加列存在一些限制, instant 算法也只適用于部分 DDL 操作,但 8.0 的這項(xiàng)新功能已經(jīng)足以令人興奮,很大程度上解決了大表加字段的大難題。通過這篇文章,希望各位能了解到這項(xiàng)新功能,是不是想升級(jí)到 8.0 了呢,可以著手準(zhǔn)確起來了。

以上就是MySQL8.0 如何快速加列的詳細(xì)內(nèi)容,更多關(guān)于MySQL8.0 快速加列的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • Mysql Online DDL的使用詳解
  • MySQL DDL 引發(fā)的同步延遲該如何解決
  • 詳解MySQL8.0原子DDL語法
  • MySQL在線DDL工具 gh-ost的原理解析
  • MySQL ddl語句的使用
  • Mysql DDL常見操作匯總
  • 解析MySQL8.0新特性——事務(wù)性數(shù)據(jù)字典與原子DDL
  • MySQL數(shù)據(jù)定義語言DDL的基礎(chǔ)語句
  • MySQL8.0 DDL原子性特性及實(shí)現(xiàn)原理
  • MySQL在線DDL gh-ost使用總結(jié)
  • 解決MySQL 5.7中定位DDL被阻塞的問題
  • MySQL8.0新特性之支持原子DDL語句
  • MySQL曝中間人攻擊Riddle漏洞可致用戶名密碼泄露的處理方法
  • MySQL 8.0 Online DDL快速加列的相關(guān)總結(jié)

標(biāo)簽:日照 臺(tái)灣 合肥 貴州 鎮(zhèn)江 鷹潭 北京 阜新

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MySQL8.0 如何快速加列》,本文關(guān)鍵詞  MySQL8.0,如何,快速,加列,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MySQL8.0 如何快速加列》相關(guān)的同類信息!
  • 本頁收集關(guān)于MySQL8.0 如何快速加列的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    精品国产成人在线影院| 亚洲色图第一区| 亚洲人一二三区| 日本午夜一本久久久综合| 高清成人在线观看| 精品免费一区二区三区| 亚洲一二三四久久| 丁香婷婷综合激情五月色| 日韩欧美国产综合在线一区二区三区| 国产精品免费久久| 国产精品综合在线视频| 日韩欧美第一区| 亚洲成a人v欧美综合天堂| 成人av免费网站| 欧美激情在线一区二区三区| 日韩电影免费一区| 欧美精品三级日韩久久| 亚洲色图另类专区| 成人av电影在线播放| 久久久久久电影| 狠狠色狠狠色综合日日91app| 欧美视频精品在线| 一区二区三区免费| 91免费精品国自产拍在线不卡| 国产欧美日本一区二区三区| 经典三级在线一区| 精品欧美一区二区在线观看| 奇米影视一区二区三区| 91麻豆精品91久久久久同性| 五月综合激情网| 欧美精品日韩精品| 日韩激情一二三区| 日韩一区二区三区在线观看| 亚洲bt欧美bt精品| 日韩一区二区中文字幕| 麻豆精品一区二区av白丝在线| 日韩精品中文字幕一区二区三区| 日韩激情av在线| 欧美不卡一区二区三区四区| 久久99精品久久只有精品| 欧美大黄免费观看| 极品销魂美女一区二区三区| 欧美精品一区二区三区蜜桃 | 日韩亚洲欧美中文三级| 日韩精品电影在线| 精品sm在线观看| 国内成人免费视频| 中文字幕av不卡| 色八戒一区二区三区| 婷婷综合五月天| 精品少妇一区二区三区日产乱码| 国产成人亚洲综合a∨婷婷图片 | 日韩精品影音先锋| 国产精品99久久久久| 亚洲视频一二区| 欧美精品 日韩| 国产一区二区中文字幕| 国产精品电影院| 欧美视频自拍偷拍| 国产一区二区三区av电影| 亚洲视频一区在线观看| 欧美三片在线视频观看| 久久91精品久久久久久秒播| 国产精品久久久久三级| 在线播放日韩导航| 国产成人精品免费在线| 亚洲综合久久久| 日韩欧美在线综合网| 99re视频这里只有精品| 奇米色777欧美一区二区| 亚洲欧洲性图库| 日韩精品资源二区在线| 一本大道久久a久久综合| 久久精品国产秦先生| 亚洲女子a中天字幕| 日韩美一区二区三区| 91久久一区二区| 丁香啪啪综合成人亚洲小说| 日韩不卡一二三区| 中文字幕一区视频| 日韩精品一区二区三区中文精品| 色婷婷久久99综合精品jk白丝 | 天天亚洲美女在线视频| 国产性色一区二区| 欧美一区二区三区喷汁尤物| 91麻豆精品视频| 国产精品影视天天线| 日韩中文欧美在线| 亚洲免费观看在线观看| 中文字幕精品综合| 欧美精品一区二区三区四区 | 久久久三级国产网站| 91精品国产乱码| 色综合天天综合给合国产| 国产自产高清不卡| 麻豆精品在线看| 美女久久久精品| 日韩成人免费在线| 亚洲综合一区在线| 亚洲欧美日韩电影| 日韩理论电影院| 国产精品福利影院| 中文字幕中文字幕一区二区| 国产婷婷色一区二区三区| 精品国产亚洲在线| 精品国产乱码久久久久久1区2区| 3751色影院一区二区三区| 欧美日韩在线三级| 欧洲一区在线电影| 欧美性淫爽ww久久久久无| 在线观看欧美日本| 欧美特级限制片免费在线观看| 91久久免费观看| 欧美视频在线观看一区| 欧美羞羞免费网站| 8v天堂国产在线一区二区| 欧美美女网站色| 日韩视频一区在线观看| 精品国产乱码久久久久久免费| 欧美电影免费观看高清完整版在线| 日韩精品一区二区在线| 精品国产a毛片| 亚洲国产精华液网站w| 国产精品成人一区二区艾草 | 中文字幕 久热精品 视频在线| 久久九九影视网| 中文字幕一区二区三区视频| 亚洲欧美日韩成人高清在线一区| 亚洲一区二区三区四区的| 视频在线观看国产精品| 国内精品嫩模私拍在线| 成人美女视频在线看| 91久久免费观看| 91精品国产综合久久婷婷香蕉| 日韩精品一区二区三区视频播放| 欧美精品一区二区三区四区 | 91国偷自产一区二区三区观看| 精品视频一区二区不卡| 欧美一区二区三区男人的天堂| 久久久www成人免费无遮挡大片| 欧美国产激情二区三区| 亚洲国产精品自拍| 国产伦精品一区二区三区视频青涩| 国产精品自拍av| 在线观看av一区二区| 欧美一卡二卡三卡| 中文字幕在线不卡一区二区三区 | 国产传媒久久文化传媒| 色欧美日韩亚洲| 久久综合色一综合色88| 亚洲激情第一区| 国产麻豆成人传媒免费观看| 在线免费观看日本一区| 欧美大白屁股肥臀xxxxxx| 亚洲视频在线一区二区| 免费观看在线色综合| 91丝袜美女网| 久久久久久影视| 亚洲成人动漫av| 白白色 亚洲乱淫| 精品日韩av一区二区| 亚洲黄色性网站| 成人性生交大片| 欧美一区二区三区四区视频| 亚洲色图在线播放| 韩国一区二区视频| 欧美日韩中文另类| 亚洲欧洲日产国码二区| 国产一区二区电影| 91精品国产麻豆| 亚洲va欧美va人人爽| 91女人视频在线观看| 国产女人18水真多18精品一级做 | 欧美xxxx老人做受| 亚洲成人福利片| 91浏览器在线视频| 国产精品视频看| 国产精品一品二品| 日韩亚洲欧美成人一区| 亚洲国产精品一区二区www在线| 99在线精品观看| 国产欧美日韩中文久久| 国产一区二区精品久久91| 欧美一区二区不卡视频| 亚洲国产aⅴ天堂久久| 日本高清不卡在线观看| 国产精品成人午夜| 成人性生交大片免费看在线播放| 337p粉嫩大胆噜噜噜噜噜91av | 日韩在线a电影| 欧美色图一区二区三区| 一区二区三区在线看| 色综合天天综合网国产成人综合天 | 欧美天天综合网| 亚洲一级二级三级在线免费观看| 色噜噜久久综合| 亚洲精品一二三| 日本道在线观看一区二区| 亚洲精品国产精华液| 日本二三区不卡|