精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

怎么解決MySQL死鎖問題的?

數(shù)據(jù)庫 MySQL
死鎖是并發(fā)系統(tǒng)中常見的問題,同樣也會出現(xiàn)在數(shù)據(jù)庫MySQL的并發(fā)讀寫請求場景中。當(dāng)兩個及以上的事務(wù),雙方都在等待對方釋放已經(jīng)持有的鎖或因為加鎖順序不一致造成循環(huán)等待鎖資源,就會出現(xiàn)“死鎖”。

大家好,我是狼王,一個愛打球的程序員

咱們使用 MySQL 大概率上都會遇到死鎖問題,這實在是個令人非常頭痛的問題。本文將會對死鎖進(jìn)行相應(yīng)介紹,對常見的死鎖案例進(jìn)行相關(guān)分析與探討,以及如何去盡可能避免死鎖給出一些建議。

話不多說,開整!

什么是死鎖

死鎖是并發(fā)系統(tǒng)中常見的問題,同樣也會出現(xiàn)在數(shù)據(jù)庫MySQL的并發(fā)讀寫請求場景中。當(dāng)兩個及以上的事務(wù),雙方都在等待對方釋放已經(jīng)持有的鎖或因為加鎖順序不一致造成循環(huán)等待鎖資源,就會出現(xiàn)“死鎖”。常見的報錯信息為 Deadlock found when trying to get lock...。

舉例來說 A 事務(wù)持有 X1 鎖 ,申請 X2 鎖,B事務(wù)持有 X2 鎖,申請 X1 鎖。A 和 B 事務(wù)持有鎖并且申請對方持有的鎖進(jìn)入循環(huán)等待,就造成了死鎖。

 

如上圖,是右側(cè)的四輛汽車資源請求產(chǎn)生了回路現(xiàn)象,即死循環(huán),導(dǎo)致了死鎖。

從死鎖的定義來看,MySQL 出現(xiàn)死鎖的幾個要素為:

  1. 兩個或者兩個以上事務(wù)
  2. 每個事務(wù)都已經(jīng)持有鎖并且申請新的鎖
  3. 鎖資源同時只能被同一個事務(wù)持有或者不兼容
  4. 事務(wù)之間因為持有鎖和申請鎖導(dǎo)致彼此循環(huán)等待

InnoDB 鎖類型

為了分析死鎖,我們有必要對 InnoDB 的鎖類型有一個了解。

MySQL InnoDB 引擎實現(xiàn)了標(biāo)準(zhǔn)的行級別鎖:共享鎖( S lock ) 和排他鎖 ( X lock )

  1. 不同事務(wù)可以同時對同一行記錄加 S 鎖。
  2. 如果一個事務(wù)對某一行記錄加 X 鎖,其他事務(wù)就不能加 S 鎖或者 X 鎖,從而導(dǎo)致鎖等待。

如果事務(wù) T1 持有行 r 的 S 鎖,那么另一個事務(wù) T2 請求 r 的鎖時,會做如下處理:

  1. T2 請求 S 鎖立即被允許,結(jié)果 T1 T2 都持有 r 行的 S 鎖
  2. T2 請求 X 鎖不能被立即允許

如果 T1 持有 r 的 X 鎖,那么 T2 請求 r 的 X、S 鎖都不能被立即允許,T2 必須等待 T1 釋放 X 鎖才可以,因為 X 鎖與任何的鎖都不兼容。共享鎖和排他鎖的兼容性如下所示:

間隙鎖( gap lock )

間隙鎖鎖住一個間隙以防止插入。假設(shè)索引列有2, 4, 8 三個值,如果對 4 加鎖,那么也會同時對(2,4)和(4,8)這兩個間隙加鎖。其他事務(wù)無法插入索引值在這兩個間隙之間的記錄。但是,間隙鎖有個例外:

  • 如果索引列是唯一索引,那么只會鎖住這條記錄(只加行鎖),而不會鎖住間隙。
  • 對于聯(lián)合索引且是唯一索引,如果 where 條件只包括聯(lián)合索引的一部分,那么依然會加間隙鎖。

next-key lock

next-key lock 實際上就是 行鎖+這條記錄前面的 gap lock 的組合。假設(shè)有索引值10,11,13和 20,那么可能的 next-key lock 包括:

(負(fù)無窮,10],(10,11],(11,13],(13,20],(20,正無窮)

在 RR 隔離級別下,InnoDB 使用 next-key lock 主要是防止幻讀問題產(chǎn)生。

意向鎖( Intention lock )

InnoDB 為了支持多粒度的加鎖,允許行鎖和表鎖同時存在。為了支持在不同粒度上的加鎖操作,InnoDB 支持了額外的一種鎖方式,稱之為意向鎖( Intention Lock )。意向鎖是將鎖定的對象分為多個層次,意向鎖意味著事務(wù)希望在更細(xì)粒度上進(jìn)行加鎖。意向鎖分為兩種:

  1. 意向共享鎖( IS ):事務(wù)有意向?qū)Ρ碇械哪承┬屑庸蚕礞i
  2. 意向排他鎖( IX ):事務(wù)有意向?qū)Ρ碇械哪承┬屑优潘i

由于 InnoDB 存儲引擎支持的是行級別的鎖,因此意向鎖其實不會阻塞除全表掃描以外的任何請求。表級意向鎖與行級鎖的兼容性如下所示:

插入意向鎖( Insert Intention lock )

插入意向鎖是在插入一行記錄操作之前設(shè)置的一種間隙鎖,這個鎖釋放了一種插入方式的信號,即多個事務(wù)在相同的索引間隙插入時如果不是插入間隙中相同的位置就不需要互相等待。假設(shè)某列有索引值2,6,只要兩個事務(wù)插入位置不同(如事務(wù) A 插入3,事務(wù) B 插入4),那么就可以同時插入。

鎖模式兼容矩陣

橫向是已持有鎖,縱向是正在請求的鎖:

閱讀死鎖日志

在進(jìn)行具體案例分析之前,咱們先了解下如何去讀懂死鎖日志,盡可能地使用死鎖日志里面的信息來幫助我們來解決死鎖問題。

后面測試用例的數(shù)據(jù)庫場景如下:MySQL 5.7 事務(wù)隔離級別為 RR

表結(jié)構(gòu)和數(shù)據(jù)如下:

 

 

測試用例如下:

 

 

 

通過執(zhí)行show engine innodb status 可以查看到最近一次死鎖的日志。

日志分析如下:

***** (1) TRANSACTION: TRANSACTION 2322, ACTIVE 6 sec starting index read

事務(wù)號為2322,活躍 6秒,starting index read 表示事務(wù)狀態(tài)為根據(jù)索引讀取數(shù)據(jù)。常見的其他狀態(tài)有:

mysql tables in use 1 說明當(dāng)前的事務(wù)使用一個表。

locked 1 表示表上有一個表鎖,對于 DML 語句為 LOCK_IX

LOCK WAIT 2 lock struct(s), heap size 1136, 1 row lock(s)

LOCK WAIT 表示正在等待鎖,2 lock struct(s) 表示 trx->trx_locks 鎖鏈表的長度為2,每個鏈表節(jié)點代表該事務(wù)持有的一個鎖結(jié)構(gòu),包括表鎖,記錄鎖以及自增鎖等。本用例中 2locks 表示 IX 鎖和lock_mode X (Next-key lock)

1 row lock(s) 表示當(dāng)前事務(wù)持有的行記錄鎖/ gap 鎖的個數(shù)。

MySQL thread id 37, OS thread handle 140445500716800, query id 1234 127.0.0.1 root updating

MySQL thread id 37 表示執(zhí)行該事務(wù)的線程 ID 為 37 (即 show processlist; 展示的 ID )

delete from student where stuno=5 表示事務(wù)1正在執(zhí)行的 sql,比較難受的事情是 show engine innodb status 是查看不到完整的 sql 的,通常顯示當(dāng)前正在等待鎖的 sql。

***** (1) WAITING FOR THIS LOCK TO BE GRANTED:

RECORD LOCKS space id 11 page no 5 n bits 72 index idx_stuno of table cw****.****student trx id 2322 lock_mode X waiting

RECORD LOCKS 表示記錄鎖, 此條內(nèi)容表示事務(wù) 1 正在等待表 student 上的 idx_stuno 的 X 鎖,本案例中其實是 Next-Key Lock 。

事務(wù)2的 log 和上面分析類似:

***** (2) HOLDS THE LOCK(S):

RECORD LOCKS space id 11 page no 5 n bits 72 index idx_stuno of table cw****.****student trx id 2321 lock_mode X

顯示事務(wù) 2 的 insert into student(stuno,score) values(2,10) 持有了 a=5 的 Lock mode X

| LOCK_gap,不過我們從日志里面看不到事務(wù)2執(zhí)行的 delete from student where stuno=5;

這點也是造成 DBA 僅僅根據(jù)日志難以分析死鎖的問題的根本原因。

***** (2) WAITING FOR THIS LOCK TO BE GRANTED:

RECORD LOCKS space id 11 page no 5 n bits 72 index idx_stuno of table cw****.****student trx id 2321 lock_mode X locks gap before rec insert intention waiting

表示事務(wù) 2 的 insert 語句正在等待插入意向鎖 lock_mode X locks gap before rec insert intention waiting ( LOCK_X + LOCK_REC_gap )

經(jīng)典案例分析

案例一:事務(wù)并發(fā) insert 唯一鍵沖突

表結(jié)構(gòu)和數(shù)據(jù)如下所示:

 

 

測試用例如下:

 

 

日志分析如下:

1.事務(wù) T2 insert into t7(id,a) values (26,10) 語句 insert 成功,持有 a=10 的 排他行鎖( Xlocks rec but no gap )

2.事務(wù) T1 insert into t7(id,a) values (30,10), 因為T2的第一條 insert 已經(jīng)插入 a=10 的記錄,事務(wù) T1 insert a=10 則發(fā)生唯一鍵沖突,需要申請對沖突的唯一索引加上S Next-key Lock( 即 lock mode S waiting ) 這是一個間隙鎖會申請鎖住(,10],(10,20]之間的 gap 區(qū)域。

3.事務(wù) T2 insert into t7(id,a) values (40,9)該語句插入的 a=9 的值在事務(wù) T1 申請的 gap 鎖4-10之間, 故需事務(wù) T2 的第二條 insert 語句要等待事務(wù) T1 的 S-Next-key Lock 鎖釋放,在日志中顯示 lock_mode X locks gap before rec insert intention waiting 。

案例一:先 update 再 insert 的并發(fā)死鎖問題

表結(jié)構(gòu)如下,無數(shù)據(jù):

 

 

測試用例如下:

 

 

死鎖分析:

可以看到兩個事務(wù) update 不存在的記錄,先后獲得間隙鎖( gap 鎖),gap 鎖之間是兼容的所以在update環(huán)節(jié)不會阻塞。兩者都持有 gap 鎖,然后去競爭插入意向鎖。當(dāng)存在其他會話持有 gap 鎖的時候,當(dāng)前會話申請不了插入意向鎖,導(dǎo)致死鎖。

如何盡可能避免死鎖

  1. 合理的設(shè)計索引,區(qū)分度高的列放到組合索引前面,使業(yè)務(wù) SQL 盡可能通過索引定位更少的行,減少鎖競爭。
  2. 調(diào)整業(yè)務(wù)邏輯 SQL 執(zhí)行順序, 避免 update/delete 長時間持有鎖的 SQL 在事務(wù)前面。
  3. 避免大事務(wù),盡量將大事務(wù)拆成多個小事務(wù)來處理,小事務(wù)發(fā)生鎖沖突的幾率也更小。
  4. 以固定的順序訪問表和行。比如兩個更新數(shù)據(jù)的事務(wù),事務(wù) A 更新數(shù)據(jù)的順序為 1,2;事務(wù) B 更新數(shù)據(jù)的順序為 2,1。這樣更可能會造成死鎖。
  5. 在并發(fā)比較高的系統(tǒng)中,不要顯式加鎖,特別是是在事務(wù)里顯式加鎖。如 select … for update 語句,如果是在事務(wù)里(運行了 start transaction 或設(shè)置了autocommit 等于0),那么就會鎖定所查找到的記錄。
  6. 盡量按主鍵/索引去查找記錄,范圍查找增加了鎖沖突的可能性,也不要利用數(shù)據(jù)庫做一些額外額度計算工作。比如有的程序會用到 “select … where … order by rand();”這樣的語句,由于類似這樣的語句用不到索引,因此將導(dǎo)致整個表的數(shù)據(jù)都被鎖住。
  7. 優(yōu)化 SQL 和表設(shè)計,減少同時占用太多資源的情況。比如說,減少連接的表,將復(fù)雜 SQL 分解為多個簡單的 SQL。

 好了。今天就說到這了,我還會不斷分享自己的所學(xué)所想,希望我們一起走在成功的道路上!

本文轉(zhuǎn)載自微信公眾號「狼王編程」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系狼王編程公眾號。

 

責(zé)任編輯:姜華 來源: 狼王編程
相關(guān)推薦

2021-10-20 20:27:55

MySQL死鎖并發(fā)

2011-08-24 17:41:16

MySQL死鎖

2010-04-29 17:46:31

Oracle死鎖

2010-06-30 14:15:08

SQL Server死

2017-06-14 22:11:57

數(shù)據(jù)庫MySQL死鎖

2017-05-03 16:26:24

MySQL并發(fā)死鎖

2024-01-10 09:44:11

MySQL死鎖

2016-10-20 15:27:18

MySQLredo死鎖

2024-03-18 09:10:00

死鎖日志binlog

2021-03-26 10:40:16

MySQL鎖等待死鎖

2022-07-05 11:48:47

MySQL死鎖表鎖

2025-02-13 07:49:18

2023-02-08 07:04:20

死鎖面試官單元

2024-10-16 11:40:47

2020-04-14 10:20:12

MySQL數(shù)據(jù)庫死鎖

2010-05-06 13:39:28

Oracle死鎖

2025-01-20 13:20:00

MySQL數(shù)據(jù)遷移數(shù)據(jù)庫

2009-11-06 16:13:45

WCF回調(diào)

2017-06-07 16:10:24

Mysql死鎖死鎖日志

2011-03-22 16:09:33

MySQL 5.0.1亂碼
點贊
收藏

51CTO技術(shù)棧公眾號

免费看污污视频| 3d动漫啪啪精品一区二区免费| 欧美性猛交久久久乱大交小说| 国产日韩欧美一区二区东京热| 精品午夜电影| 中文一区在线播放| 99久久久久国产精品免费| 欧美日韩乱国产| 伊人久久大香线蕉综合四虎小说 | 国产www免费| 国产小视频免费在线网址| 国产精品亚洲一区二区三区妖精| 色系列之999| 水蜜桃av无码| 日本精品在线播放| 在线国产电影不卡| 日韩伦理在线免费观看| 日本在线视频网| 久久在线观看免费| 粉嫩av一区二区三区免费观看| 日本妇女毛茸茸| 国产日产精品_国产精品毛片| 天天综合色天天| 做爰高潮hd色即是空| 欧洲亚洲在线| 成人av影院在线| 亚洲a中文字幕| 中文字幕 视频一区| 国产精品亚洲产品| 久久久久久久久久国产精品| 国产又粗又猛又爽又黄的视频四季| 福利视频一区| 色综合久久久网| 日本国产中文字幕| 快射视频在线观看| 国产精品嫩草影院av蜜臀| 久久精品二区| 三级在线电影| 99久久精品久久久久久清纯| 超碰在线观看97| av中文字幕免费在线观看| 麻豆精品久久久| 国产精品视频区| 在线免费一区二区| 日日嗨av一区二区三区四区| 午夜精品久久久久久久男人的天堂| 国产精品一区二区入口九绯色| 性国裸体高清亚洲| 精品高清一区二区三区| 丰满的少妇愉情hd高清果冻传媒| 日韩精品系列| 26uuu国产电影一区二区| 国产专区一区二区| 污视频软件在线观看| 国产盗摄精品一区二区三区在线| 欧美亚洲成人精品| 日韩免费黄色片| 亚洲人成在线影院| 欧美性视频在线| 久久青青草原亚洲av无码麻豆| 91精品国产自产拍在线观看蜜 | 色综合五月婷婷| 国产成年精品| 精品美女在线播放| 插我舔内射18免费视频| 影视先锋久久| 中文字幕av一区| 婷婷久久综合网| 在线 亚洲欧美在线综合一区| 中文字幕欧美亚洲| 日本一级片免费| 午夜久久影院| 91成人在线播放| 波多野结衣不卡| 蜜桃视频一区二区| 2019国产精品视频| 亚欧在线观看视频| 国产精品丝袜一区| 国产尤物av一区二区三区| av成人 com a| 欧美性色综合网| 青娱乐精品在线| 日韩欧美在线精品| 色爱av美腿丝袜综合粉嫩av | 精品综合久久88少妇激情| 亚洲国产精彩中文乱码av| 亚洲国产无码精品| 我不卡伦不卡影院| 91精品成人久久| 911美女片黄在线观看游戏| 国产不卡在线视频| 欧美日韩免费高清| 91在线中文| 日本韩国欧美在线| 麻豆av免费看| av资源久久| 久久久亚洲天堂| 中文字幕日韩经典| 99久久er热在这里只有精品15 | 亚洲黄色a级片| 久久久久久久久久久电影| 强开小嫩苞一区二区三区网站| 最新真实国产在线视频| 亚洲午夜久久久久中文字幕久| 超碰10000| 新片速递亚洲合集欧美合集| 日韩美女视频在线| 香蕉久久久久久久| 一区二区三区四区五区在线| 成人在线中文字幕| 四虎在线免费看| 亚洲激情图片一区| 91看片在线免费观看| jizz性欧美2| 久久九九全国免费精品观看| 无码人妻一区二区三区免费| 成人性生交大片免费看中文网站| 国产精品夜夜夜一区二区三区尤| www.蜜桃av.com| 国产精品色眯眯| av免费在线播放网站| 国产精品极品| 欧美插天视频在线播放| 中文字幕乱码人妻无码久久 | 精人妻一区二区三区| 美女网站一区| 欧美一区二区三区……| 日韩专区第一页| 亚洲综合激情小说| 黄色aaaaaa| 久久性感美女视频| 国产精品久久综合av爱欲tv| 九色网友自拍视频手机在线| 天涯成人国产亚洲精品一区av| 日本888xxxx| 国产一区二区三区91| 欧洲亚洲免费在线| 毛片免费在线播放| 在线一区二区观看| 女女互磨互喷水高潮les呻吟| 欧美亚洲在线日韩| 欧美一区二区影院| 欧美孕妇性xxxⅹ精品hd| 欧美日韩亚洲高清| 亚洲蜜桃精久久久久久久久久久久| 精品美女久久| 国产精品成人一区| 日韩专区在线| 欧美一区二区美女| 久久精品一级片| av一区二区三区黑人| 毛片在线视频播放| 国产主播性色av福利精品一区| 在线精品国产成人综合| 亚洲精品国产欧美在线观看| 国产日韩欧美精品在线| 免费观看成人网| 久久中文字幕av一区二区不卡| 91超碰caoporn97人人| 亚洲av成人无码网天堂| 一本久久a久久精品亚洲| 国产黄片一区二区三区| 日韩中文字幕亚洲一区二区va在线| 波多野结衣成人在线| 性欧美高清come| 亚洲国产精品久久精品怡红院| 99热在线观看精品| 国产精品亚洲人在线观看| 国产色一区二区三区| 久久99视频| 国产日韩欧美在线观看| 午夜影院免费在线| 亚洲精品中文字| 中文字幕一区二区三区免费看| 2014亚洲片线观看视频免费| 国产福利影院在线观看| 中文字幕一区二区精品区| 国产乱码精品一区二区三区中文| 成人午夜影视| 亚洲国产va精品久久久不卡综合| 一本岛在线视频| 午夜精品免费| 日本亚洲欧洲精品| 日韩一区二区三区色| 91黑丝高跟在线| 在线观看黄色av| 欧美成人aa大片| 波多野结衣爱爱| 一区二区三区色| 免费视频91蜜桃| 高清国产一区二区| wwwwww.色| 亚洲精品一级| 综合色婷婷一区二区亚洲欧美国产| www.久久.com| 久久久久久久国产精品视频| 国产黄在线观看| 亚洲第一av网| 一级黄色免费片| 狠狠躁夜夜躁人人爽超碰91| 蜜桃av免费在线观看| 97久久精品人人爽人人爽蜜臀| 精品少妇人妻av免费久久洗澡| 中文字幕一区日韩精品| 国产精品久久久av| a天堂资源在线| 久久中文字幕在线视频| 日本一区二区三区在线观看视频| 欧美性xxxx极品高清hd直播| 天堂а√在线中文在线鲁大师| 免费观看成人av| 国产在线精品91| 午夜精品国产| 手机福利在线视频| 红桃成人av在线播放| 精品国产一区二区三区四区vr| 蜜桃麻豆av在线| 美女久久久久久久久久久| 国产天堂在线| 亚洲人成网站免费播放| 黄色片网站免费在线观看| 7777精品伊人久久久大香线蕉超级流畅 | 在线国产一区| 日韩欧美亚洲v片| 丝袜连裤袜欧美激情日韩| 国产久一道中文一区| 亚洲一区二区免费在线观看| 亚洲影院色无极综合| 日韩精品第二页| 国产男女猛烈无遮挡91| 97精品国产综合久久久动漫日韩| 久久精品视频导航| 在线免费看黄| 国产亚洲视频在线| 国产中文字幕在线看| 日韩国产精品一区| 午夜视频www| 日韩av在线免费看| 污视频网站在线播放| 亚洲福利视频网站| 亚洲 美腿 欧美 偷拍| 日韩黄色在线免费观看| 亚洲欧美日韩成人在线| 日韩精品在线视频美女| 午夜影院免费视频| 精品无码久久久久久国产| 色猫av在线| 亚洲香蕉成视频在线观看| 激情视频在线观看免费| 国产午夜精品免费一区二区三区| 精品黑人一区二区三区国语馆| 精品欧美aⅴ在线网站| 国产免费观看av| 在线国产电影不卡| 真实新婚偷拍xxxxx| 欧美另类z0zxhd电影| 国产喷水吹潮视频www| 欧美www视频| 午夜成人鲁丝片午夜精品| 亚洲奶大毛多的老太婆| 成年人在线观看网站| 色99之美女主播在线视频| 91极品在线| 国模gogo一区二区大胆私拍| 美女高潮在线观看| 国产精品久久久久久久av大片| 国产在线88av| 国产精品高潮粉嫩av| 日本久久一区| 国产成人免费电影| 奇米狠狠一区二区三区| 亚洲三级一区| 欧美欧美全黄| 任你操这里只有精品| 老司机精品视频在线| 日本r级电影在线观看| 成人av电影免费观看| 性欧美精品中出| 亚洲欧美一区二区在线观看| 国产在线观看免费av| 91国偷自产一区二区开放时间| 天堂网一区二区三区| 在线视频你懂得一区| 国产成人麻豆精品午夜在线| 亚洲美女av在线播放| 在线观看黄av| 国内精品久久久久久中文字幕| 色网在线观看| 国产成人拍精品视频午夜网站| 极品视频在线| 国产精品自拍网| 欧美男人操女人视频| 天天综合狠狠精品| 亚洲国产一区二区三区高清| 亚洲激情在线观看视频| 成人久久18免费网站麻豆 | 91成人福利| 四虎一区二区| 亚洲人成久久| 亚洲第一成肉网| 久久久精品国产免费观看同学| 醉酒壮男gay强迫野外xx| 亚洲手机成人高清视频| 日韩中文字幕在线观看视频| 日韩一区二区三区在线| 欧美18xxxxx| 欧美极品第一页| 亚洲精品第一| 日韩一区免费观看| 野花国产精品入口| 超级砰砰砰97免费观看最新一期| 国产传媒一区在线| 免费成人深夜蜜桃视频| 精品成人国产在线观看男人呻吟| 亚洲高清毛片一区二区| 日韩欧美精品三级| 欧美高清视频| 国产精品免费久久久久影院| 欧美人妖在线观看| 日b视频免费观看| 国产乱码精品一区二区三区忘忧草| xxxx国产视频| 亚洲视频免费看| 亚洲专区在线播放| 夜夜嗨av一区二区三区四区| 天堂中文最新版在线中文| 国产精品乱码视频| 亚洲五月综合| 8x8x成人免费视频| 国产精品传媒入口麻豆| 欧美成人精品网站| 亚洲一区www| yw.尤物在线精品视频| 欧美日韩成人一区二区三区| 亚洲看片一区| 波多野结衣三级在线| 亚洲小说图片| 日本a视频在线观看| 国产 欧美在线| 欧美黄色免费观看| 日韩一区二区在线观看| 麻豆网站在线| 91精品视频一区| 天天揉久久久久亚洲精品| www.se五月| 亚洲婷婷综合色高清在线| 国产又色又爽又黄又免费| 最好看的2019的中文字幕视频| 川上优的av在线一区二区| 欧美在线观看网站| 免费成人高清在线视频theav| 亚洲伊人婷婷| 久久99精品国产麻豆婷婷| 大吊一区二区三区| 91精品国产综合久久香蕉麻豆| 日本韩国精品一区二区| 热门国产精品亚洲第一区在线| 国产欧美视频在线| 男女裸体影院高潮| 成人听书哪个软件好| 亚洲天堂一区在线观看| 亚洲午夜未删减在线观看| 成人国产精选| 最近看过的日韩成人| 国产高清久久久久| 久久久久久久久久免费视频| 亚洲精品日韩丝袜精品| 99riav视频一区二区| 欧美精品久久96人妻无码| 成人午夜私人影院| 久久久久99精品成人片我成大片| 日韩欧美高清一区| 交100部在线观看| 日本欧美精品久久久| 另类中文字幕网| 国产一级在线免费观看| 亚洲日本中文字幕免费在线不卡| av美女在线观看| 蜜桃狠狠色伊人亚洲综合网站| 欧美日韩国产欧| 国产肉体xxxx裸体784大胆| 欧美曰成人黄网| 日本在线观看高清完整版| 国产一区免费| 久久精品国产久精国产爱| 国产在线观看你懂的| 在线视频免费一区二区| 视频二区欧美| 男女男精品视频站| 一区二区三区不卡视频在线观看| 91 中文字幕| 中文字幕亚洲综合久久筱田步美| 欧美momandson| 美女在线免费视频| 久久久久久久久一| 亚洲精品视频网| 国产精品久久综合av爱欲tv| 黑人一区二区| av最新在线观看| 亚洲欧美日韩网|