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

MySQL 核心模塊揭秘 | 鎖在內存里長什么樣?

數據庫 其他數據庫
InnoDB 的表鎖結構和行鎖結構,有一部分屬性是相同的,也有一部分屬性是專用的,所以,代碼里定義了三個結構體來描述表鎖結構和行鎖結構。

1. 共用的結構

InnoDB 的表鎖結構和行鎖結構,有一些共同屬性,也有一些不同屬性。

因為有共同屬性,表鎖結構和行鎖結構都使用結構體 lock_t 來表示鎖結構。

在 lock_t 之下,又定義了 lock_table_t、lock_rec_t 分別包含表鎖結構和行鎖結構的不同屬性。

為了更直觀的理解表鎖結構和行鎖結構,我們去掉 lock_t 的一些非核心信息之后,整理如下:

// storage/innobase/include/lock0priv.h
struct lock_t {
  trx_t *trx;
  UT_LIST_NODE_T(lock_t) trx_locks;
  dict_index_t *index;
  lock_t *hash;
  union {
    lock_table_t tab_lock;
    lock_rec_t rec_lock;
  };
  uint32_t type_mode;
};

雖然表鎖結構和行鎖結構都定義了自己的結構體,用于表示各自不同的屬性,但是 lock_t 中 index、hash 這兩個只用于行鎖結構的屬性,并沒有放入 lock_rec_t。

我們就不去追溯為什么這兩個屬性會放在 lock_t 中,而沒有放入 lock_rec_t 了。

2. type_mode

從屬性名上看,表鎖結構和行鎖結構的 type_mode 屬性存放的是鎖類型和鎖模式。

實際上,這個屬性比較復雜,它占用 4 字節,共 32 位,分為四個部分。

圖片圖片

第一部分,1 ~ 4 位,這 4 位是個整體,共同表示一個整數值,就是鎖模式。

  • 0(LOCK_IS),表級別的意向共享鎖。
  • 1(LOCK_IX),表級別的意向排他鎖。
  • 2(LOCK_S),表級別或行級別的共享鎖。
  • 3(LOCK_X),表級別或行級別的排他鎖。
  • 4(LOCK_AUTO_INC),表級別的 Auto-Inc 鎖。

鎖模式部分的 4 字節,作為一個整體使用,而沒有按位使用,這是有原因的。

按整體使用,4 字節的無符號整數最大值為 15,最多可以表示 15 種鎖模式。

按位使用,每位只能表示一種鎖模式,4 位只能表示 4 種鎖模式。

第二部分,5 ~ 8 位,按位使用,存放的是鎖類型。

  • 第 5 位標識是否為表鎖(LOCK_TABLE)。
  • 第 6 位標識是否為行鎖(LOCK_REC)。
  • 第 7 ~ 8 位,暫未使用。

第三部分,第 9 位,按位使用,存放的是鎖等待狀態(LOCK_WAIT),置為 0 表示已經獲得鎖,置為 1 表示處于鎖等待狀態。

第四部分,10 ~ 32 位,按位使用,存放的是鎖的精確模式,這部分只有行鎖和謂詞鎖會用到,表鎖不會用到。

  • 第 10 位用于標識間隙鎖(LOCK_GAP)。
  • 第 11 位用于標識普通記錄鎖(LOCK_REC_NOT_GAP)。
  • 第 12 位用于標識插入意向鎖(LOCK_INSERT_INTENTION)。
  • 第 13 位,暫未使用。
  • 第 14 ~ 15 位分別用于標識 LOCK_PREDICATE、LOCK_PRDT_PAGE,都屬于謂詞鎖。
  • 第 16 ~ 32 位,暫未使用。

看到這里,大家有沒有覺得奇怪,怎么沒有用于標識 Next-Key 的位置?

鎖模式為行鎖(LOCK_REC)時,如果 10 ~ 32 位中所有位都被設置為 0,就表示加的行鎖是 Next-Key 鎖。

3. 表鎖結構

lock_t 中,表鎖結構只使用 trx、trx_locks、type_mode 三個屬性,加上 lock_table_t 的 table、locks 屬性,就是表鎖結構的全部屬性了。

圖片圖片

MySQL 執行 DDL、DML 語句時,InnoDB 都會有對應的事務(用戶手動啟動或者 InnoDB 自動啟動)來執行這些語句對應的操作。

加鎖操作自然也是在事務中進行的,trx 屬性就是加這個表鎖的事務對象。

事務執行一條或多條 DML 語句,可能涉及多個表,也就有可能加多個表鎖。事務除了加表鎖,還有可能加行鎖,同一個事務加的一個或多個表鎖和一個或多個行鎖的鎖結構通過 trx_locks 屬性形成一個表鎖結構和行鎖結構混合的鏈表。

表鎖是加在表上的,自然就需要知道表鎖結構屬于哪個表了,table 屬性就是這個表鎖結構所屬的表對象。

同一時刻,可能有多個事務已經或者想要對同一個表加鎖。對于兼容的表鎖,多個事務可以同時加鎖,對于不兼容的表鎖,后加鎖的事務就會處于等待狀態。

事務想要對某個表加鎖,InnoDB 怎么判斷事務可以立即獲得鎖,還是要進入等待狀態?

這就是 locks 屬性的用武之地了。

多個事務對同一個表加了表鎖,這些表鎖的鎖結構會通過 locks 屬性形成一個鏈表。

事務想要對某個表加表鎖,InnoDB 就會遍歷這個鏈表。

如果鏈表中還沒有表鎖結構,或者所有鎖結構對應的表鎖都和事務當前要加的表鎖兼容,事務就可以立即獲得鎖,否則就需要進入等待狀態。

type_mode 屬性的第 5 位用于標識鎖結構是否為表鎖(LOCK_TABLE)。

對于表鎖,鎖結構中 type_mode 屬性的第 5 位會被設置為 1,第 1 ~ 4 位會寫入鎖模式對應的整數值。

如果事務不能立即獲得表鎖,type_mode 屬性的第 9 位會被設置為 1,表示處于鎖等待狀態。

4. 行鎖結構

lock_t 中,行鎖結構使用 trx、trx_locks、index、hash、type_mode 五個屬性,加上 lock_rec_t 的 page_id、n_bits 兩個屬性,外加行鎖結構最后外掛了一塊沒有屬性名的內存區域(我們暫且命名為 bitmap),就是行鎖的整體結構了。

圖片圖片

4.1 有名有姓的那些屬性

和表鎖結構一樣,行鎖結構里也有 trx 和 trx_locks 兩個屬性。

trx 屬性是加這個行鎖的事務對象。同一個事務加的一個或多個表鎖和一個或多個行鎖的鎖結構,通過 trx_locks 屬性形成一個表鎖結構和行鎖結構混合的鏈表。

主表的記錄存儲在主鍵索引中,二級索引(包括唯一索引、非唯一索引)的記錄存儲在二級索引中,行鎖都是對主鍵索引或二級索引的記錄加鎖。index 屬性就是這個行鎖結構所屬的索引對象。

InnoDB 可能同時有很多個事務在運行,這些事務加的行鎖,可能會產生多個行鎖結構。

每個行鎖結構都會根據 page_id 屬性中保存的表空間 ID、數據頁號計算得到一個哈希值。哈希值相同的多個行鎖結構通過 hash 屬性形成一個行鎖結構鏈表。

n_bits 屬性的值是個無符號整數,表示這個鎖結構能保存多少條記錄的行鎖狀態,也就是最多有多少記錄能共用這個行鎖結構。

對于行鎖,鎖結構中 type_mode 屬性的第 6 位會被設置為 1,第 1 ~ 4 位會被寫入鎖模式對應的整數值。

行鎖的不同精確模式,type_mode 屬性第四部分(10 ~ 32 位)各位的賦值情況如下:

  • 普通記錄鎖,type_mode 屬性的第 10 位會被設置為 1。
  • 間隙鎖,type_mode 屬性的第 11 位會被設置為 1。
  • 插入意向鎖,type_mode 屬性的第 12 位會被設置為 1。
  • Next-Key 鎖,type_mode 屬性的第 10 ~ 32 位都設置為 0。

如果事務不能立即獲得行鎖,type_mode 屬性的第 9 位會被設置為 1,表示處于鎖等待狀態。

4.2 隱姓埋名的內存區域

前面介紹的那些,都是 InnoDB 給取了名字的行鎖結構屬性。

還有一塊沒有名字的內存區域沒有介紹。在前面的行鎖結構圖中,我們給這塊內存區域取了個名字,為 bitmap。

bitmap 這塊內存區域是干嘛用的呢?

待我們細細說來。

我們先忽略 bitmap 內存區域的存在,假設一個事務對一條記錄加行鎖,會產生一個行鎖結構,對多條記錄加行鎖,就會產生多個行鎖結構。

又假設事務對多條記錄加的都是共享 Next-Key 鎖,并且已經獲得了鎖,巧合的是這些記錄又位于同一個數據頁,那么,這些鎖結構除了加鎖記錄不一樣,其它屬性的值都相同。

如果真這么設計行鎖結構,是不是太浪費內存空間了?

當然是了。雖然現在內存越來越便宜,但是畢竟還要花錢,也不能那么鋪張浪費。

本著勤儉節約的原則,InnoDB 把加鎖記錄不同、其它屬性值都相同的多個行鎖結構合并成一個,另外開辟一塊內存區域用于標識加鎖記錄,于是就有了我們命名為 bitmap 的內存區域。

bitmap 內存區域按位使用,每一位都用于標識事務是否對某條記錄加了行鎖。如果某一位被設置為 1,就表示事務對該位對應的記錄加了行鎖。

圖片圖片

上圖是事務對象初始化時,預先創建的一個行鎖結構的 bitmap 內存區域示意圖,大小為 256 字節,可以用于標識這個事務對 2048 條記錄加行鎖的情況。

示意圖中,第 3 位和第 5 位被設置為 1,說明事務對數據頁中序號為 0 和 4 的記錄加了行鎖。

沒有規矩不成方圓,InnoDB 不會胡亂的把多個行鎖結構合并成一個。

事務對多條記錄加行鎖,想要共用一個行鎖結構,需要同時滿足以下個條件:

  • 同一個事務對多條記錄加行鎖。
  • 這些記錄位于同一個數據頁中(也就是同一個表同一個索引的同一個數據頁)。
  • 這些行鎖的鎖模式相同,必須都是共享鎖,或者都是排他鎖。
  • 這些行鎖的精確模式相同,必須都是普通記錄鎖,或者都是間隙鎖,或者都是 Next-Key 鎖。
  • 這些行鎖都處于獲得鎖的狀態,不能處于鎖等待狀態。

4.3 共用行鎖結構的兩個問題

問題一:多個處于等待狀態的行鎖能共用一個鎖結構嗎?

理論上是可以的,但實際上不會出現這種情況。

因為共用一個行鎖結構需要滿足的條件之一,是一個事務對多條記錄加行鎖。

然而,一個事務對某條記錄加行鎖處于等待狀態,在獲得鎖或者鎖超時之前(不考慮異常情況),這個事務不會繼續往下執行。

這樣一來,一個事務在某一時刻,最多只有一個行鎖結構(對應一條記錄)處于等待狀態,也就不存在多個處于等待狀態的行鎖共用一個行鎖結構的情況了。

獲得鎖或者鎖等待超時之后,行鎖結構中 type_mode 的第 9 位就會被設置為 0,表示這個行鎖處于非等待狀態,后續在滿足共用條件的情況下,這個鎖結構才可以被共用。

問題二:多個插入意向鎖能共用一個鎖結構嗎?

同樣,理論上是可以的,但實際上不會出現這種情況。

首先,插入意向鎖的加鎖場景,是事務 T 想要在某條記錄前面的間隙插入一條記錄,而這個間隙被其它事務加了間隙鎖或者 Next-Key 鎖,導致事務 T 必須在這個間隙上加插入意向鎖,并等待其它事務釋放間隙鎖或者 Next-Key 鎖。

前面已經介紹過,處于等待狀態的行鎖結構,是不能共用的。

然后,事務 T 獲得鎖之后,它的精確模式為 LOCK_GAP + LOCK_INSERT_INTENTION,其它間隙鎖也不能共用這個鎖結構,因為間隙鎖的精確模式為 LOCK_GAP。

雖然插入意向鎖的鎖結構不能共用,會浪費一些內存,但好在加插入意向鎖的情況也不會非常多,浪費的內存也就不會太多。

5. 總結

InnoDB 的表鎖結構和行鎖結構,有一部分屬性是相同的,也有一部分屬性是專用的,所以,代碼里定義了三個結構體來描述表鎖結構和行鎖結構。

一個事務對每個表加表鎖,都會產生一個表鎖結構。

一個事務對多條記錄加行鎖,滿足條件時,多條記錄的行鎖可以共用一個行鎖結構,以節省內存。

處于等待狀態的行鎖結構,不能共用。獲得行鎖或者鎖等待超時之后,這個鎖結構會變為非等待狀態,之后滿足條件時,這個鎖結構可以被共用。

插入意向鎖的鎖結構不能共用。

責任編輯:武曉燕 來源: 愛可生開源社區
相關推薦

2024-06-05 11:49:33

2024-05-15 09:05:42

MySQL核心模塊

2024-04-03 08:20:53

MySQL核心模塊

2024-08-07 14:58:00

MySQL釋放鎖核心模塊

2024-08-28 08:50:11

MySQL核心模塊

2020-11-16 09:28:41

函數內存

2024-10-16 11:11:51

隔離InnoDB死鎖

2012-03-07 14:10:53

2024-03-27 13:33:00

MySQLInnoDB事務

2024-09-04 08:44:18

MySQL核心模塊

2015-04-08 10:40:09

2011-07-25 09:22:06

國防部操作系統Linux

2013-06-26 10:49:09

云端大腦科技技術

2011-07-26 09:32:59

操作系統

2024-10-30 10:38:08

2009-08-02 22:32:44

綜合布線系統

2025-02-26 08:26:38

2020-09-23 08:55:16

交換機配置網絡vlan

2019-05-13 15:45:29

程序員面試招聘

2013-09-24 09:52:24

點贊
收藏

51CTO技術棧公眾號

久久久久久在线观看| 国产精品日韩二区| 欧美性生给视频| 久久国际精品| 精品福利在线观看| 一区二区三区视频在线播放| 欧美性受xxxx狂喷水| 奇米777欧美一区二区| 欧美日韩国产123| 日韩人妻无码精品综合区| 国产一区二区三区免费观看在线| 亚洲电影一级黄| 亚洲精品久久区二区三区蜜桃臀 | 自由日本语亚洲人高潮| 亚洲韩国日本中文字幕| 涩涩网站在线看| 三妻四妾完整版在线观看电视剧 | 成人午夜精品在线| 国产精品美女www爽爽爽视频| 美女视频黄免费| 第一社区sis001原创亚洲| 精品久久一二三区| 麻豆三级在线观看| 欧美a级在线观看| 亚洲蜜臀av乱码久久精品蜜桃| 久久久神马电影| 亚洲精品一区二区三区不卡| 另类小说欧美激情| 欧美最顶级的aⅴ艳星| 欧美又粗又大又长| 日韩一区电影| 国产一区二区三区高清在线观看| 色婷婷精品久久二区二区密| 欧美第一在线视频| 欧美日韩一级片网站| 男人的天堂99| 欧美三级网站| 香港成人在线视频| 欧美另类videosbestsex日本| av影片在线看| 国产亚洲一本大道中文在线| 九九九九精品| 成人乱码一区二区三区| 国产精品亚洲专一区二区三区 | 国产人妻777人伦精品hd| a级网站在线播放| 亚洲视频一二三| 在线视频福利一区| av网站在线播放| 国产精品毛片久久久久久| 日韩jizzz| 国产午夜在线观看| 国产日韩欧美电影| 天天综合狠狠精品| 色的视频在线免费看| 国产精品久久久爽爽爽麻豆色哟哟| 青青草国产精品| 精品乱码一区二区三四区视频| 久久婷婷色综合| 欧美一区2区三区4区公司二百| 肉丝一区二区| 国产视频一区在线观看| 四虎一区二区| 毛片免费不卡| 一区二区视频免费在线观看| 国产 欧美 日本| 黄网av在线| 精品久久久久久| 毛片av免费在线观看| 香蕉成人av| 在线成人午夜影院| 91精产国品一二三| 男人的天堂久久| 亚洲午夜久久久影院| 极品尤物一区二区| 91精品久久久久久久久久不卡| 欧美激情成人在线视频| 日韩成人免费在线观看| 亚洲综合另类| 国产欧美精品久久久| 精品久久久久中文慕人妻| 不卡在线观看av| 欧美午夜精品理论片a级大开眼界| 国产福利小视频在线观看| 亚洲少妇30p| 亚洲中文字幕无码av永久| 免费福利视频一区二区三区| 欧美日韩国产一区二区三区地区| 日本中文字幕有码| 图片婷婷一区| 久久天天躁狠狠躁夜夜躁2014| 国产无套粉嫩白浆内谢| 久久最新视频| 91日韩久久| 免费看男男www网站入口在线 | 国产精品99久| 明星裸体视频一区二区| 三级外国片在线观看视频| 亚洲一区二区三区四区在线免费观看 | 亚洲三区在线播放| 国产精品国模大尺度视频| av在线播放天堂| 日韩一级特黄毛片| 少女频道在线观看免费播放电视剧| 亚洲图片一区二区| 动漫av免费观看| 国产精品亚洲综合在线观看| 日韩精品中文字幕在线观看| 顶级黑人搡bbw搡bbbb搡| 一本综合久久| 99热在线国产| av电影在线观看| 同产精品九九九| 日韩一区和二区| 日本熟妇人妻中出| 成人福利免费在线观看| 永久免费精品影视网站| 日本一级黄色录像| 国产精品自产自拍| 亚洲免费不卡| gogo亚洲高清大胆美女人体| 精品成人一区二区三区四区| 亚洲天堂网av在线| 日韩精品每日更新| 女人一区二区三区| 18video性欧美19sex高清| 欧美日韩精品久久久| 六月婷婷七月丁香| 99日韩精品| 国产传媒一区二区三区| av网站在线免费看推荐| 欧美美女激情18p| 丁香花五月婷婷| 另类天堂av| 精品欧美一区二区三区久久久| 色操视频在线| 日韩欧美高清一区| 一区二区视频免费看| 精品亚洲成a人| 在线视频精品一区| 成人免费91| 日韩中文字幕在线观看| 亚洲中文字幕一区二区| 国产女人aaa级久久久级| 免费在线观看毛片网站| 美女少妇全过程你懂的久久| 国产69久久精品成人| 亚洲人在线观看视频| 欧美日韩亚洲激情| 久久无码人妻精品一区二区三区| 亚洲三级影院| 精品国产第一页| 小早川怜子影音先锋在线观看| 亚洲精品国产品国语在线| xxxxx91麻豆| 亚洲日本视频在线观看| 一区二区在线免费播放| 一区二区三区免费| 韩国三级在线播放| 狠狠爱综合网| 精品一区二区三区自拍图片区| 三妻四妾完整版在线观看电视剧| 精品呦交小u女在线| 国产精品熟女视频| 国产精品久久久久桃色tv| 婷婷激情5月天| 欧美另类视频| 久久国产精品高清| 欧美日韩国产网站| 久久久999成人| 国精产品一品二品国精品69xx| 亚洲国产精品精华液网站| 亚洲国产精品无码久久久久高潮| 久久福利毛片| 亚洲精品tv久久久久久久久| 国产区一区二| 欧美一二三视频| 在线免费看av| 日韩欧美国产一区在线观看| 国产做受高潮漫动| 欧美激情一二三区| 秋霞午夜鲁丝一区二区| 国产精品腿扒开做爽爽爽挤奶网站| 日本成人黄色| 久久久91麻豆精品国产一区| 国内免费久久久久久久久久久 | 亚洲国产日韩精品在线| 潘金莲一级淫片aaaaaa播放| 亚洲色图在线视频| 99久久人妻无码中文字幕系列| 欧美96一区二区免费视频| 欧美日韩激情四射| 精品视频99| 国产精品一级久久久| 色成人免费网站| 欧美高清视频在线播放| 大片免费播放在线视频| 欧美xxxx老人做受| 亚洲精品毛片一区二区三区| 一区二区三区精品在线| 韩国三级hd中文字幕| 国产成人在线观看| 日本美女高潮视频| 亚洲国产精品第一区二区三区| 亚洲欧美日韩另类精品一区二区三区 | 疯狂撞击丝袜人妻| 26uuu国产日韩综合| 天堂av.com| 日韩成人午夜精品| 欧美国产视频一区| 欧美gay男男猛男无套| 久久99精品久久久久久久青青日本 | 国产天堂素人系列在线视频| 精品国精品自拍自在线| 国产又爽又黄免费软件| 色哟哟国产精品| 日本中文字幕免费| 亚洲精品欧美在线| 欧美性猛交xxxx乱大交少妇| 91蜜桃网址入口| 毛茸茸free性熟hd| 国产精品88av| 欧美性受xxxxxx黑人xyx性爽| 日本中文字幕一区| 久久这里只有精品23| 中文字幕免费一区二区三区| 亚欧洲精品在线视频免费观看| 亚洲婷婷丁香| 精品久久蜜桃| 国产伦乱精品| 豆国产97在线| 日韩欧美中文在线观看| 91丝袜美腿美女视频网站| 国产精品久久久久久妇女| 国产成+人+综合+亚洲欧洲 | 欧美三级蜜桃2在线观看| 日韩精品成人免费观看视频| 精品久久久久久中文字幕大豆网| 精品无码av在线| 亚洲永久精品大片| 亚洲av鲁丝一区二区三区| 亚洲视频一区在线观看| 人人澡人人澡人人看| 国产精品传媒入口麻豆| 少妇高潮在线观看| 国产精品久久二区二区| 成人一级黄色大片| 中文字幕综合网| 婷婷在线精品视频| 亚洲在线中文字幕| 亚洲精品视频在线观看免费视频| 性做久久久久久免费观看 | 在线观看国产日韩| www.av88| 91精品国产一区二区三区香蕉| 国产片在线播放| 精品美女被调教视频大全网站| 国产18精品乱码免费看| 日韩av有码在线| 青青国产在线| 在线看日韩av| www红色一片_亚洲成a人片在线观看_| 欧美成人精品在线| xxxx成人| 国产精品白嫩初高中害羞小美女 | 日韩精品乱码免费| 欧美性受xxxxxx黑人xyx性爽| 国产精品一区专区| 成人午夜精品无码区| 久久综合九色综合97婷婷| 欧美 日韩 国产 成人 在线观看 | 国产一级淫片a视频免费观看| 欧美亚洲高清一区| 国产绳艺sm调教室论坛| 亚洲成色999久久网站| 黄色毛片在线看| xxxxxxxxx欧美| av资源一区| 国产精品久久电影观看| 玖玖玖视频精品| 欧美久久电影| 亚洲精品国产首次亮相| 精品欧美一区免费观看α√| 美女任你摸久久| 稀缺小u女呦精品呦| 日本一区二区视频在线观看| 欧美卡一卡二卡三| 色综合久久久久久久久| 99在线观看免费| 亚洲男人第一av网站| www.久久ai| 国产精品久久久| 亚洲精品一区二区三区中文字幕 | 欧洲亚洲国产日韩| 精品人妻一区二区三区蜜桃| 亚洲久久久久久久久久| 超碰在线caoporn| 国产成人av在线| 黑色丝袜福利片av久久| 一区二区三区国| 国产日韩欧美一区| 91蝌蚪视频在线| 国产欧美一区二区精品秋霞影院| 麻豆chinese极品少妇| 欧美丝袜丝交足nylons图片| 色窝窝无码一区二区三区| 色七七影院综合| 在线观看欧美日韩电影| 国产精品9999久久久久仙踪林| 日韩电影在线视频| 欧美a在线视频| 福利一区福利二区| 国产午夜精品理论片| 色乱码一区二区三区88| 可以免费看毛片的网站| 久久综合88中文色鬼| 日韩网站中文字幕| 欧美日韩大片一区二区三区| 激情综合久久| 中文字幕第10页| 国产精品丝袜久久久久久app| av大全在线观看| 亚洲第一av网| 欧美24videosex性欧美| 91香蕉电影院| 午夜精品视频一区二区三区在线看| 日韩欧美精品在线观看视频| 成人99免费视频| 国产精品30p| 精品三级av在线| 在线视频国产区| 91成人免费在线观看| 天堂美国久久| 国产aⅴ爽av久久久久| 国产精品久久久久婷婷| 亚洲一级av毛片| 在线视频日本亚洲性| 日本欧美韩国| 日韩黄色影视| 喷水一区二区三区| 在线免费看视频| 欧美人伦禁忌dvd放荡欲情| 97视频精彩视频在线观看| 国产精品h片在线播放| 国产一区网站| 天天干天天操天天做| 国产精品久久久久久久久免费相片| 中文字幕 国产| www.久久久久| 亚洲毛片在线免费| 国产手机视频在线观看| 国产精品69久久久久水密桃| 青青草手机在线视频| 亚洲精品在线三区| www.综合| 秋霞毛片久久久久久久久| 日韩成人一级大片| 91高清免费观看| 日韩欧美一区在线观看| gogo久久| 欧美高清一区二区| 欧美96一区二区免费视频| 亚洲精品卡一卡二| 精品久久人人做人人爽| 性欧美又大又长又硬| 色播亚洲视频在线观看| 久久成人av少妇免费| 国内偷拍精品视频| 亚洲国产又黄又爽女人高潮的| 国产免费不卡| 亚洲免费av网| 丁香六月综合激情| 亚洲va在线观看| 精品久久久av| 久久久亚洲欧洲日产| 成人亚洲视频在线观看| 亚洲图片激情小说| 人妻中文字幕一区| 国产福利视频一区| 亚洲精品成人无限看| 黄色a一级视频| 欧美精选一区二区| 国内激情视频在线观看| 先锋在线资源一区二区三区| 国产精品一区二区三区四区| 欧美一区二区三区四| 日韩亚洲第一页| 日韩美女国产精品| 五月天开心婷婷| 色综合久久66| 亚洲精品天堂| 青青草成人网| 从欧美一区二区三区| 国产午夜无码视频在线观看| 欧美男插女视频| 成人女性视频| 国产二级一片内射视频播放| 欧美日韩一区二区三区高清| 美女搞黄视频在线观看| 中文网丁香综合网|