校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁(yè) > 知識(shí)庫(kù) > Mysql在線回收undo表空間實(shí)戰(zhàn)記錄

Mysql在線回收undo表空間實(shí)戰(zhàn)記錄

熱門(mén)標(biāo)簽:福建外呼系統(tǒng)定制化 銅陵防封電銷(xiāo)卡 電銷(xiāo)卡外呼系統(tǒng)供應(yīng)商 騰訊地圖標(biāo)注提升 怎么在地圖標(biāo)注位置生成圖片 美國(guó)反騷擾電話機(jī)器人 真人語(yǔ)音電話機(jī)器人 悟空科技電話機(jī)器人 400電話可以免費(fèi)申請(qǐng)嗎

1 Mysql5.6

1.1 相關(guān)參數(shù)

MySQL 5.6增加了參數(shù)innodb_undo_directory、innodb_undo_logs和innodb_undo_tablespaces這3個(gè)參數(shù),可以把undo log從ibdata1移出來(lái)單獨(dú)存放。

  • innodb_undo_directory:指定單獨(dú)存放undo表空間的目錄,默認(rèn)為.(即datadir),可以設(shè)置相對(duì)路徑或者絕對(duì)路徑。該參數(shù)實(shí)例初始化之后雖然不可直接改動(dòng),但是可以通過(guò)先停庫(kù),修改配置文件,然后移動(dòng)undo表空間文件的方式去修改該參數(shù)。

默認(rèn)參數(shù):

mysql> show variables like '%undo%';
+-------------------------+-------+
| Variable_name      | Value |
+-------------------------+-------+
| innodb_undo_directory  | .   |
| innodb_undo_logs    | 128  |
| innodb_undo_tablespaces | 0   |
+-------------------------+-------+
  • innodb_undo_tablespaces:指定單獨(dú)存放的undo表空間個(gè)數(shù),例如如果設(shè)置為3,則undo表空間為undo001、undo002、undo003,每個(gè)文件初始大小默認(rèn)為10M。該參數(shù)我們推薦設(shè)置為大于等于3,原因下文將解釋。該參數(shù)實(shí)例初始化之后不可改動(dòng)

實(shí)例初始化是修改innodb_undo_tablespaces:

mysql_install_db ...... --innodb_undo_tablespaces

$ ls
...
undo001 undo002 undo003
  • innodb_rollback_segments:默認(rèn)128個(gè)。每個(gè)回滾段可同時(shí)支持1024個(gè)在線事務(wù)。這些回滾段會(huì)平均分布到各個(gè)undo表空間中。該變量可以動(dòng)態(tài)調(diào)整,但是物理上的回滾段不會(huì)減少,只是會(huì)控制用到的回滾段的個(gè)數(shù)。

1.2 使用

初始化實(shí)例之前,我們只需要設(shè)置innodb_undo_tablespaces參數(shù)(建議大于等于3)即可將undo log設(shè)置到單獨(dú)的undo表空間中。如果需要將undo log放到更快的設(shè)備上時(shí),可以設(shè)置innodb_undo_directory參數(shù),但是一般我們不這么做,因?yàn)楝F(xiàn)在SSD非常普及。innodb_undo_logs可以默認(rèn)為128不變。

undo log可以存儲(chǔ)于ibdata之外。但這個(gè)特性依然雞肋:

  • 首先你必須在install實(shí)例的時(shí)候就指定好獨(dú)立Undo tablespace, 在install完成后不可更改。
  • Undo tablepsace的space id必須從1開(kāi)始,無(wú)法增加或者刪除undo tablespace。

1.3 大事務(wù)測(cè)試

mysql> create table test.tbl( id int primary key auto_increment, name varchar(200));
Query OK, 0 rows affected (0.03 sec)

mysql> start transaction;
Query OK, 0 rows affected (0.00 sec)

mysql> insert into test.tbl(name) values(repeat('1',00));
Query OK, 1 row affected (0.00 sec)

mysql> insert into test.tbl(name) select name from test.tbl;
Query OK, 1 row affected (0.00 sec)
Records: 1 Duplicates: 0 Warnings: 0

...

mysql> insert into test.tbl(name) select name from test.tbl;
Query OK, 2097152 rows affected (24.84 sec)
Records: 2097152 Duplicates: 0 Warnings: 0

mysql> commit;
Query OK, 0 rows affected (7.90 sec)

觀察undolog已經(jīng)開(kāi)始膨脹了!事務(wù)commit后空間也沒(méi)有回收。

$ du -sh undo*
10M  undo001
69M  undo002
10M  undo003

2 Mysql5.7

5.7引入了在線truncate undo tablespace

2.1 相關(guān)參數(shù)

必要條件:

  • innodb_undo_tablespaces:最少有兩個(gè),這樣一個(gè)在清理的時(shí)候可以使用另一個(gè),該參數(shù)實(shí)例初始化之后不可改動(dòng)
  • innodb_rollback_segments:回滾段的個(gè)數(shù),總會(huì)有一個(gè)回滾段分配給系統(tǒng)表空間,32個(gè)保留給臨時(shí)表空間。所以如果想使用undo表空間的話,這個(gè)值要至少為33。例如使用兩個(gè)undo表空間,這個(gè)值就配35。如果設(shè)置多個(gè)undo表空間,系統(tǒng)表空間中的回滾段會(huì)變成非活躍狀態(tài)。

啟動(dòng)參數(shù):

  • innodb_undo_log_truncate=on
  • innodb_max_undo_log_size:超過(guò)這個(gè)值的表空間會(huì)標(biāo)記為truncate,動(dòng)態(tài)參數(shù)默認(rèn)是1G
  • innodb_purge_rseg_truncate_frequency:指定purge操作被喚起多少次之后才釋放rollback segments。當(dāng)undo表空間里面的rollback segments被釋放時(shí),undo表空間才會(huì)被truncate。由此可見(jiàn),該參數(shù)越小,undo表空間被嘗試truncate的頻率越高。

2.2 清理過(guò)程

  1. undo表空間大小超過(guò)innodb_max_undo_log_size后,標(biāo)記該表空間需要清理。標(biāo)記會(huì)循環(huán)進(jìn)行,避免一個(gè)表空間被反復(fù)清理。
  2. 標(biāo)記表空間內(nèi)的回滾段變?yōu)榉腔钴S狀態(tài),正在運(yùn)行的事務(wù)等待執(zhí)行完。
  3. 開(kāi)始purge
  4. 釋放undo表空間中的所有回滾段后,運(yùn)行truncate并將undo表空間截?cái)酁槠涑跏即笮。跏即笮∮蒳nnodb_page_size決定,默認(rèn)16KB的大小對(duì)應(yīng)表空間為10MB
  5. 重新激活回滾段,以便將它們分配給新事務(wù)

2.3 性能建議

truncate表空間時(shí)避免影響性能的最簡(jiǎn)單方法是增加撤消表空間的數(shù)量

2.4 大事務(wù)測(cè)試

配置8個(gè)undo表空間,innodb_purge_rseg_truncate_frequency=10

mysqld --initialize ... --innodb_undo_tablespaces=8

開(kāi)始測(cè)試

mysql> show global variables like '%undo%';
+--------------------------+------------+
| Variable_name      | Value   |
+--------------------------+------------+
| innodb_max_undo_log_size | 1073741824 |
| innodb_undo_directory  | ./     |
| innodb_undo_log_truncate | ON     |
| innodb_undo_logs     | 128    |
| innodb_undo_tablespaces | 8     |
+--------------------------+------------+

mysql> select @@innodb_purge_rseg_truncate_frequency;
+----------------------------------------+
| @@innodb_purge_rseg_truncate_frequency |
+----------------------------------------+
|                   10 |
+----------------------------------------+

select @@innodb_max_undo_log_size;
+----------------------------+
| @@innodb_max_undo_log_size |
+----------------------------+
|          10485760 |
+----------------------------+

mysql> create table test.tbl( id int primary key auto_increment, name varchar(200));
Query OK, 0 rows affected (0.03 sec)

mysql> start transaction;
Query OK, 0 rows affected (0.00 sec)

mysql> insert into test.tbl(name) values(repeat('1',00));
Query OK, 1 row affected (0.00 sec)

mysql> insert into test.tbl(name) select name from test.tbl;
Query OK, 1 row affected (0.00 sec)
Records: 1 Duplicates: 0 Warnings: 0

...

mysql> insert into test.tbl(name) select name from test.tbl;
Query OK, 2097152 rows affected (24.84 sec)
Records: 2097152 Duplicates: 0 Warnings: 0

mysql> commit;
Query OK, 0 rows affected (7.90 sec)

undo表空間情況,膨脹到100MB+后成功回收

$ du -sh undo*
10M    undo001
10M    undo002
10M    undo003
10M    undo004
10M    undo005
10M    undo006
125M   undo007
10M    undo008

$ du -sh undo*
10M    undo001
10M    undo002
10M    undo003
10M    undo004
10M    undo005
10M    undo006
10M    undo007
10M    undo008

3 Reference

https://dev.mysql.com/doc/ref...

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

您可能感興趣的文章:
  • MySQL 清除表空間碎片的實(shí)例詳解
  • 解析mysql 表中的碎片產(chǎn)生原因以及清理
  • MySQL的表空間是什么
  • Mysql臟頁(yè)flush及收縮表空間原理解析
  • MySQL InnoDB表空間加密示例詳解
  • 深度解析MySQL 5.7之臨時(shí)表空間
  • mysql Innodb表空間卸載、遷移、裝載的使用方法
  • MySQL中查詢所有數(shù)據(jù)庫(kù)占用磁盤(pán)空間大小和單個(gè)庫(kù)中所有表的大小的sql語(yǔ)句
  • MySQL 表空間碎片的概念及相關(guān)問(wèn)題解決

標(biāo)簽:臨汾 湖北 烏海 湖南 武威 白銀 云浮 聊城

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql在線回收undo表空間實(shí)戰(zhàn)記錄》,本文關(guān)鍵詞  Mysql,在線,回收,undo,表,空間,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Mysql在線回收undo表空間實(shí)戰(zhàn)記錄》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Mysql在線回收undo表空間實(shí)戰(zhàn)記錄的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    麻豆传媒一区二区三区| 一区二区三区日韩| 国产欧美日韩视频在线观看| 日本一区二区不卡视频| 亚洲精品五月天| 日韩欧美一级二级| 亚洲三级久久久| 亚洲综合一二三区| 精品亚洲欧美一区| 91免费看片在线观看| 日韩一区二区视频| 国产精品伦理一区二区| 亚洲国产成人tv| 成人视屏免费看| 日韩视频一区二区三区| 国产日韩欧美麻豆| 久热成人在线视频| 在线免费不卡视频| 久久久国产精品午夜一区ai换脸| 亚洲主播在线播放| 国产成人一区在线| 欧美一区二区三区四区在线观看| 国产精品乱人伦| 韩国精品主播一区二区在线观看| 91精品国产手机| 欧美一区二区视频在线观看2020| 久久久激情视频| 日一区二区三区| 99久久99久久精品国产片果冻| 欧美一区二区视频在线观看2020 | 日本精品裸体写真集在线观看| 欧美一区二区三区免费视频| 亚洲欧美综合另类在线卡通| 日韩成人午夜电影| 在线观看日韩毛片| 国产精品麻豆99久久久久久| 免费在线观看一区二区三区| 在线精品视频一区二区三四 | 日韩成人一级片| 91麻豆成人久久精品二区三区| 国产亚洲欧美激情| 激情六月婷婷久久| 欧美成人a在线| 亚洲激情中文1区| av影院午夜一区| 中文字幕av在线一区二区三区| 亚洲综合网站在线观看| 国产·精品毛片| 国产精品久久毛片av大全日韩| 99re视频精品| 蜜臀久久久久久久| 国产情人综合久久777777| 99久久精品国产一区| 夜夜揉揉日日人人青青一国产精品| 欧美在线一二三四区| 青青草国产精品97视觉盛宴| 欧美成人精品二区三区99精品| 国产91清纯白嫩初高中在线观看| 18欧美亚洲精品| 欧美日韩www| 国内成人免费视频| 一区二区在线观看不卡| 日韩一区二区三区视频在线观看| 国产成人精品亚洲日本在线桃色| 一区二区三区欧美久久| 日韩一区二区不卡| 99久久精品免费观看| 免费精品99久久国产综合精品| 欧美极品美女视频| 在线电影院国产精品| www.日本不卡| 老司机精品视频导航| 日韩一区欧美一区| 欧美电影免费观看高清完整版在| 91视频在线看| 久久99精品国产.久久久久久 | 亚洲国产精品久久一线不卡| 久久青草欧美一区二区三区| 欧美午夜精品理论片a级按摩| 国产精品自产自拍| 水野朝阳av一区二区三区| 国产精品你懂的| 欧美xxxxx牲另类人与| 在线日韩av片| 成人av动漫网站| 九一九一国产精品| 午夜精品福利在线| 亚洲黄网站在线观看| 26uuu成人网一区二区三区| 欧美日韩国产一区二区三区地区| 不卡av电影在线播放| 另类欧美日韩国产在线| 亚洲国产综合色| 亚洲欧美日韩精品久久久久| 国产三级精品三级| 精品国产一区二区三区av性色| 91国产丝袜在线播放| 99久久伊人久久99| 国产精品18久久久| 国产一区二区三区免费观看| 日韩1区2区日韩1区2区| 亚洲一级片在线观看| 亚洲视频中文字幕| 国产精品理伦片| 国产精品久久久久久久久动漫| www亚洲一区| www日韩大片| 国产欧美一二三区| 中文一区二区完整视频在线观看| 久久亚洲春色中文字幕久久久| 欧美一区二区国产| 欧美一区三区四区| 欧美一区二区三区小说| 日韩一区二区精品| 精品免费一区二区三区| 精品99999| 国产色一区二区| 国产精品入口麻豆九色| 成人免费在线观看入口| 亚洲欧美另类小说| 亚洲在线免费播放| 日韩 欧美一区二区三区| 麻豆精品视频在线| 国产一区999| 成人国产一区二区三区精品| 成人免费毛片嘿嘿连载视频| 99国产精品久| 欧美卡1卡2卡| 精品国产制服丝袜高跟| 国产女同性恋一区二区| 亚洲乱码国产乱码精品精可以看 | 91麻豆精品国产91久久久久久 | 日本午夜精品视频在线观看| 蜜桃视频一区二区| 国产精品白丝jk黑袜喷水| www.日韩大片| 欧美三级电影网| 欧美成人伊人久久综合网| 亚洲国产精品黑人久久久| 亚洲欧美激情一区二区| 亚洲成人av在线电影| 国产一区二区三区精品欧美日韩一区二区三区 | 91官网在线观看| 日韩欧美一级二级三级久久久| 国产欧美一区二区精品性色超碰| 亚洲图片你懂的| 蜜臀av一区二区三区| 成人精品免费看| 欧美精品久久天天躁| 国产亚洲欧美在线| 亚洲第一久久影院| 国产成人自拍网| 欧美精品一级二级| 国产人妖乱国产精品人妖| 26uuu久久天堂性欧美| 亚洲色图欧美偷拍| 日韩极品在线观看| 99综合电影在线视频| 7777精品久久久大香线蕉| 国产欧美视频一区二区三区| 一二三四区精品视频| 国产精品夜夜嗨| 91精品国产综合久久久久久漫画| 中文字幕中文字幕一区| 精品一区中文字幕| 欧美主播一区二区三区美女| 国产人久久人人人人爽| 麻豆成人综合网| 欧美精品久久一区二区三区 | 欧美私模裸体表演在线观看| 国产视频一区二区在线观看| 亚洲成人自拍一区| 91在线一区二区三区| 国产欧美久久久精品影院| 日韩国产在线观看一区| 91首页免费视频| 欧美激情一区在线| 国产高清不卡一区二区| 欧美一区二区在线看| 欧美哺乳videos| 成人永久aaa| 日韩一区二区麻豆国产| 亚洲欧美一区二区久久| 国产不卡一区视频| 欧美成人性战久久| 蜜桃在线一区二区三区| 欧美日韩精品一区二区天天拍小说 | 亚洲天堂成人网| 激情六月婷婷久久| 日韩欧美亚洲国产另类| 日韩在线一二三区| 欧美日韩高清一区二区三区| 洋洋av久久久久久久一区| 色综合久久综合网97色综合| 中文字幕一区二区三中文字幕 | 日韩精品三区四区| 欧美精品久久天天躁| 天堂在线亚洲视频| 日韩色在线观看| 精品制服美女丁香|