精品欧美一区二区三区在线观看 _久久久久国色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ù)棧公眾號

jizzzz日本| 日本一区二区三区免费看| 欧美人妻精品一区二区免费看| 日韩一区二区三区精品| 香蕉久久一区二区不卡无毒影院| 久久伊人一区| 国产裸体永久免费无遮挡| 一区二区亚洲精品| 中文字幕一区二区精品| 精人妻一区二区三区| 自拍偷自拍亚洲精品被多人伦好爽 | 九九在线高清精品视频| 欧美日本一区二区| 欧美视频在线观看视频| 91se在线| 26uuu色噜噜精品一区二区| 成人欧美一区二区三区在线| 国产成人精品片| 亚洲区综合中文字幕日日| 亚洲欧美另类自拍| 丰满人妻一区二区三区免费视频棣| 日韩精品99| 亚洲国产精品一区二区久久恐怖片 | 亚洲图区在线| 日韩欧美精品在线视频| 91日韩视频在线观看| 丁香花在线电影| 国产精品美女久久久久久久| 久久99九九| 亚洲爱情岛论坛永久| 蓝色福利精品导航| 国产成人精品av| 日本一级淫片免费放| 亚洲综合五月| 久久精品青青大伊人av| 免费观看av网站| 中文一区二区三区四区| 91精品婷婷国产综合久久| 国产精品天天av精麻传媒| 三妻四妾的电影电视剧在线观看| 亚洲精品免费在线| 欧美性受xxxx黑人猛交88| 成人精品一区| 国产亚洲精品aa| 久久久久久久久一区二区| 日本精品一区二区在线观看| 国产一区91精品张津瑜| 国产欧美日韩最新| 中文在线免费看视频| 久久精品伊人| 琪琪第一精品导航| 亚洲va在线观看| 噜噜噜在线观看免费视频日韩 | 欧美成人一二三| 国产性生活大片| 天天综合网网欲色| xxx欧美精品| www.av免费| 亚洲成人一区| 欧美大胆在线视频| 男女羞羞免费视频| 国产精品mm| 久久久久久欧美| 国产精品23p| 亚洲三级视频| 日韩av不卡电影| 精人妻无码一区二区三区| 丝袜美腿高跟呻吟高潮一区| 国产成人精品网站| 在线观看亚洲国产| 黄色日韩网站视频| 懂色av一区二区三区在线播放| 亚洲欧美另类综合| 99久久er热在这里只有精品66| 国精产品一区二区| 国产特黄在线| 成人免费一区二区三区在线观看| 亚洲区成人777777精品| av在线小说| 欧美最猛黑人xxxxx猛交| 日韩成人精品视频在线观看| 一区二区三区视频播放| 日韩成人中文字幕在线观看| 欧美 日韩 成人| 91九色精品| 久久久久久久久中文字幕| 在线观看免费av片| 久久国产精品99久久人人澡| www.久久爱.cn| 偷拍自拍在线| 欧美激情一区二区三区| 免费的av在线| 丁香高清在线观看完整电影视频 | 国产一区二区精品久| 日韩有码在线观看| 日韩欧美中文字幕一区二区| 全国精品久久少妇| www.久久久| 国产资源在线播放| 亚洲精品大片www| 无码人妻丰满熟妇区毛片18| 国产视频一区二| 亚洲天堂免费视频| 麻豆一区二区三区精品视频| 丝袜诱惑亚洲看片| 成人免费在线看片| 欧美另类极品| 欧美色视频日本版| 午夜诱惑痒痒网| 国产欧美日韩一区二区三区四区| 欧美大胆在线视频| 在线观看中文字幕av| 91免费在线视频观看| 超薄肉色丝袜足j调教99| 欧美不卡高清一区二区三区| 日韩视频一区二区三区在线播放 | 一区二区三区产品免费精品久久75| 波多野结衣乳巨码无在线| 成人午夜888| 亚洲色图50p| jizz国产免费| 国产在线国偷精品产拍免费yy| 欧美综合激情| 国产激情在线播放| 欧美v国产在线一区二区三区| 18精品爽国产三级网站| 亚洲综合好骚| 国产亚洲欧美一区二区| 91在线中字| 欧美精品乱码久久久久久按摩| 日本黄色网址大全| 一本久久知道综合久久| 国产精品久久精品国产| a级片国产精品自在拍在线播放| 欧美丝袜自拍制服另类| 法国空姐电影在线观看| 久久国产精品久久w女人spa| 精品国产综合区久久久久久| 激情av在线| 欧美刺激午夜性久久久久久久| 国产在线免费av| 青娱乐精品视频在线| 日韩精品福利视频| 日本在线精品| 日韩中文在线观看| 中文字幕自拍偷拍| 国产精品日日摸夜夜摸av| 中文字幕国产传媒| 日韩啪啪电影网| 国产日韩欧美在线看| 免费黄网站在线| 51精品秘密在线观看| www.99re6| 国内久久婷婷综合| 福利在线小视频| 电影一区二区在线观看| 91国内精品久久| 欧美色18zzzzxxxxx| 日本福利一区二区| av资源在线免费观看| 久久99久久99精品免视看婷婷| 中文字幕一区综合| 亚洲高清在线一区| 韩日精品中文字幕| 九色在线免费| 欧美日韩的一区二区| 五月天婷婷色综合| 懂色av中文一区二区三区| 毛片在线视频播放| 精品一区二区三| 成人深夜直播免费观看| 国产蜜臀一区二区打屁股调教| 亚洲精品在线免费观看视频| 狠狠人妻久久久久久| 国产日产精品一区| 少妇性l交大片7724com| 亚洲黄色天堂| 五月天亚洲综合小说网| 国产激情综合| 1769国产精品| 日韩成人影视| 亚洲国产高清高潮精品美女| 天天干,天天干| 综合久久久久久久| 欧产日产国产精品98| 日本亚洲一区二区| 国产情侣第一页| 欧美女优在线视频| 91pron在线| 美女100%一区| 欧美日韩第一页| 噜噜噜噜噜在线视频| 欧美一区二区播放| 中文字幕高清在线免费播放| 日韩一区有码在线| 国产精品久久不卡| 国产综合色产在线精品| 香港三级韩国三级日本三级| 婷婷久久国产对白刺激五月99| 国产精品视频免费观看| 99精品美女视频在线观看热舞 | 成人国产网站| 性色av一区二区咪爱| 1769在线观看| 日韩av在线一区| 精品国产伦一区二区三区| 色久优优欧美色久优优| 激情综合网五月天| 国产精品激情偷乱一区二区∴| 成人免费毛片日本片视频| 国产综合久久久久久鬼色| 久久久久久久久久久久久国产精品 | 亚洲一区二区人妻| 狠狠综合久久av一区二区小说| 小嫩苞一区二区三区| 26uuuu精品一区二区| 天天做天天干天天操| 久久亚洲综合| 熟女少妇在线视频播放| 欧美ab在线视频| 五月天久久综合网| 国产在线观看91一区二区三区| 操一操视频一区| 精品91福利视频| 国产精品日韩专区| 春暖花开亚洲一区二区三区| 热99在线视频| 密臀av在线播放| 久久久久久91香蕉国产| 最爽无遮挡行房视频在线| 中文字幕9999| 国产一二三在线观看| 亚洲精品在线视频| 四虎影视2018在线播放alocalhost| 日韩视频123| 999久久久久| 欧美疯狂性受xxxxx喷水图片| 中文字幕一区二区在线视频| 欧洲av在线精品| 中国a一片一级一片| 91福利资源站| 91porny九色| 欧美影院一区二区| 午夜精品久久久久久久蜜桃| 日本精品一级二级| 国产乡下妇女三片| 欧美三级电影精品| 91美女精品网站| 91麻豆精品国产自产在线观看一区 | 久久女人天堂| 91精品国产综合久久男男| 日本一区二区中文字幕| 91日本在线视频| 国产一精品一av一免费爽爽| 亚洲综合色av| 国产欧美三级电影| 欧美日韩亚洲综合一区二区三区| 亚洲7777| 亚洲国产欧美日韩在线观看第一区 | 欧美日韩综合一区二区三区| 福利精品视频在线| 亚洲av中文无码乱人伦在线视色| 色综合天天综合网天天看片| 无码无套少妇毛多18pxxxx| 欧美性xxxxxxxx| 一级黄色小视频| 国产在线拍揄自揄拍视频| 欧美日韩在线精品一区二区三区激情| 波多野结衣一二区| 欧美日韩国产成人在线免费| 国产欧美综合视频| 精品国产麻豆免费人成网站| 天堂中文网在线| 日韩精品在线观看网站| 国产高清免费在线播放| xxx一区二区| 爱福利在线视频| 秋霞成人午夜鲁丝一区二区三区| 国产成人久久精品麻豆二区| 亚洲影影院av| 日韩电影在线观看完整免费观看| 日本婷婷久久久久久久久一区二区| 日韩精品免费| 欧美人成在线观看| 日韩电影在线一区二区三区| 手机在线观看日韩av| 91网上在线视频| 一级免费黄色录像| 亚洲最大成人综合| 懂色av中文字幕| 日韩欧美卡一卡二| 国产黄在线看| 高清欧美电影在线| 精品网站在线| 国产精品一区免费观看| 波多野结衣一区| 特级西西444| 日韩高清在线不卡| 香蕉在线观看视频| 中文字幕不卡一区| 日本视频免费在线| 欧美一区二区三区免费| 欧美高清电影在线| 久久999免费视频| 精品欧美日韩精品| 国产综合av一区二区三区| 久久久久久免费视频| 青青草原av在线播放| 国产麻豆精品theporn| 第一次破处视频| 性久久久久久久久久久久| 91国内精品视频| 亚洲情综合五月天| av免费在线视| 51成人做爰www免费看网站| 欧美色就是色| 成人在线免费在线观看| 成人听书哪个软件好| 熟女少妇a性色生活片毛片| 色婷婷综合久久久久中文一区二区 | 日韩一级完整毛片| 3d成人动漫在线| 日韩美女写真福利在线观看| 福利片在线一区二区| 精品一区二区成人免费视频| 日韩在线一区二区三区| 尤物网站在线观看| 亚洲国产另类av| 亚洲av无码专区在线| 欧美精品一区二区免费| 欧美激情不卡| 亚洲国产日韩欧美| 人人狠狠综合久久亚洲| 欧美激情aaa| 色一情一伦一子一伦一区| 天堂网在线观看视频| 孩xxxx性bbbb欧美| 日韩三级不卡| 日韩一级免费看| 国产精品2024| 欧美成人一二三区| 日韩欧美在线不卡| 色婷婷视频在线观看| 91成人免费观看| 欧美精品日本| 中文字幕永久免费| 亚洲午夜电影在线| 成人毛片视频免费看| 久久久久久久久亚洲| 色爱综合av| 99久久久无码国产精品6| 久久久久久免费| 91丨九色丨海角社区| 中文字幕日韩在线观看| 香蕉久久一区| 亚洲色图都市激情| 国产不卡一区视频| 国产女同在线观看| 亚洲精品一区久久久久久| 78精品国产综合久久香蕉| 四虎永久国产精品| 韩国一区二区在线观看| 欧美精品色哟哟| 国产视频欧美视频| 中文字幕系列一区| 亚洲第一页在线视频| 国产不卡视频在线观看| 在线观看日韩中文字幕| 在线观看欧美日韩| 二区三区精品| 九一国产精品视频| 久久九九国产精品| 91欧美日韩麻豆精品| 国语自产在线不卡| 日产午夜精品一线二线三线| 佐山爱在线视频| 精品久久久久久亚洲国产300| 黄视频在线播放| 亚洲精品日产aⅴ| 国产欧美一区二区三区国产幕精品| 白丝女仆被免费网站| 欧美一区二区三区爱爱| 午夜不卡影院| 三级网在线观看| 91蜜桃传媒精品久久久一区二区| 中文在线资源天堂| 久久久伊人日本| jizzjizz欧美69巨大| 精品人妻二区中文字幕| 在线观看亚洲精品视频| 色女人在线视频| 日本精品一区二区三区视频| 国产精品一区二区久久精品爱涩| 国产无人区码熟妇毛片多| www.久久久久| 欧美激情15p| 亚洲天堂伊人网| 91久久免费观看| 蜜桃成人365av| 亚洲午夜精品一区二区三区|