欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

MySQL InnoDB行鎖五大限制:索引、隔離級(jí)別與事務(wù)設(shè)計(jì)實(shí)戰(zhàn)

MySQL InnoDB行鎖五大限制:索引、隔離級(jí)別與事務(wù)設(shè)計(jì)實(shí)戰(zhàn) 寫文章本質(zhì)上是在勸人少踩坑。MySQL的InnoDB行鎖看著像是“鎖住一行不就是鎖住那一條記錄嗎”實(shí)際用起來(lái)卻有一堆前置條件索引、隔離級(jí)別、事務(wù)長(zhǎng)度都在背后管著你。我平時(shí)在線上排查鎖等待和死鎖最后基本都會(huì)回到同一個(gè)結(jié)論多數(shù)不是MySQL故意使壞而是表結(jié)構(gòu)、SQL寫法或者事務(wù)設(shè)計(jì)沒(méi)對(duì)上InnoDB的行鎖規(guī)則。這篇文章就把我這些年踩過(guò)的坑、查過(guò)的innodb_trx、改過(guò)的慢SQL串起來(lái)把InnoDB使用行鎖的限制講透。1. 從一條慢SQL說(shuō)起行鎖在InnoDB中的地位1.1 行鎖到底鎖的是什么很多人以為行鎖鎖的是“數(shù)據(jù)行本身”這個(gè)理解在邏輯上沒(méi)錯(cuò)但在InnoDB的實(shí)現(xiàn)層面要修正一下InnoDB的鎖是加在索引記錄上的。也就是說(shuō)行鎖鎖的是索引條目不是堆表里那一行物理數(shù)據(jù)。更準(zhǔn)確地說(shuō)如果表上有主鍵那主鍵索引就是聚簇索引數(shù)據(jù)行本身就被存在聚簇索引的葉子節(jié)點(diǎn)里所以加在主鍵索引上的鎖看起來(lái)就是在鎖那一行數(shù)據(jù)。但如果SQL走的是二級(jí)索引InnoDB會(huì)在二級(jí)索引記錄上加鎖同時(shí)還會(huì)回表去聚簇索引上加鎖這兩把鎖是一起生效的。這個(gè)區(qū)別直接引出了一個(gè)核心限制想讓行鎖真正生效SQL的WHERE條件必須能通過(guò)索引定位到記錄。能定位到索引InnoDB才知道要鎖哪些索引記錄定位不到它就不知道邊界在哪里只能擴(kuò)大加鎖范圍。我見(jiàn)過(guò)不少開(kāi)發(fā)在排查死鎖時(shí)盯著SHOW ENGINE INNODB STATUS里的行鎖信息看半天最后發(fā)現(xiàn)那條UPDATE的WHERE子句壓根沒(méi)走索引InnoDB實(shí)際上把所有掃描過(guò)的行都鎖了一遍。因?yàn)镸ySQL的加鎖邏輯是“掃描到哪一行就鎖定哪一行”全表掃描就等于把所有行的鎖都拿了一遍事務(wù)并發(fā)一上來(lái)自然互相阻塞。1.2 為什么“行鎖”經(jīng)常被人說(shuō)成“表鎖”這里有個(gè)常見(jiàn)的誤會(huì)。有人會(huì)在社區(qū)里問(wèn)“我的表加了索引為什么還是鎖表”實(shí)際上InnoDB在絕大多數(shù)情況下不會(huì)主動(dòng)加表級(jí)鎖DML語(yǔ)句用的還是行鎖。但當(dāng)一條SQL因?yàn)闆](méi)走索引而掃描全表時(shí)它會(huì)對(duì)掃描過(guò)程中遇到的每一行都加上鎖外部看起來(lái)的表現(xiàn)就和表鎖一樣任意其他事務(wù)的操作都會(huì)被阻塞。這就是限制的核心雛形行鎖并不是按表開(kāi)綠燈而是按索引命中率來(lái)開(kāi)綠燈。索引沒(méi)命中行鎖的“行”就變成了“行集合”甚至整個(gè)表。理解這一點(diǎn)后面再談鎖等待、死鎖、事務(wù)隔離級(jí)別就都有了下半句的前提。與此同時(shí)MySQL鎖的分類里還有一個(gè)很容易被忽略的層InnoDB在行鎖之上還會(huì)配合共享鎖、排他鎖、意向鎖這些概念檢修線上的鎖問(wèn)題時(shí)光看行鎖本身是不夠的意向鎖與行鎖的兼容關(guān)系也會(huì)影響并發(fā)度。但為了不大跑偏我們先把重點(diǎn)放在行鎖的那些硬性限制上。2. 最容易翻車的限制索引與行鎖的強(qiáng)綁定2.1 沒(méi)有索引行鎖為什么會(huì)退化成“準(zhǔn)表鎖”先給結(jié)論InnoDB不會(huì)因?yàn)槟銢](méi)索引就自動(dòng)升級(jí)成LOCK TABLES級(jí)別的表鎖但它的行鎖范圍會(huì)膨脹到無(wú)法接受。我舉個(gè)真實(shí)場(chǎng)景。有一張訂單表結(jié)構(gòu)很簡(jiǎn)單CREATE TABLE order_info ( id int NOT NULL AUTO_INCREMENT, order_no varchar(32) NOT NULL, user_id int NOT NULL, status tinyint NOT NULL, PRIMARY KEY (id) ) ENGINEInnoDB;某天開(kāi)發(fā)同學(xué)執(zhí)行了這條UPDATEUPDATE order_info SET status 2 WHERE order_no SO20240001;order_no上沒(méi)建索引。此時(shí)MySQL只能走全表掃描InnoDB在掃描過(guò)程中會(huì)給所有讀到的記錄逐一加排他鎖。如果表里有一萬(wàn)條記錄這一條UPDATE有可能把上萬(wàn)條記錄的鎖全部拿住雖然形式上是行鎖但效果等同于鎖表。排查時(shí)有幾個(gè)特征可以參考EXPLAIN中的type列為ALL說(shuō)明全表掃描行鎖范圍失控的概率極高。鎖等待期間information_schema.innodb_trx里能看到這條事務(wù)長(zhǎng)時(shí)間處于LOCK WAIT狀態(tài)。并發(fā)UPDATE其他行也會(huì)被阻塞因?yàn)槠渌幸惨呀?jīng)被這條全表掃描的事務(wù)鎖住了。這類問(wèn)題的修復(fù)方案也很直接給查詢條件建立合理的索引讓優(yōu)化器從ALL變成ref或range行鎖才能回到它本來(lái)的意義。這里有個(gè)值得注意的細(xì)節(jié)在MySQL 5.6之前的版本里UPDATE全表掃描時(shí)加鎖是逐條加的而5.6之后引入了半同步讀優(yōu)化掃描后鎖定的記錄可能沒(méi)有以前那么夸張但核心風(fēng)險(xiǎn)仍然存在線上真實(shí)表現(xiàn)依然是“一條慢SQL拖死一波事務(wù)”。所以別把優(yōu)化器層面的補(bǔ)償當(dāng)成救命稻草字段上該加的索引還是要加。2.2 聯(lián)合索引與行鎖的“錯(cuò)位”問(wèn)題如果說(shuō)單列索引沒(méi)有還容易識(shí)別聯(lián)合索引用錯(cuò)了才是更高頻的翻車點(diǎn)。假設(shè)表上有個(gè)聯(lián)合索引idx_user_status(user_id, status)一條SQL這樣寫UPDATE order_info SET remark 已處理 WHERE status 1 AND order_no SO20240001;優(yōu)化器可以用idx_user_status嗎多數(shù)情況下不會(huì)因?yàn)閟tatus不在聯(lián)合索引的最左前綴中而order_no也不在這條索引里。所以這條UPDATE大概率會(huì)選擇走主鍵索引全掃描或者全表掃描行鎖的范圍又失控了。更隱蔽的情況是SQL同時(shí)用了兩個(gè)索引條件但優(yōu)化器只選了一個(gè)另一個(gè)條件被當(dāng)作Using where filter過(guò)濾掉那加鎖范圍依然會(huì)超出預(yù)期。這類問(wèn)題的特征比較難從EXPLAIN一眼看出來(lái)因?yàn)閗ey列顯示用了索引看起來(lái)像是“走了索引”但實(shí)際鎖定的記錄數(shù)量遠(yuǎn)大于實(shí)際需要修改的記錄數(shù)。比如條件組合能命中100行但鎖了1000行等修改完成時(shí)對(duì)應(yīng)用其他行的UPDATE就被阻塞了。我在實(shí)際排查里一般會(huì)讓開(kāi)發(fā)把執(zhí)行計(jì)劃拉出來(lái)重點(diǎn)看兩個(gè)字段key真正用到的索引是哪個(gè)。rows優(yōu)化器估算的掃描行數(shù)。如果rows遠(yuǎn)大于最終修改的行數(shù)鎖范圍多半也超了。調(diào)整辦法通常有兩個(gè)一是調(diào)整聯(lián)合索引的字段順序把高頻過(guò)濾字段放到左邊二是把WHERE條件里的字段順序和聯(lián)合索引的最左前綴對(duì)齊而不是簡(jiǎn)單把字段堆上去。這里面的根本邏輯是行鎖的粒度不是由你要改多少行決定的而是由你要掃多少索引記錄決定的。掃描的索引記錄越多鎖的范圍就越大這是所有行鎖限制里最容易被忽略、影響卻最直接的一條。3. 隔離級(jí)別對(duì)行鎖的限制比你想的更大3.1 幻讀、間隙鎖與Next-Key Lock搞行鎖繞不開(kāi)隔離級(jí)別尤其是默認(rèn)的REPEATABLE READ。MySQL官方說(shuō)InnoDB在RR級(jí)別下能很大程度上避免幻讀靠的不是只鎖住命中行而是引入了間隙鎖和Next-Key Lock。間隙鎖鎖的是索引記錄之間的“間隙”它鎖的不是某個(gè)具體行而是一個(gè)范圍比如WHERE id BETWEEN 10 AND 20如果這個(gè)區(qū)間里有幾條記錄InnoDB不僅會(huì)鎖這幾條記錄還會(huì)鎖住10到20這個(gè)范圍內(nèi)的空隙防止其他事務(wù)插入新的記錄。Next-Key Lock則是“記錄鎖間隙鎖”的組合鎖的范圍是左開(kāi)右閉區(qū)間既鎖住了已有記錄又鎖住了這條記錄前面的間隙。用生活化的類比來(lái)說(shuō)記錄鎖像是你占了一個(gè)車位間隙鎖則是你連車位前后的通道也占了別人想在你旁邊新劃一個(gè)車位都做不到。這種設(shè)計(jì)滿足了RR級(jí)別對(duì)“同一事務(wù)內(nèi)多次查詢結(jié)果一致”的需求但也帶來(lái)一個(gè)限制鎖的邊界從“行”擴(kuò)大到了“范圍”。實(shí)際案例很典型。表里的訂單狀態(tài)字段是普通索引idx_status(status)事務(wù)A執(zhí)行SELECT * FROM order_info WHERE status 1 FOR UPDATE;事務(wù)B想往status 1的間隙里插入一條新訂單比如status 1還沒(méi)有對(duì)應(yīng)的記錄但插入位置處在事務(wù)A鎖定的間隙之內(nèi)那B就必須等。哪怕B插入的是一行“全新”的、A剛才沒(méi)讀到的記錄一樣會(huì)被阻塞。這就是很多人困惑的地方明明只是鎖行為什么別人插一條新記錄也被鎖住了3.2 RC與RR下行鎖行為的差異從限制的角度看READ COMMITTED級(jí)別下InnoDB會(huì)把Next-Key Lock退化大部分情況只鎖命中行不再鎖間隙。但請(qǐng)注意不是所有場(chǎng)景都完全不鎖間隙在涉及外鍵約束檢查和duplicate key檢查時(shí)依然會(huì)有間隙鎖存在。只是從日常DML的典型場(chǎng)景來(lái)看RC級(jí)別下的鎖競(jìng)爭(zhēng)確實(shí)比RR小很多。這給了我們一個(gè)非常重要的調(diào)優(yōu)思路如果業(yè)務(wù)對(duì)事務(wù)隔離級(jí)別沒(méi)有強(qiáng)一致需求從RR切換到RC往往能直接減少鎖等待。但切換前要考慮兩點(diǎn)binlog的格式是不是ROW。MySQL 5.7.7之后默認(rèn)就是ROW但有些老環(huán)境還沿用STATEMENT這種情況下RC下出現(xiàn)的主從數(shù)據(jù)不一致風(fēng)險(xiǎn)會(huì)更高。應(yīng)用層是否依賴RR的“可重復(fù)讀”語(yǔ)義比如在一個(gè)事務(wù)里先查后寫且多次查詢結(jié)果必須完全一致。我處理過(guò)的很多死鎖其實(shí)都發(fā)生在RR級(jí)別下一個(gè)事務(wù)鎖了范圍A另一個(gè)事務(wù)鎖了范圍B然后互相等對(duì)方釋放。把隔離級(jí)別降到RC之后很多死鎖直接消失。畢竟行鎖的限制不等同于“鎖一定越少越好”但能少鎖一個(gè)間隙就少一個(gè)阻塞點(diǎn)。這里還要提醒一句如果業(yè)務(wù)確實(shí)需要RR的間隙鎖來(lái)防止幻讀那你做的就不是“去掉間隙鎖”而是“讓間隙盡量小”。比如把范圍查詢改成等值查詢把大區(qū)間拆成事務(wù)內(nèi)部多次小查詢這都是在保留隔離性的前提下給鎖“瘦身”。4. 行鎖限制背后的性能陷阱與優(yōu)化思路4.1 鎖等待與死鎖的高發(fā)場(chǎng)景行鎖限制落到真實(shí)業(yè)務(wù)里最常見(jiàn)的就是兩類事故鎖等待超時(shí)和死鎖。鎖等待超時(shí)通常是事務(wù)A拿著某些行的鎖遲遲不提交事務(wù)B在等這些鎖超過(guò)innodb_lock_wait_timeout默認(rèn)50秒之后直接報(bào)錯(cuò)。這種問(wèn)題大多跟長(zhǎng)事務(wù)有關(guān)。開(kāi)發(fā)同學(xué)在一個(gè)事務(wù)里先UPDATE了一條記錄然后又去做外部接口調(diào)用等接口響應(yīng)20秒后再去UPDATE第二條記錄第二個(gè)事務(wù)只能干等。一旦接口超時(shí)事務(wù)回滾用戶側(cè)看到的就是“操作失敗請(qǐng)重試”但數(shù)據(jù)庫(kù)上的鎖可能還沒(méi)釋放干凈。死鎖則更微妙一點(diǎn)。兩個(gè)事務(wù)都持有部分鎖同時(shí)請(qǐng)求對(duì)方持有的鎖InnoDB會(huì)檢測(cè)到這種循環(huán)等待選擇一個(gè)事務(wù)回滾另一個(gè)繼續(xù)執(zhí)行。死鎖最常見(jiàn)的觸發(fā)場(chǎng)景是多個(gè)事務(wù)以不同的順序更新同一組記錄。比如事務(wù)1先更新id1再更新id2事務(wù)2先更新id2再更新id1并發(fā)跑到臨界點(diǎn)就撞上了。我在實(shí)際項(xiàng)目里還見(jiàn)過(guò)另一種高發(fā)場(chǎng)景批量UPDATE的SQL寫得范圍過(guò)大兩個(gè)事務(wù)同時(shí)UPDATE同一片區(qū)域里的大部分記錄雖然最終更新的記錄集合有交集但加鎖過(guò)程中需要掃描和鎖定的索引記錄數(shù)量巨大導(dǎo)致鎖沖突概率指數(shù)上升。說(shuō)白了SQL寫得太粗鎖的范圍就被迫變大死鎖概率就被動(dòng)拉高。4.2 從鎖的角度反推SQL改寫與索引設(shè)計(jì)優(yōu)化行鎖限制不是去改InnoDB的鎖規(guī)則而是去改我們的SQL和索引讓規(guī)則對(duì)我們的懲罰最小。第一優(yōu)先級(jí)是給UPDATE和DELETE的WHERE條件建立合適索引。這條我在第二部分講得比較細(xì)但還是忍不住再?gòu)?qiáng)調(diào)一次沒(méi)有索引的UPDATE不僅慢而且鎖得廣是數(shù)據(jù)庫(kù)事故的溫床。建索引時(shí)優(yōu)先考慮等值條件字段再考慮排序字段最后才考慮范圍字段盡量讓優(yōu)化器鎖定更小的記錄集合。第二個(gè)優(yōu)化方向是縮短事務(wù)持有鎖的時(shí)間。不要在一個(gè)事務(wù)里做太多事尤其是不要做RPC調(diào)用、消息隊(duì)列推送這類外部操作。事務(wù)只做數(shù)據(jù)庫(kù)相關(guān)操作事務(wù)里的SQL盡量提前準(zhǔn)備好提交前不要有長(zhǎng)等待。把一個(gè)大事務(wù)拆成多個(gè)小事務(wù)雖然整體執(zhí)行時(shí)間可能沒(méi)有變短但每個(gè)事務(wù)持鎖時(shí)間都?jí)嚎s了其他事務(wù)的等待時(shí)間就顯著下降。第三個(gè)方向是保證多個(gè)事務(wù)訪問(wèn)相同資源時(shí)順序保持一致。比如業(yè)務(wù)規(guī)則規(guī)定了更新必選按id從小到大那所有事務(wù)都按這個(gè)順序執(zhí)行就不會(huì)出現(xiàn)互相持有對(duì)方需要的鎖的死鎖局面。這個(gè)在代碼里可以做也可以在SQL里強(qiáng)行加ORDER BY id以穩(wěn)定加鎖順序讓InnoDB按順序去鎖定索引記錄。第四點(diǎn)是關(guān)注innodb_lock_wait_timeout和innodb_deadlock_detect的配置。死鎖檢測(cè)默認(rèn)開(kāi)啟它在高并發(fā)下會(huì)消耗一部分CPU但絕大多數(shù)業(yè)務(wù)場(chǎng)景下不建議關(guān)閉因?yàn)殛P(guān)掉之后死鎖會(huì)被藏起來(lái)等鎖超時(shí)才報(bào)錯(cuò)更難排查。鎖等待超時(shí)則應(yīng)該根據(jù)業(yè)務(wù)容忍度調(diào)整不要盲目調(diào)大調(diào)大只會(huì)讓用戶等得更久系統(tǒng)資源也被無(wú)效鎖占著。這些都是MySQL性能調(diào)優(yōu)里最常被翻出來(lái)的模塊。其實(shí)性能問(wèn)題很多都不是計(jì)算上的瓶頸而是鎖層面的排隊(duì)。計(jì)算慢一點(diǎn)可能只影響那一條SQL鎖排隊(duì)影響的是全體并發(fā)事務(wù)。5. 實(shí)戰(zhàn)實(shí)錄一次行鎖超時(shí)與死鎖的排查5.1 問(wèn)題現(xiàn)象與鎖等待的監(jiān)控手段有一回線上訂單服務(wù)突然出現(xiàn)大量“Lock wait timeout exceeded”報(bào)錯(cuò)同時(shí)伴隨著零星的死鎖日志。我先看了主機(jī)監(jiān)控CPU和IO都不高基本排除硬件瓶頸問(wèn)題鎖定在鎖競(jìng)爭(zhēng)上。排查鎖等待的第一步是看當(dāng)前有哪些事務(wù)在跑、哪些事務(wù)在等。我進(jìn)了MySQL命令行執(zhí)行SELECT * FROM information_schema.innodb_trx\G重點(diǎn)看三個(gè)字段trx_state是RUNNING還是LOCK WAIT。trx_started事務(wù)開(kāi)始時(shí)間判斷是否是長(zhǎng)事務(wù)。trx_query事務(wù)當(dāng)前執(zhí)行的SQL。結(jié)果發(fā)現(xiàn)有一條事務(wù)從5分鐘前就開(kāi)始了一直處于RUNNING狀態(tài)但它的SQL已經(jīng)執(zhí)行完了遲遲沒(méi)有提交原因是在代碼里事務(wù)方法返回前多做了一個(gè)Redis操作拖了幾秒。還有幾條事務(wù)全部卡在LOCK WAIT上等的那把鎖恰好就是前面那條長(zhǎng)事務(wù)持有的行鎖。下一步用鎖等待關(guān)系表查出誰(shuí)在等誰(shuí)SELECT waiting_trx_id, waiting_thread, waiting_query, blocking_trx_id, blocking_thread, blocking_query FROM information_schema.innodb_lock_waits;這張表直接給了鎖等待的鏈條。事務(wù)A持有鎖事務(wù)B、C、D都在排隊(duì)等A。問(wèn)題已經(jīng)很清楚不是鎖不夠而是事務(wù)A占著鎖不提交。5.2 定位到具體行鎖的排查流程光知道事務(wù)A占鎖還不夠我還得確認(rèn)它鎖了哪些行以及為什么鎖了這么多行。這時(shí)拿出SHOW ENGINE INNODB STATUS在LATEST DETECTED DEADLOCK或TRANSACTIONS段落下能看到事務(wù)A持有的鎖記錄。日志里通常會(huì)有類似這樣的信息*** (1) TRANSACTION: TRANSACTION 1001, ACTIVE 300 sec MySQL thread id 8, OS thread handle 140123, query id 123 update order_info set status 2 where status 1看到這條UPDATE我基本就鎖定了問(wèn)題根因status字段是一個(gè)普通索引但操作方在SQL里用了一個(gè)范圍條件把大量記錄納入鎖范圍。更致命的是這是一個(gè)批量更新任務(wù)本來(lái)只需要更新100條卻因?yàn)樗饕x擇不當(dāng)掃描了幾千條索引記錄行鎖的范圍被放大到幾十倍并且事務(wù)遲遲不提交后面的正常訂單更新全部被堵住。排查思路落實(shí)到操作上我總結(jié)了一套固定流程先看innodb_trx找出長(zhǎng)時(shí)間不提交的事務(wù)記下trx_id和trx_started。再看innodb_lock_waits畫(huà)出誰(shuí)持有鎖、誰(shuí)在等待的依賴鏈。SHOW ENGINE INNODB STATUS里查鎖模式區(qū)分是RECORD LOCKS還是GAP LOCKS判斷是否和隔離級(jí)別、間隙鎖有關(guān)。最后回到業(yè)務(wù)SQL本身EXPLAIN看執(zhí)行計(jì)劃?rùn)z查索引使用和掃描行數(shù)。那次改動(dòng)的最終方案有兩步。第一步是給批量更新任務(wù)加了更精準(zhǔn)的篩選條件把WHERE里的范圍條件改成等值或者明顯縮小范圍的組合同時(shí)確保該條件能用上聯(lián)合索引的最左前綴。第二步是把大事務(wù)拆成了每批100條的小事務(wù)每批執(zhí)行完立刻COMMIT持鎖時(shí)間從分鐘級(jí)降到了秒級(jí)。上線后鎖等待報(bào)錯(cuò)直接清零。排查過(guò)程中我還發(fā)現(xiàn)一個(gè)容易被忽視的細(xì)節(jié)information_schema.innodb_trx里的trx_query字段在事務(wù)處理完SQL但尚未提交時(shí)經(jīng)常顯示為NULL因?yàn)楫?dāng)前沒(méi)有正在執(zhí)行的語(yǔ)句。很多同事看到trx_query是NULL就以為事務(wù)閑著沒(méi)事其實(shí)它只是等提交鎖一根沒(méi)少。這時(shí)候判斷依據(jù)要轉(zhuǎn)向trx_started和trx_state別被trx_query帶偏。6. 常見(jiàn)問(wèn)題速查與經(jīng)驗(yàn)沉淀6.1 行鎖相關(guān)的常見(jiàn)問(wèn)題對(duì)照表我把平時(shí)群里的高頻問(wèn)題整理成表方便直接對(duì)照排查現(xiàn)象可能原因排查方向UPDATE后其他事務(wù)全部卡住WHERE條件無(wú)索引行鎖范圍擴(kuò)大到全表掃描看EXPLAIN加了索引再試鎖等待超時(shí)偶發(fā)SQL掃描行數(shù)過(guò)大事務(wù)持鎖時(shí)間過(guò)長(zhǎng)看innodb_lock_waits縮短事務(wù)死鎖日志反復(fù)出現(xiàn)多個(gè)事務(wù)對(duì)同一批記錄更新順序不一致統(tǒng)一更新順序加ORDER BY同一行數(shù)據(jù)并發(fā)更新頻繁熱點(diǎn)行競(jìng)爭(zhēng)激烈長(zhǎng)事務(wù)堆積考慮合并更新或異步化插入被阻塞但已有記錄沒(méi)被修改RR級(jí)別下間隙鎖生效評(píng)估是否可降為RC或縮小范圍事務(wù)已結(jié)束但鎖未釋放事務(wù)未提交連接池復(fù)用舊連接檢查應(yīng)用層提交邏輯這張表不止參考也建議團(tuán)隊(duì)里做數(shù)據(jù)庫(kù)開(kāi)發(fā)的同事人手一份。很多鎖問(wèn)題是典型的“表結(jié)構(gòu)事務(wù)設(shè)計(jì)”問(wèn)題不是MySQL一時(shí)抽風(fēng)。6.2 我在實(shí)際項(xiàng)目中的幾條鎖經(jīng)驗(yàn)最后分享幾條頂著生產(chǎn)環(huán)境壓力換來(lái)的經(jīng)驗(yàn)。第一別把事務(wù)殼子包得太大。我見(jiàn)過(guò)一個(gè)導(dǎo)入功能把幾千條INSERT放進(jìn)一個(gè)事務(wù)跑的時(shí)候其他業(yè)務(wù)寫操作全部排隊(duì)后來(lái)改成每500條一個(gè)批次問(wèn)題立刻緩解。行鎖限制不討論“你的業(yè)務(wù)是否合規(guī)”只看“你的鎖占了多少時(shí)間”。第二UPDATE和DELETE前先看執(zhí)行計(jì)劃。EXPLAIN不花幾秒鐘但它能告訴你這次操作是不是又要鎖全表了。我習(xí)慣在開(kāi)發(fā)自測(cè)階段就強(qiáng)制要求看過(guò)執(zhí)行計(jì)劃寧可多跑一次也很少帶病上線。第三批量更新時(shí)加鎖順序要統(tǒng)一。如果一條業(yè)務(wù)邏輯要更新多條記錄最好在SQL里加ORDER BY讓InnoDB按固定順序加鎖降低死鎖概率。這個(gè)邏輯對(duì)高并發(fā)下的訂單、庫(kù)存、賬戶類操作尤其重要。第四監(jiān)控是最后的保底。我常用的監(jiān)控項(xiàng)有information_schema.innodb_trx里的活躍事務(wù)數(shù)量、innodb_lock_waits里的等待次數(shù)、SHOW GLOBAL STATUS LIKE Innodb_row_lock_waits的累計(jì)等待次數(shù)。這些指標(biāo)結(jié)合在一起能在業(yè)務(wù)真正卡死之前給出預(yù)警信號(hào)。行鎖的精髓不在鎖本身而在“怎么讓鎖的范圍比業(yè)務(wù)需要的小”。索引合理了事務(wù)變短了隔離級(jí)別選對(duì)了InnoDB行鎖的大多數(shù)限制就不會(huì)在業(yè)務(wù)側(cè)炸開(kāi)。最后再分享一個(gè)我看過(guò)很多次的場(chǎng)景有人為了省一次查詢把一個(gè)后臺(tái)任務(wù)里幾千條數(shù)據(jù)的更新放進(jìn)了一個(gè)事務(wù)本來(lái)業(yè)務(wù)邏輯沒(méi)跑完但數(shù)據(jù)庫(kù)已經(jīng)被一道鎖擋住。記得第一次處理這種問(wèn)題時(shí)我盯著SHOW ENGINE INNODB STATUS看了很久最后發(fā)現(xiàn)只是因?yàn)橐粭lUPDATE的WHERE條件沒(méi)走索引整個(gè)表都在等他放鎖。從那之后我對(duì)行鎖的敬畏就變成了一個(gè)習(xí)慣寫UPDATE先看索引開(kāi)事務(wù)先想清楚要等多久上線前先查一次innodb_trx。這套習(xí)慣救了我很多次也值得成為你的默認(rèn)動(dòng)作。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
www.操.com| 日韩好吊操| 五月丁香色婷婷色| 丁香激情合作五月| 人人操人人干AV| 狠狠干夜夜干| 亚洲婷婷综合视频| 丁香五月天偷拍| 玖玖99福利| 99热成人精品网站| 五月丁香好婷婷姑娘综合网| 99日本视频| 综合久| 欧美激情 日韩无码 婷婷 五月天 久久婷婷丁香五月一二三 | 五月丁香六月欧美| AV网站免费在线| 色五月丁香五月| 丁香六月天婷婷开心综合| 欧美啪啪五月天| 大香蕉九九| www.五月天婷婷姐姐| 激情婷婷99| 超碰人人操人人干| 91碰人人| 亚洲精品久久久久久久久久吃药 | 玖玖午夜视频| 六月天六月婷| 人妻久久久久久久 | 狠狠色色| 91丨九色丨熟女高潮| 丁香婷在线| 99欧州偷拍视频| 久热在线中文字幕色999舞| 日本五月天婷婷丁香| 欧美婷婷| 97色图片中文字幕视频在线观看 | XX久久| 五月丁香综合网色欲| 五月色丁香婷婷综合| 色婷婷电影| 婷婷五月深爱五月| 婷婷伊在线| 久久婷婷大香蕉| 色播五月| 丁香 亚洲 久久| 激情丁香久久| 美女五月天| 激情五月天婷婷在线网址发给我| 成人日韩欧美| 久七香蕉| 婷婷五月综合基地| 亚洲熟妇AV乱码在线观看| 久久久精品人妻| site:jszngf.com| 黄色五月婷| 亚洲婷婷五月天| 九九热免费视频| 九九成人精品| 色婷婷色五月另类综合| 国产精品操| 色九九综合色| 五月天丁香| WWW.99视频| 天天插天天干天天舔| 自拍偷窥99热| 日本成人综合| 中文字幕+中文在线| 色婷婷网| 欧美成人A片AAA片在线播放| 婷婷射综合| 成人丁香婷婷五月天| 亚州精品色情无码A片| 国产91视频| 欧美操人| 丰滿爆乳一区二区三区| 超碰在线91| 大香线蕉伊人| 人人草人人看| 五月婷婷激情视频| 婷婷五月综合激情免费视频| 五月婷婷影视| 激情5月婷婷狠狠干| 人人97碰| 成人电影在线免费试看| 91久久久久久久久久| 婷婷五月天99综合网站| 国产亚洲成AV人片在线观黄桃| 棕合影院色色| 久久婷婷久久| 婷婷五月精品中文字幕| 97五月天| 色五月婷婷在线| 天天做天天爱天天玩夜夜爽| 淫荡工a| 色久婷婷网| 97人妻碰碰中文无码久热丝袜| 影音先锋91资源站| 丁香玖玖视频大全| 影音先锋偷偷色男人站| 人人看人人97| 婷婷性爱视频在线| 色色丁香五月| 98永久精品| av五月丁香婷婷网| 99精品久久久久久久婷婷| 婷婷六月五月| 日本色狠狠| 五月丁香在线看| 亚洲狠狠狠| 日日操日日干| 999热成人在线综合网| 丁香五月天婷婷中文| 亚洲VA欧美VA| 久久亚洲精品成人无码网站导航| 亚洲综合干| 色五月久久成人婷婷| 婷婷五月在线综合| 91AV视频| 一区二区你懂的| 婷婷五月丁香综合亚洲| 男人的天堂在线婷婷| 婷婷丁香精品视频在线观看| 激情五月天婷婷丁香| 丁香五月婷婷婷桃花影院| 久久五月天视频| 五月天婷婷色综合| 97色天堂| 26uuu成人网| 日韩无码色色| 成人综合伍月天| 亚洲中文乱字字幕线在永久| 亭亭玉立国色天香| 婷婷久久五月天亚洲欧美国产日韩在线观看| 婷婷欧美色| 日日夜夜青青草| 五月激情婷婷播播网| 狠狠色丁香婷婷| 色色色999| 91精品在线看| 亚洲第一色色色| 99操无码视频观看| www.yw色| 五月婷婷六月丁香综合在线| 国产99久久久| 婷婷五月成人色综合| 九九久久99| jiqingtaose五月天| 99五月丁香丁| 狠狠干青青草| 丁香色婷婷五月天| 丁香五月色| 人人摸人人| 嫩BBB搡BBBB榛BBBB| 激情综合网激情五月婷婷| 99久久久精品| 九九碰九九爱97超| 五月婷婷色男女| 涩涩网五月天| h在线看免费版在线看| www.粉嫩av.com| 久久婷婷五月国产激情综合片| 国产永久一二一起草| 啪啪啪啪五月天| 色综合色综合网| 天天操天天干天天日| 亚洲最大在线| 国产全是老熟女太爽了| 97香蕉人人在线观看| 色色色色色五月丁香| 五月婷婷丁香| 99精品视频免费观看,| 激情综合五月色丁香婷婷| 天天干天天干天天干天天干天| 丁香五月婷婷六月丁香| 六月丁香久久| 综合激情九月婷婷,激情综合婷婷中文字| 99超碰人人| 五夜婷婷| 久久精品亚洲热| 日本WWW九九九| 丁香五月成人社区| 日本nghangse中文字幕| 激情综合亚洲| 丁香六月婷婷综合在线| 天天色综网| 国产五月视频| 91色在线/日韩| 五月丁香五月激情综合色综合| 天天综合亚洲| 丁香五月影院| 九热视频免费观看| XXXX岛国| 操逼三区| 五月天婷婷狂暴白浆| 日本99视频精品免费播放| 91爱啪啪| www99热| 99久久性爱| 超碰在线网站9| 丁香六月婷婷综合啪啪| 天天橾日日橾夜夜橾17| 色色色99| 91N 一起草| 丁香综合婷婷开心激情网| 五月丁香婷婷综合网色欲| 99亚洲视频| 蜜臀AV在线观看| 狠狠色噜噜狠狠| VA国产在线综合网站| 综合网亚洲| 99综合视频| 五月丁香激情四射| 激情性爱五月天网页| www.日韩国产| 天天做天天爱天天综合网| 欧美色婷婷| 丁香婷婷久| 日韩婷婷五月| 亚洲秘 无码一区二区三区妃光/1| 五月综合激情婷婷六月色窝| 国产成人在线精品| 操人妻视频91| 国产精品成人AV在线观看春天| 婷婷色吧| 99性爱视频网站| 丁香五月社区| 激情四射网| 五月丁香欧美在线| 99久在线精品99re8| 97久操| 免费色色色| 九色91视频| 97日本在线播放| 五月婷婷激情性爱| 九九激情视频| 农村熟妇高潮精品A片| 欧美激情综合色综合啪啪五月| 丁香五月婷婷亚洲另类| 99热这里只有精品2| 亭亭丁香97| 色爱99| 日本天堂免费99| 色色色色综合网| 日韩综合久| 五月欧美色色五月| av九九| 嫩草视频观看| 一级操逼内射在线视频| 欧美韩国日本| 五月天婷婷基地丁香| 99激情视频| 性生生活大片又黄又| 丁香五月另类色婷婷麻豆| 性日本精品| 五月天婷婷基地| 亚州操操| 五月丁香激情综合网| 国产成人精品一区二区三区视频| 99er这里只有精品视频| 色婷婷免费观看| 9超碰在线| 天天色天天色天天色天天色天天色| 五月丁香六月激情综合| 东京热伊人| 天天干 夜夜爽| 香蕉AV777XXX色综合一区| 日日噜人人人做人| 人妻久久久久久久 | 99热99思午夜精品| 99在线精品在线视频| 最近免费中文字幕大全高清大全1| 久久综合综合久久| 色色五月天丁香婷婷| 精品国产AV色一区二区深夜久久 | 婷婷九月在线| 激情五月份婷婷| 五月天激情网开心网| 亚洲精品无AMM毛片| 热99精品视频在线观看| 成年人丁香五月| 丁香五月91| 九九精品免费| 五月停停色| 日本五月天婷婷丁香| 亚洲无码影音| 少妇人妻凹凸视频| 五月综合激情久久| 色丁香五月综合网| 激情五月天婷婷播播久久综合91 | 五月婷激情影院| www,天天干| 北条麻妃伊人| 久久视频在线| 丁香五月WWW| 精品无码99| 99操九九网| 亚洲国产精品成人va在线观看| 久久久99精品免费观看| 天天插天天日天天爽| 日本99视频| 这里只有精品偷拍| 天天操夜夜操| 狠狠干狠狠干狠狠干狠狠干| 9热成人在线视频| 欧洲高清免费久久| 婷婷在线日韩综合| 婷婷性爱五月天| 九九超日本| 国产精品久久久海的味道| 黄色毛片精品| 2017狠狠干| 影音先锋一区二区三区| 九九视频这里只有精品| 欧美噜噜免费观看| 欧洲MV日韩MV国产| 九九热91| 丁香 久久| 久99久精品视频| 91九色国产| 99黄色性生活| 亚洲色婷婷| 3p日韩网站视频| 亚洲精品又粗又大又爽A片| 99热精品10| 青青久在线视频免费观看| 婷婷综合网在线| 久草热8精品视频在线观看| 六月婷婷国产| 97五月天婷婷综合激情网| 婷婷五月天情色| 嫩模aV在线| 天天干天天操天天拍| 九九精品这里只有| 99热亚洲| 国庆精品久久| 五月丁香婷婷成人网| www.五月激情红色| 久久五月天丁香| 国产亚洲精久久久久| www.久久爱.c n| 色六月婷婷| 婷婷六月激情小说网| 天天日日夜夜| 亚洲综合色棒| 97人人操在线| 日本不卡高字幕在线2019| 丁香婷五月| 丁香五月亚洲综合| 久超超碰| 激情五月婷婷欧美极品| 婷婷久久婷婷| 九九视频在线观看| 婷婷基地五月色| 亚洲AV永久无码影院黑人| 天堂综合久| 怡红院AV亚洲一区二区三区H | 先锋资源婷婷| 色播播五月天| 99国产这里只有精品| 9久久久久| 欧洲色区| 日本色婷婷| 欧美日本黄色| 亚洲精品成人| 成人做爰A片免费看视频| 亚洲色五月婷婷| 婷婷五月蜜桃成人桃色丁香| 五月婷婷黄网站大全| 99a级片| 激情综合五月婷| 中文字幕丰满孑伦无码专区| 亚洲秘 无码一区二区三区妃光/1| 九九黄色网| 91 影音先锋| 久久99激情| 色色影院aaaav| AV六月丁香| 国产 码在线成人网站| 成人五月天在线视频在线观看| 六月婷婷综合网2| 超碰成人在线观看| 97五月天婷婷| 99精品久久| 伊人久久丁香五月91| 亚洲免费99| 丁香五月天欧美在线| www狠狠com| 婷婷丁香六月| 五月丁香久人妻中文| 五月婷婷丁香伦理网| 日韩AV免费| 色综合久久888| 九九热只有精品| 精品九九在线观看视频| 美腿丝袜AV天堂网| www,婷婷| 99热这里只有在线播放| 日本天堂免费99| BBWCUCKOLD精品熟妇| 色色亚洲视频| 麻豆123区| www婷婷| 91丁香婷婷综合久久欧美| 涩涩涩五月天| 五月婷婷激情五月| 激情亚洲色图片丁香综合| 丁香花五月天激情| 久久久免费图片视频| 狠狠操天天干| 台湾无码A片一区二区| 另类小说五月天激情| 超碰在线人人| 欧美网站视频4399| 91狼友视频在线观看| 青草激情综合| 激情 婷婷| 婷婷六月天亚州| 狠狠艹狠狠艹| 五月天丁香网站| 超碰69天堂| 激情婷婷丁香| 色色五月天丁香| 六月婷婷久久| 丁香五月 六月婷婷首页| 欧美久久婷婷| 色在线99| 狠狠色综合网站久久久久| 欧美性生交A片免费看| 激情久久五月天| 五月婷婷啪| 5月婷婷六月丁香| 日本久久精品| 五月婷啪啪| CAOBIBI| 亚洲色图欧美色图日本视频| 婷婷综合五月| 91久久婷婷| 色色色热| 精品人妻久久久久久| 国产熟女日日骚五月丁香爱| 青青热久精品视频在线观看| 丁香五月激情婷婷视频| 996er热| 亚洲AV第二区国产精品| 99玖玖精品| 超碰成人黄色网| 丁香五月色五月婷婷宗合| 五月丁香六月婷婷精品| 五月开心婷婷网| 97在线刺激| 亚洲色基地| 五月久久丁香| 夫妇交换刺激做爰| ..真实国产乱子伦对白在线_欧| 99这里有精品| 五月天激情丁香| 97视频91| 精品99在线| www.日本91| 可以直接看的av| 婷婷色五月综合| WWW.开心五月天.COM| 六月伊人婷婷| 五月丁香啪啪啪啪| 欧美丁香六月激情视频| 2025天天爽天天摸| 97婷婷丁香五月| 亚洲精品小视频| 欧美色六月婷婷| 亭亭丁香久久五月| 6月丁香婷婷激情| 天堂爱爱| 思思热热久久| 色五婷婷| 激情婷婷五月社区| 亚洲综合五月天| 5月丁香婷婷激情网| 99热这里只有精品青草| 97干婷婷| 色狠狠色| 人妻久久久久久| 欧美婷婷| 日韩久久成人| 亚洲天堂色| 色婷婷91激情小说| 欧美激情伊人| 91色五月| 狠狠色噜噜狠狠色噜噜噜999| 五月天日日操夜夜操 | 五月丁香啪啪啪综合网| 在线天堂9| 久热黄色| 99热这里只有精品中文字幕| 在线只有精品| 思思热在线观看| 熟妇无码乱子成人精品| 久久看九九90| 毛v一区二区视频| 一本色道久久88加勒比—| 日本在线99| 色伊人婷婷| 人妻熟妇国产精品| 天天日天天做天天舔| caobi四区| 东北婷婷五月天| 激情五月婷婷色播网| 99色亚洲| www.超碰在线| 最近中文字幕大全免费版在线 | 婷婷免费精品视频| 天天干天天干天天干天天干天天干天天| 五月天成人伊人| 五月丁香激情欧洲啪啪| 五月婷视频| 97福利视频| 五月激情在线| 九月丁香婷婷网| 色婷婷五月天无码视频| 久久综合五月天| 激情久久四色| 五月丁香六月婷婷在线播放| 丁香五月激情在线| 97色97干| 色色com| 亚洲国产精品VA在线看黑人| 婷婷丁香婷婷97| 五月久久婷婷丁香| 九月婷婷综合八月丁香在线观看| 久久九九在线视频| 成人视频在线免费播放| 欧美日韩成人在线| 丁香婷婷综合色五月激情国产基地| 五月天三级久久| 久操b网| 欧美天天综合网站上去吧| 亚洲aV写真天天综合网久久| 四虎成人精品永久免费AV九九| 九九色精品| 99性爱视频| 婷婷丁香色五月| 欧美私人家庭影院| 久久9RE热视频精品98| 91婷婷| 丁香五月婷婷六月婷| 九九这里都是精品| 亚洲综合另类| 亚洲AV日韩AV永久无码网站| www.zbzhongsen.com| 天天色天天爱天天爽| 狠狠干狠狠干| 国产69久久久欧美黑人A片| 一片AV片免费播放| 激情五月天激情网| 天天摸天天透天天舔| 丁香婷婷基地| 日本大逼91| 色色五月天网站| 5月婷婷六月丁香| www.射伊蕉婷婷| 99热这里有精品| 丁香六月婷婷色播| 五月丁香在线偷拍视频| 九九精品自拍| AV在线免费观看不卡| 伊人婷婷大香蕉| 五月丁香六月情亚洲| 91se在线视频| 亚洲AV成人无码精品| 99自拍网| 五月天综合视频| 色吧综合网| 欧美啪啪网| 婷婷五月天无码熟女| 日本婷婷在线| 日韩日比视频在线| 婷婷第六色| 99热激情| 婷婷激情久久| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 激情婷婷| 激情五月天色色色| 综合色天天| 日韩久热| 亚洲无码九九九| 丁香五月天天日| 丁香激情网| 丁香婷婷浪潮AV久久综合| 婷婷第六色| 欧美美美女性色视频| 亚洲成人综合在线| 五月婷啪啪| 人人摸人人干人人做| www.色五月| 91凹凸在线| 快色t v在线入口| 另类小说色婷婷| 色五月婷婷丁香凹凸| 日本色婷婷五月天成人电影| 色欲丁香| 激情九色| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 俺五月| 大香蕉啪啪啪| 五月婷婷深深爱| 99热这里只有精品搜| 五月婷婷激情网| 中文字幕在线资源| 婷婷丁香宗合888| 久草婷婷视频| 久久99成人性爱高清视频| 婷婷综合网| 97人妻碰碰中文无码久热丝袜| 色五月婷婷亚洲最大| 玖玖婷婷免费| 五月 丁香 欧美| 久久五月天婷婷| 五月婷婷综合激情网| 深爱婷婷网| 黄色av高清| 婷婷丁香五月天综合网| 另类视频五月天| 亚洲天堂爱爱| 久草性爱| 五月天婷婷网站888| 丁香五月天资源网| 秋霞网在线免费基地五月婷婷丁香| 深爱五月天天| 无码少妇高潮喷水A片免费| 欧美五月丁香在线| 六月婷婷中文字幕| 久久亚洲婷婷| 色五月激情五月天| 亚洲春色奇米影视| 亚洲精品在线视频| 五月天久久婷婷| 在线观看视频1区| 人人干Av| 狠狠婷婷综合| 五月婷婷婷自由综合| 国产精产国品一二三在观看| 干婷婷五月天| 免费看欧美成人A片无码| 激情五月天婷婷久久久久久久久久久| 亚洲五月花| 91啪啪| 九九色婷婷| 婷婷人人操| 狼人婷婷久久| 欧美熟女99| 啪啪激情网| 日本三级日本三级三级人妇四虎| 狠狠摸狠狠摸| 激情综合在线观看| 婷婷五月亚洲综合| 婷婷性爱影院| 九九热在线视频| 欧美五月丁香啪啪响视频| 99综合视频| 欧洲99视频在线| 香蕉综合网| 婷婷色五月亚洲| 在线观看国产高清视频免费网站| 五月色情婷婷开心五月色情| 亚洲狠狠丁香婷婷香蕉| 婷婷干五月综合在线播放| 丁香五月伊人| 久久婷婷综合五月天| 日本色色网站| 超碰在线精品| 五月天激情综合网俺也去| 五月婷丁香| 夜夜操少妇| 婷婷丁香九色| 天天色天天爱天天爱天天爱y| 亚洲色基地| 免费看欧美成人A片无码| 五月天婷婷免费| 五月丁香人妻| 激情综合五月丁香六月婷婷| 婷婷五月骚厕所| 九九99偷拍视频| 草五月| 黄网在线免费观看| 性做久久久久久久免费看| 天天射射夜| 精品香蕉99久久久久网站| 岛国AV网站| 日本色色网站| 99爱在线精品视频免费观看| 五月丁香六月激情狠狠| 91操女| 激情第四色| 久久激情综合| 亚洲AV在线免费看| 五月丁香在线观看| 黄色AV日韩| 亚洲精品白浆高清久久久久久| 天天热夜夜操| 六月色激情| 天天插天天插天天插天天插| 综合视频五月| 视频1区2区| 五月丁香人妻| 日本成人小说婷婷六月| 五月丁香色婷基地综合久久| 亚洲日日操| 五月天自拍网| 九九视屏| 综合色播| 五月婷婷综合精品| 99久在线精品99re8热| 亚洲V国产V欧美V久久久久久| 久久这里只| 色综合久久综合中文综合网| 久久五月婷6 9| 五月天婷婷小说| 婷婷五月大| 五月综合激情网| 人妻九九九九| 99精品在| 99色精品| 草草夜夜操| 九九热精品视频在线观看| 婷婷五月成人色综合| 99草在线免费观看视频| 九九色逼| 久久久人妻门| 操逼三区| 日本色婷婷| 色婷大香蕉| 综合婷婷| 色婷婷综合中心| 免费人人操| 日本99视频| 美女五月天| 成年AAAA色情| 青青日韩| 亚洲欧州色情在线观看| 色五月婷色彩免播放器| www.99操| 狼人久草| 五月婷婷深深爱| 五月丁香在线精品| 色婷婷先锋| 日本不卡高字幕在线2019| 99玖玖在线视频| 91dy.av| 激情久久久久久久久| 精品一二三区久久AAA片| 天天爽天天爽| 色色婷婷综合网| 亚洲婷婷视频| 婷婷伊人五月丁香天堂网| 99热啪啪| 一级精品999WWW| 一本综合丁香日日狠狠色| 91狠狠综合久久| 久久婷婷大香蕉| 欧美叉叉叉BBB网站| 九九精品自拍| 五月丁香在线看| 色播丁香五月婷婷操:屄| 婷婷五月丁香欧洲| 操91综合网| 99操视频| 熟女激情网| 玖玖资源站蜜臀| 欧美99热| 国产 亚洲 在线| 在线视频激情网站| 大香蕉综合| 人妻aV在线| 5月丁香六月婷婷| 激情五月深爱五月| 久久精品五月天| 婷婷伊人綜合中文| 国产精产国品一二三在观看| 色色婷婷五月| 日本99在线| 99热中文字幕久久| 天天综合插插| site:901-07.com| 99热在线精品观看| 大香蕉丁香| 97碰碰久久| 成人综合网站| 色婷婷狠狠| AV在线观看网站| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 97碰在线| 婷婷五月天伊人| 久久人妻伊人| 在线观看玖玖资源免费观看| 丁香五月在线视频| 五月婷婷深深的爱| 色婷婷五月综合| 伊人久久大香蕉网| 青青草原伊人网| 丁香六月激情国产| wwwwww.色| 日日肏夜夜干| 亚洲五月天伊人| 噜噜色五月| 99激情在线| 狠狠色丁香久久婷婷综合五月| 美女被肏网站在线看| 五月天婷婷色| 欧美成人精品A片免费一区99| 五月丁香六月激情欧美综合| 婷婷四色五月| 成人在线视频网| 美欧日韩国产成人在战| 狠狠干,狠狠操| 国产欧美va| 色婷婷综合视频| 婷婷五月天成人网站| 五月综合精品| 五月婷婷啪啪网| 99视频精品全部免费观看| 日日射天天射| 亚洲天堂AAA| 五月丁香婷婷久久| 亚洲AAAA网| 五月丁香六月婷婷免费视频| 99er6免费视频热播| 色播五月丁香| 色五月激情视频在线综合| 国产九九一区二区三区| 插逼综合网| 精品牛仔裤超碰| 色综合久久无码| 五月丁香久久婷| 伊人五月天久久| 婷婷五月激情综合网| 九九热内射| 男人的天堂在线婷婷| 99视频啪啪| 日韩五月婷婷| 日韩一级网站| 婷婷丁香五月天大香蕉| www.yw色| 中美月韩免费A片| 色噜噜狠狠色综合日日| 五月丁香六月综合情在线观看| 玖玖视频福利| 激情婷婷五月天网址| 五月综亚洲| site:publishdd.com| 99在线亚洲| 国产欧美va| 丝袜激情网| 丁香五月婷婷六月| 亚洲天堂久久| 人妻丰满精品一区二区A片| 婷婷影院A成人| 伊人九九九久| 婷婷国产欧美97| 超碰9| 色综合网上班开心婷婷久久| 丁香成人五月天| 99re在线观看视频| 69激情小说| 欧美日本va| 五月丁香六月激情综合| 成人版视频在线观看| 婷婷久久综合| 九九热在线精品视频| 国产又爽又猛又粗的视频A片| 日逼影音先锋男人资源站| 中文字幕在线不卡视频| 99丁香五月婷| 婷婷久久婷婷色五月| 激情亚洲色图片丁香综合| 天天操综合网站| 91碰超| 99热这里有精品| 久久国产一区二区三区| 淫荡A片| 九九热自拍| 精品一二三区视频立| 欧美Va在线| 天天做天天爱| 婷婷色婷婷| 日本黄色一级| 激情AV中文| 色吧五月| 五月丁香激情综合欧美| 五月激情站| 六月丁香婷| 99ER热精品视频| 婷婷色五月天色色| 五月婷婷激情综合| 狠狠五月激情婷婷直播片| av人人干| 99热最新| 91制片厂久久久国产电影| 97极品在线| 五月丁香婷婷久久| 99热精品中文字幕| 99精品久久| 色婷婷在线电影| 另类视在线| 久1色色| 色婷婷综合视频| 色色色色色色色色网站| 久久婷婷超碰| WWW.99视频| 色六月丁香婷婷狠狠干| 狠狠狠色激情综合适合| 色色亚洲| 亚洲中字AV电影在线网站| 五月丁香色综合| 亚洲 精品 综合 精品| 99视频精品在线| 99热这里只有精品8| 九九热这里只有精品9| 色综合色五月| 亚洲婷婷激情888精品久| 色婷五月天| 色色色网站| 九月av在线| 五月丁香好婷婷姑娘综合网| 婷婷五月天电影网| 人妻中文在线| 天天操五月天| 激情婷婷五月天伊人在线观看| 五月婷视频在线| 色欲一区二区三区精品A片| 综合色婷婷| 久久五月婷综合网| 99热最新精品| 九久九精品| 婷婷99| 婷婷六月五月| 能看的AV| 99精品人人| 五月天停停成人网| 欧美这里只有精品| 影音先锋91男人资源在线播放| 久婷婷五月激情| 六月婷婷五月丁香| 男人先锋久久| 久久婷婷五月综合| 亚亚州久久高潮| 亚洲精品白浆高清久久久久久| 激情爱爱网站超大免费| 爱婷婷五月| 九九热精品视频| 99热 在线播放| 偷拍视频五月天| 九九色综合九九色| 丁香五月AV| 俺去也在线www色官网| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 亚洲AV成人片无码网站| 99这里只有精品| 色婷婷亚洲综合av| www.夜夜操.con| 婷婷九月综合| 天堂网亚洲色图| 99热日韩这里只有精品| 99九九在线观看免费| 欧美日韩成人综合9| 亚洲激情图文小说| 丁香五月区| 欧美婷婷色五月网| 亚洲十月婷婷综合| 99热精品无码| 久久激情五月天| 自拍盗摄 另类| 日本欧美成人片AAAA| www.99视频| 五月天婷婷免费视频| 丁香五月婷婷操逼| 婷婷五月天无码熟女| 337p大胆噜噜噜噜噜91Av| 久久午夜丁香| 欧洲免费视频色| 国产伦亲子伦亲子视频观看| 婷婷色导航| 色色色色热| AV在线免费观看不卡| 97激情五月天| 五月婷丁香| 亚韩在线视频| 五月天成人在线播放| 超碰在线资源| 热这里| 99久久国产宗和精品1上映| 日韩操人| 变态另类9| 热99在线精品| 婷久看人爽| 五月婷婷六月激情| 久草天堂| 玖玖综合色| 激情婷婷九月| 日本成人噜噜噜| 熟妇天天综合| 五月丁香欧美| 大香蕉综合视频在线| 亚洲激情无码久久| 99久久久久| 天天曰夜夜爽| 996er热| 色婷婷在线播放| 狠狠爱激情网| 色婷婷88| 久久综合影院 | 色婷婷很很丝袜| 丁香亚洲婷婷五月| 大地9中文在线观看免费高清| 欧美五月丁香在线| 五月丁香综合在线| 久久99久久99久久99人受| 日韩九区| 亚洲成人在线综合| 停停五月色宗合| 9久久网| 五月天开心网| 婷婷五月网图片区| 99精品一二三四视频| 丁香 亚洲 久久| 色噜噜狠狠色综| 欧洲亚洲免费视频9| 99男人天堂| 久久大香蕉同僚| 91久久综合| 久久女人天堂| 日韩另类| 99这里有精品视频| 欧美狠狠草| 偷偷与邻居做爰完整视频| 天天上天天爽| 搡BBBB搡BBB搡18| 色丁香婷婷美女视频网站| 色五月婷婷777| 播五月丁香六月| 五月丁香综合久久夜夜| 丁香婷婷六月男男| 成人网站av免费网站推荐| 色永久| 大香AV| 偷拍91九色| 成人av免费观看| 激情小说婷婷| 五月丁香 久久久| 在线成人va| 天天久综合| 性爱激情小说AV五月丁香花| 美国色五月天婷婷资源站| 1999天天操夜夜操| 婷婷五月丁香六月| 久久五月婷婷电影| 99re6在线视频精品免费| 亚洲行行色色| 丁香五月婷婷亚洲天堂| 亚洲综合视频网| 激情五月天视频| 久久久久久久人妻| 五月天激情国产综合AV| 涩涩激情五月婷婷| 五月天婷婷成人网| www.色九月| 色综合激情| 婷婷五月天Av| 超碰自拍天堂| 五月天婷婷丁香导航| 五月丁香啪啪网| 日本欧美成人片AAAA| 五月天激情啪啪| 超碰97久久| 九九热在线观看视频| 丁香婷婷射| 蜜桃婷婷狠狠久久综合| 亚洲网站999| sesesesezonghe| 伊久大香蕉| 97色操| 婷婷五月天在线看| 婷婷五月天小说| www,99热| 噜噜噜狠狠色综| 精品无码久久久久久久久| 能直接看的AV网站| 色色色婷| 欧美激情综合色综合啪啪五月| 激情性五月天免费小说视频| 超级碰碰碰碰视频| 九九热精品| 激情开心五月天婷婷基地丁香社区| 婷婷丁香五月色偷偷| 伊人婷婷五月天| 99这里是精品| 91操在线视频| 久久人人做人人妻人人玩精品va| 无码人妻一区| 色六月丁香婷婷啪啪啪| 久久久天堂国产精品女人| 国产激情在线| 久久机热/这里只有精品| 婷婷伊人视婷婷婷| 色五月婷婷综合| 婷婷丁香五月天色色| 97操碰视频| 五月熟妇婷婷久久| 欧美超碰人人| 色偷偷五月天| 久久五月天色| 无码色色色色色| 狠狠色综合图片| 五月婷色色| 亚洲国产精品综合色区| 成人网站免费在线播放| 亚洲成人在线观看av| 六月婷婷啪啪| 99热大片| 色七七九九| 熟惀91九色在线| 操操自拍| 开心五月婷婷在线| 欧美三级欧美一级| 中文字幕在线视频播放| 超碰成人电影| 成人精品99| www.99视频| 热久久这里只有三级视频| 五月天综合婷婷| 婷婷深爱五月丁香| 成人精品一区二区三区四区五区| 一区二区三区四区牛| 欧美激情五月天| 开心五月深爱五月| www..com色爱| 97资源欧美日韩大香蕉超碰一区| 久久AV无码精品人妻系列试探| 欧美视频五区| 精品久久久久久久久久久久人妻| 99热这里都是精品| 亚洲av另类在线观看| 精品人妻伦一二三区久久| 啪啪小说五月天| 色国产五月| 激情五月天啪啪| yw国产AV| 国产精品成人在线| 色婷婷88| 99久久久国产精品免费蜜乳tv| 激情婷婷五月久久| 九九激情视频| 久久精品国产精品| 99久久综合网| 色婷婷电影网| 天天艹天天色| 欧美色狠婷久| 人人操女人| 欧美三级韩国三级日本三斤| 婷婷激情性爱| 九九免费视频| 色欲婷婷夜夜| 久久婷婷五月丁香网| 久久99jiu9| 人与禽A片啪啪| 五月婷婷综合网| 欧美成人五月天| 秋霞学生妹一二级| 日本三级日本三级99| 激情淫乱男女| 色九四色| 91碰碰碰| 99国产在线| 婷婷激情六月视频| 色久五月天| 五月丁香六月激情网| 久久机热这里只有精品免费视频| 成人在线高清| 亚洲综合五月天婷婷| 精品无码久久久久久久久| 婷婷五月电影院| 成人免费在线电影| 五月天,激情四射,婷婷频道| 夜夜夜夜做天天天做无码视频| 97人人干| 婷婷久久五月丁香| 九月久久婷婷| 久久丁香九| 黑人糟蹋人妻HD中文字幕 | 伊人婷婷激情| 狠狠操.com| 激情五月天色色| 97久人人| 99久在线精品99re5热视频| 国产精品成av人在线视午夜片| 少妇AB又爽又紧无码网站| 高清无码入口| 精品五月天| 色婷婷中文在线| 五月婷婷,狠狠操| 日本激情五月天‘| 九九热这里只有精品9| 精品综合久久久久久五月天| 五月噜噜噜色综合| 99视频色在线观看| 九九九九毛片| 久婷婷| www.色9| 91超级碰在线视频| 99在线爽| 人人操91色| 大香蕉丁香| 婷婷激情综合色五月久久91| 欧美三级视频| 色五月丁香91| 九色综合网| 乱精品一区字幕二区| 精品欧美一区二区三区久久久| 国产精品扒开腿做爽爽爽A片唱戏 亚洲爆乳无码精品AAA片蜜桃 | 桔色成人在线| 五月婷婷福利| 婷婷丁香在线播放| 五月婷婷熟女| 99在线视频精品| 西瓜美女a片| 伊人五月人妻精品| 日噜噜色| av一区免费看| 丁香五月天堂网AV| 中文超碰视在线| 91黄色五月天视频| 变态另类色图| 大香蕉久久久久久久久| 久久日九九| 天天操五月天| 一区二区乱码视频| 色射影院| 久久久com| 丁香五月六月久久综合| 伍月婷丁香婷| 亚洲综合丁香婷婷六月天| 这里只有免费的精品| 激情五月婷婷中文字幕| 直接看的AV网站| 丁香婷婷色| 天天舔天天爽| 色五月播五月| 丁香久月| 亚洲精品成人| 丁香成人五月天| 强壮的公次次弄得我高潮A片日本 | 99热在线观看| 亚洲狠狠终合停停终合| 97超碰色| 亚洲黄3级片网站欧美| 久久性刺激| 欧美激情伊人| 九九热中文| 天天日天天狠狠操| 五月青青草综合| 丁香色综合| 五月婷婷中文字幕| 天天日天天操心| 九九热在线99| 天天做天天爱天天高潮| 五月精品99综合| 久久天堂加勒比| 久久五月丁香婷婷|