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

實例講解如何在DB2 UDB中正確的監控死鎖

數據庫
這篇文章通過詳細的實例闡述了如何在DB2 UDB 中監控死鎖的發生。在DB2 UDB中有兩種類型的監控器:快照監控器和事件監控器。快照顧名思義就是數據庫連續狀態下的一個切面,通過快照監控器,你可以很方便地查看當前連接的應用程序,當前等待的鎖,當前的死鎖,以及正在執行的SQL語句,同時你可以查看緩沖區,表和表空間的用法。如果保存歷史數據,并且能夠做出比較,對于分析數據庫的并發性能有很大的幫助。

之前為大家介紹了如何DB2 V8數據庫系統轉移,本文主要為大家用實例講解"如何在DB2 UDB中正確的監控死鎖".

但是我們并不能預測什么時候發生死鎖,所以如果有一個后臺程序能夠一直監控數據庫的活動,記錄下所有的死鎖事件,這對于數據庫管理員來說是非常重要的。DB2 UDB提供了事件監控器。通過不遺漏地獲得一段時間內所有的數據庫事件(在本文中只關心其中的死鎖事件),事件監控器提供了一種可以分析歷史數據(本文的重點),預測將來趨勢的可能。DB2 UDB同時提供了DB2 Performance Expert (DB2/PE) 或者類似的程序用來生成分析報表,不過這已經超出了本文的范疇。

常用術語

  鎖是控制應用程序并發的數據庫軟件機制,鎖用來防止以下情況的發生:

1. 丟失以前更新

2. 不可重復讀取

3. 訪問未提交數據

  鎖的模式包括共享鎖和排他鎖,共享鎖允許其他程序讀取已經被其他共享鎖占用的資源,所以也叫讀鎖,排他鎖意味著在釋放資源以前其他的應用程序無法訪問同一資源,所以也叫寫鎖。此外,DB2 UDB 還提供了不同的鎖級別,不同的應用程序可能會要求訪問不同范圍的數據,鎖級別有利于充分利用系統資源,提高系統性能。若一個應用程序請求一個鎖,而該鎖被另外一個應用程序所使用且不能共享,DB2 UDB 就會掛起前一個應用程序。鎖升級就是當LOCKLIST (LOCKLIST代表鎖能夠占用的內存空間) 耗盡或者一個應用程序所擁有的鎖大于MAXLOCKS*LOCKLIST的時候(MAXLOCKS 代表應用程序所擁有的鎖占所空間的百分比),DB2 UDB 就試圖把幾個行級別的鎖合并為一個表級別的鎖,從而釋放鎖空間。雖然鎖升級本身并不耗費多少時間,但是鎖住整個表通常會大大地降低并發性能。

  當應用程序處于掛起狀態超過了一段規定的時間后,DB2 UDB就會自動中止這個應用程序,同時會向SQLCA發送描述性的錯誤信息。當兩個或者更多的應用程序都持有另外一個應用程序所需資源上的鎖,沒有這些資源,那些應用程序都無法繼續完成其工作的時候,就會發生死鎖。

  在DLCHKTIME超時之后,DB2 UDB會中止發生死鎖的某個應用程序(通常為所做工作最少的那個應用程序),這會釋放這個應用程序所持有的所有的鎖,并允許別的應用程序繼續工作,DB2 UDB 將向被終止的應用程序的SQLCA發送描述性的錯誤信息。LOCKTIMEOUT 指定一個應用程序被允許的鎖等待的時間,這將避免全局的死鎖從而導致整個應用崩潰。如果LOCKTIMEOUT 的值為-1,應用程序會等待直到該鎖被釋放或者發生一個死鎖。

事件監控器

  事件監控器用來收集當一個數據庫事件發生時所關聯的應用程序的信息。這里的事件指,連接,死鎖,聲明和事務。你可以定義你想監控的事件類型的監控器。比如說,一個死鎖監控器就是用來監控死鎖的發生。

  在DB2 UDB 中存在兩種和死鎖有關的事件類型:

  DEADLOCKS

  記錄簡單的應用程序信息。

  DEADLOCKS WITH DETAILS

  記錄所有復雜的信息,包括應用程序、執行語句聲明以及死鎖的詳細信息。但是使用這種事件監控器會因為需要得到大量額外的信息而降低系統的性能。
 

如何監控死鎖

  為了詳細說明事件監控器在死鎖監控中的用途,我引入了一個簡單的死鎖場景來觸發一個死鎖,在隨后的章節,我會告訴讀者如何分析監控結果以及根據結果來避免死鎖的發生。

  這里我們需要至少三個應用程序來調用DB2 CLI,一個用來監控死鎖的發生,另外兩個用來產生死鎖。我們可以使用DB2 UDB 安裝時附帶的SAMPLE數據庫。

  1. 首先建立一個死鎖事件監控器

  Session Monitor

  db2 connect to sampledb2 "create event monitor

  dlmon for tables, deadlocks with details write

  to file 'C:\dlmon'"mkdir C:\dlmondb2 "

  set event monitor dlmon state 1"

  2. 用另外兩個應用程序來產生一個死鎖

  Session A

  db2 connect to sampledb2 +c "insert into employee values('000350', 'Truman', 'I', 'Jiang',

  'B00', '5892','1999-02-21', 'Engineer', 19, 'M',

  '1978-06-17', 60000, 2000, 6000)"

  現在應用程序A就擁有了一個EMPLOYEE表的行級別的排他鎖

  (注: +c 代表不自動提交SQL語句,DB2 中 autocommit 是缺省設置,也可以通過 db2 update command options using c off 關閉該缺省選項。)

  Session B

  db2 connect to sampledb2 +c "insert into project

  values('AD3300', 'Dead Lock Monitor', 'B00', '000350',

  7.00, '1982-07-21', '1983-02-03', 'AD3111')"

  現在應用程序B就擁有了一個PROJECT表的行級別的排他鎖

  Session A

  db2 +c "select projname from project"

  應用程序A需要PROJECT表上所有行的共享鎖,但是因為PROJECT表正在被應用程序B以排他鎖的形式獨占,這時候應用程序1就進入一個鎖等待的狀態。

  Session B

  db2 +c "select firstnme from employee"

  應用程序B也進入一個鎖等待的狀態。此時就出現了一個死鎖狀態。

  3. 兩個本身處于鎖等待并且占有資源的應用程序互相等待另外一方所持有的資源,這時候Session A和Session B就出現了死鎖狀態,這種狀態一直會延續直到死鎖檢查器(超出DLCHKTIME時間以后)檢查出一個死鎖并且回滾其中的一個事務。

  Session B

  SQLN0991N 因為死鎖或者超時,當前事務已經被回滾。原因碼為 "2". SQLSTATE=40001這時候死鎖事件監控器就會記錄這個死鎖,同時應用程序A可以完成他的工作。

  Session A

  PROJNAME----------……20 條記錄已選擇

  Session A

  db2 connect reset

  Session B

  db2 connect reset

  4. 通過 db2evmon 工具可以獲得死鎖信息的日志,并且把日志文件導入到本地機器的文件系統當中。在下面一節,我們將詳細分析導出的日志文件。

  Session Monitordb2 connect resetdb2evmon

  -path c:\dlmon > c:\dlmon\dllog1.txt

分析監控結果

  本節我們開始詳細分析上一節產生的監控結果,從監控導出的日志文件中,我們可以分析出死鎖發生的時間,級別,模式以及產生死鎖的SQL語句,從而據此來進一步地修正可能由程序并發設計或者數據庫設計所導致的缺陷。

  ---------------------------------

  EVENT LOG HEADER Event Monitor name:

  DLMON Server Product ID: SQL08022…… Server instance name: DB2

  --------------------------------------

  --------------------------------------

  Database Name: SAMPLE Database Path:

  C:\DB2\NODE0000\SQL00001\ ……------------------3)

  Deadlock Event ... Deadlock ID: 1 ……4)

  Connection Header Event ... Appl Handle: 949 ……5)

  Deadlocked Connection ... Deadlock ID:

  1 Participant no.:

  2 Participant no. holding the lock: 1 Appl Id:

  G9B56A72.HE13.01B40608320***ppl Seq number: 0001

  Appl Id of connection holding the lock:

  G9B56A72.HD13.02CE06083152 …… Deadlock detection

  time: 2006-01-06 16:34:27.327582 Table of lock waited on:

  EMPLOYEE (A鎖發生的表) Schema of lock waited on:

  JT Tablespace of lock waited on : USERSPACE1

  Type of lock: Row (A鎖級別為行鎖) Mode of lock:

  X - Exclusive (A鎖模式為排他鎖) Mode application

  requested on lock: NS - Share (and Next Key Share)

  (在A排他鎖上要求B共享鎖,發生死鎖) ……Text:

  select name from employee(產生B共享鎖的SQL語句)

  List of Locks: (當前所有鎖的列表)…… Lock Name

  : 0x020005000D0000000000000052 Lock Attributes: 0x00000008

  Release Flags : 0x40000000 Lock Count

  : 1 Hold Count : 0 Lock Object Name

  : 13 Object Type : Row Tablespace Name: USERSPACE1

  Table Schema : JT Table Name

  : PROJECT Mode : X - Exclusive

  (在PROJECT表上有一個排他鎖)…… Lock Name:

  0x02000300000000000000000054 Lock Attributes:

  0x00000000 Release Flags: 0x00000001 Lock Count

  : 1 Hold Count : 0

  Lock Object Name : 3 Object Type:

  Table Tablespace Name: USERSPACE1 Table Schema:

  JT Table Name: EMPLOYEE Mode

  : IS - Intent Share(在EMPLOYEE表上有一個共享鎖)

  Locks Held: 6 Locks in List: 6……9) Table Event...

  Table schema: JT Table name: EMPLOYEE Record

  is the result of a flush: FALSE Table type: User

  Data object pages: 1…… Rows read: 35 Rows written:

  1 …… Tablespace id: 2 Table event timestamp:

  2006-01-06 16:37:28.972501 (記錄EMPLOYEE表上發生的事件)

  我們可以分析一下dllog1.txt 文件,來準確定位死鎖發生的原因,看看5)Deadlocked Connection: 我們可以看出死鎖發生的表是EMPLOYEE,同時我們也可以判斷出這是一個對于已被排他鎖占有的資源申請共享鎖所導致的死鎖。更加重要的是我們得到了產生死鎖的SQL語句,從上面我們可以推斷出一定存在別的應用程序在以獨占鎖的方式占用EMPLOYEE表,這很有可能就是對于EMPLOYEE表的插入或者更新動作造成的。

  而這最有可能就是插入或者更新事務時間過長所導致的,導致事務時間過長的原因大體有兩種,一是來自于并發程序的設計和編寫,二是來自于數據庫的設計和數據庫參數的調整。

  本節我們通過仔細地分析事件監控器的結果來推斷出導致死鎖發生的原因,從而采取有效的措施去避免死鎖的發生。這些措施包括調整數據庫參數,或者修改應用程序的代碼,或者修改SQL語句甚至是數據庫的設計來提高代碼和SQL語句執行的效率。

  避免死鎖的方法

  越早地考慮數據庫設計中的并發性問題,就越可以提高代碼執行的效率,降低程序開發和維護的成本,這里我們提出了一些避免死鎖,提高應用程序并發性的方法。

  設置隔離級別,根據應用程序的業務邏輯和數據完整性需求來決定合適的隔離級別,包括:RR,RS,CS,UR。該決定需要對應用程序需求和相關的業務規則具有基本理解

  盡量避免鎖升級,正確調整參數LOCKLIST, MAXLOCKS

  SQL0911N返回碼68(LOCKTIMEOUT參數)的原因是鎖等待超時,而SQL0911返回碼2(DLCHKTIME參數)的原因則是因為死鎖被強制回滾,避免這兩種錯誤的方法就是合理設計數據庫和建立合理的索引

  盡快提交事務,不要在事務中加入不必要的執行時間過長的代碼,比如大的代碼循環和遠程調用,或者一些沒有用處的SELECT語句

  應用程序的框架實現保證一旦發現SQL錯誤,立刻執行回滾事務,釋放鎖。

  如果多個應用程序訪問同一資源,***以相同的次序訪問。這樣,即使前一個訪問資源的應用程序會延遲其他應用程序的訪問,也不會導致死鎖的發生

  設定外鍵索引,如果想刪除父表中的行,就需要掃描多個子表中的多行數據,這樣就需要占用多個子表的鎖,我們可以通過在外鍵上建立索引來減少掃描子表的行數,否則若不建立索引,如果從父表中刪除一行的時候,就需要掃描整個子表。

  總結

  在我門完成這個例子的實際過程中,大家可以看到不同DB2工具(DBC CLI, SQL, DB2EVMON)的使用實例,并且可以學會如何逐步地利用死鎖事件監控器來監控死鎖的發生,***我門掌握的內容是如何分析那些從死鎖監控器得來的結果,以及采用相應的措施來避免死鎖的發生。如何在DB2 UDB中正確的監控死鎖對有的人來說可能是比較難克服的一個問題,希望本篇文章能夠幫到大家解決工作中監控死鎖的問題。


【編輯推薦】

  1. 對DB2 UDB v8.1 以及其數據庫進行調優的***方案
  2. IBM DB2 UDB 在線備份與恢復***演習!
  3. 在DB2 UDB中使用SQL過程語言來操作觸發器
責任編輯:迎迎 來源: 天極網
相關推薦

2009-07-22 09:01:54

導出LOB數據DB2

2010-08-20 11:16:39

DB2 優化器

2010-09-07 16:11:19

執行DB2命令

2015-10-23 16:35:11

DB2導出LOB

2010-08-03 12:58:29

DB2游標循環

2010-08-02 16:38:39

DB2 UDB for

2010-08-20 08:52:25

DB2死鎖

2010-08-18 16:45:40

IBM DB2 Cat

2010-08-20 10:18:32

DB2自動增長主鍵

2010-08-05 15:40:07

DB2快照函數

2010-11-04 14:19:46

DB2事件監控

2023-11-26 18:31:41

Linux信號

2010-07-30 14:49:24

IBM DB2數據庫

2010-08-13 10:50:15

DB2取得當前時間

2010-08-19 13:14:17

DB2自動增長主鍵

2010-08-06 13:20:00

DB2鎖等待

2010-07-30 15:44:04

DB2數據庫

2010-08-02 14:03:49

DB2驅動類型

2010-11-03 14:05:58

DB2離線備份

2010-07-27 15:02:30

DB2驅動類型
點贊
收藏

51CTO技術棧公眾號

从欧美一区二区三区| 亚洲成人1区| 91麻豆免费看| 国产精品久久久av久久久| 天堂网中文在线观看| 91麻豆精品一二三区在线| 亚洲成年人影院| 亚洲成人自拍| 亚洲精选一区二区三区| 久久永久免费| 久久6免费高清热精品| 黄瓜视频污在线观看| 国产又粗又猛又爽又黄视频| 欧美日韩三级| 亚洲图片欧美午夜| 日本wwwwwww| 欧美日韩视频免费看| 亚洲国产另类av| 亚洲精品国产精品久久| 日本黄色一区二区三区| 久久福利视频一区二区| 国产美女av一区二区三区| 欧美国产日韩一区二区在线观看| 女人被狂躁c到高潮| 99re8精品视频在线观看| 精品久久久中文| 视频一区二区视频| 国产在线超碰| 国产成人h网站| 国产精品久久久久久五月尺| 久久国产精品波多野结衣| av在线不卡顿| 日韩av一区在线| 人妻体体内射精一区二区| 精品裸体bbb| 日韩欧美国产网站| 69sex久久精品国产麻豆| 日本a在线播放| 国产日韩精品一区二区浪潮av| 国产自产精品| 亚洲精品喷潮一区二区三区| 国产在线国偷精品产拍免费yy| 日韩美女福利视频| 91porny在线| 韩国亚洲精品| 欧美日韩国产成人在线观看| 麻豆精品国产免费| 天堂美国久久| 爱福利视频一区| av黄色免费在线观看| 全球成人免费直播| 中文字幕欧美国内| 在线观看免费黄色网址| 欧美色图激情小说| 亚洲图片在线综合| 中文天堂资源在线| 精品久久中文| 中文字幕免费国产精品| 毛片视频免费播放| 久久人人99| 久久亚洲成人精品| 少妇被躁爽到高潮无码文| 久久精品青草| 久国内精品在线| 国产一级视频在线观看| 99视频一区| 2024亚洲男人天堂| 青娱乐在线免费视频| 日韩 欧美一区二区三区| 国产精品va在线| 国产又粗又大又黄| 国产传媒欧美日韩成人| 岛国视频一区免费观看| 少妇荡乳情欲办公室456视频| 国产一区二区精品| 欧美一级淫片aaaaaaa视频| 日韩中文字幕在线观看视频| 日韩精品一二三| 国产精品中文字幕在线| 国产v在线观看| 成人久久视频在线观看| 九九热久久66| h网站在线免费观看| 亚洲三级电影网站| 日本a在线免费观看| 夜鲁夜鲁夜鲁视频在线播放| 91精品福利在线| 欧美图片激情小说| 伊人成综合网站| 欧美日本免费一区二区三区| 熟女人妻一区二区三区免费看| 欧美日韩一区二区三区在线电影| 亚洲一级一级97网| 曰本女人与公拘交酡| 国产伦理一区| 成人av.网址在线网站| 成人久久精品人妻一区二区三区| 久久精品视频一区二区| 欧美日韩一区二区三区电影| 三妻四妾的电影电视剧在线观看| 欧美午夜电影网| 性折磨bdsm欧美激情另类| 在线日本制服中文欧美| 九九热99久久久国产盗摄| 欧美黑人一区二区| 国产精品亚洲专一区二区三区| 久久精品一区二区三区不卡免费视频| 自拍视频在线| 亚洲国产精品久久艾草纯爱 | 亚洲丝袜在线观看| 日韩电影不卡一区| 欧美成人午夜激情在线| 国产91av在线播放| 成av人片一区二区| 穿情趣内衣被c到高潮视频| 牛牛精品一区二区| 日韩一区二区三区高清免费看看 | 婷婷亚洲成人| 久久国产天堂福利天堂| 一级黄色av片| av一区二区三区黑人| 美国av在线播放| 欧洲av一区二区| 日韩精品在线视频| 国产精品第九页| 国产高清久久久| 伊人狠狠色丁香综合尤物| 欧美香蕉视频| 亚洲美女福利视频网站| 日韩和一区二区| 国产成人免费在线观看不卡| 亚洲第一页在线视频| av有声小说一区二区三区| 日韩极品精品视频免费观看| 精品深夜av无码一区二区老年| 精品一区二区久久久| 日韩经典在线视频| av有声小说一区二区三区| 日韩成人在线观看| 国产成人一区二区三区影院在线| 国产精品18久久久久久久久久久久| 亚洲欧美综合一区| 不卡亚洲精品| 中文字幕在线精品| 亚洲性在线观看| 国产精品视频你懂的| 成年人在线看片| 精品产国自在拍| 国产精品久久久久久久久久小说| 黄色电影免费在线看| 在线亚洲人成电影网站色www| 波多野结衣a v在线| 蜜桃伊人久久| 亚洲免费视频一区| 999色成人| 欧美华人在线视频| 无码国产精品96久久久久| 91日韩精品一区| 乱妇乱女熟妇熟女网站| 竹菊久久久久久久| 国产精品27p| 无遮挡动作视频在线观看免费入口| 欧美日韩国产一区| 成人免费毛片东京热| 东方aⅴ免费观看久久av| 被灌满精子的波多野结衣| 久久久伦理片| 日本精品久久中文字幕佐佐木| 国产三级电影在线观看| 欧美人与禽zozo性伦| 四虎精品免费视频| www.性欧美| 黄色a级片免费| 成人精品影院| 91在线免费看片| 色戒汤唯在线观看| 综合欧美国产视频二区| 国产高潮流白浆喷水视频| 亚洲成va人在线观看| 国产精品久久久久无码av色戒| 日本美女视频一区二区| 天堂av在线中文| 婷婷精品视频| 亚洲在线www| 成人一区福利| 操人视频在线观看欧美| 天堂中文字幕在线| 一区二区三区在线观看国产| 欧美熟妇精品一区二区蜜桃视频| 免费欧美日韩| www.-级毛片线天内射视视| 日韩精品免费一区二区三区竹菊 | 日韩精品免费视频一区二区三区| 97色在线播放视频| 91xxx在线观看| 欧美精品一区二区三区高清aⅴ | 日韩福利在线| 999久久久精品一区二区| 日韩av色在线| 久久国产精品黑丝| 中文字幕欧美国内| 日韩一级片免费观看| 欧美日韩一区不卡| 五月婷婷激情网| 亚洲女爱视频在线| 一区二区三区伦理片| 国产v综合v亚洲欧| 精品999在线| 国产九九精品| 人人妻人人澡人人爽欧美一区双 | 男人草女人视频| 日韩精品不卡一区二区| 黄色一区三区| 午夜日韩影院| 成人网在线免费看| 天堂久久午夜av| 清纯唯美日韩制服另类| 国产后进白嫩翘臀在线观看视频| 日韩午夜电影av| 日本熟妇一区二区三区| 午夜在线电影亚洲一区| 中国一级片在线观看| 国产情人综合久久777777| 国产成人精品无码片区在线| 精品一区二区三区不卡| 黄色三级视频在线| 久久久噜噜噜久久狠狠50岁| av在线播放天堂| 欧美粗暴jizz性欧美20| 一本一本久久a久久精品综合妖精| 亚洲aaa级| 久久久水蜜桃| 老牛国内精品亚洲成av人片| 亚洲free性xxxx护士hd| 国产视频一区二区在线播放| 国产日韩欧美在线看| 第四色男人最爱上成人网| 欧美夜福利tv在线| 成人性生交大片免费看网站| 欧美大成色www永久网站婷| 日本电影在线观看网站| 中文字幕不卡在线视频极品| 高清福利在线观看| 国产一区二区三区丝袜| 国产九九在线| 在线国产精品播放| 69av亚洲| 日韩中文字幕在线免费观看| 免费超碰在线| 欧美裸身视频免费观看| 神马午夜伦理不卡| 欧美激情一区二区三区久久久| 欧美videosex性欧美黑吊| 欧美精品激情在线| 岛国在线视频网站| 欧美在线免费观看| 欧美色999| 国产精品色悠悠| 中文字幕日本一区| 97久久天天综合色天天综合色hd| 7777精品| 久久青青草原| 日韩av大片| 国产奶头好大揉着好爽视频| 欧美日韩理论| 尤物av无码色av无码| 久久综合图片| 玖玖爱视频在线| 国产精品99久久不卡二区| www国产视频| 国产日韩欧美在线一区| 男人晚上看的视频| 亚洲国产成人高清精品| 男人午夜免费视频| 欧美日韩国产123区| 国产a级免费视频| 日韩av在线免费播放| 高清国产福利在线观看| 成人444kkkk在线观看| 成人在线黄色电影| 国产精品网址在线| 2023国产精华国产精品| 日本高清久久一区二区三区| 91久久久精品国产| 香港三级韩国三级日本三级| 免费av网站大全久久| 97中文字幕在线观看| 久久亚洲精精品中文字幕早川悠里 | 日韩中文理论片| 国产亚av手机在线观看| 国产成人免费91av在线| 欧美影院精品| 日韩av图片| 国产精品v亚洲精品v日韩精品 | 黄色片网站在线免费观看| 欧美视频完全免费看| 免费看黄网站在线观看| 一区二区欧美在线| 免费在线国产视频| 国产精品一区久久| 欧美激情极品| 青青视频免费在线观看| 三级欧美在线一区| 亚洲色图欧美另类| 国产精品乱人伦中文| 日韩伦理在线视频| 欧美一区二区三区影视| 九九热视频在线观看| 国内精品久久久久久| 亚洲欧美在线综合| 日韩精品欧美一区二区三区| 一本久道久久久| 无码国产精品久久一区免费| 中文字幕精品一区二区精品绿巨人 | 992tv免费直播在线观看| 午夜精品久久久久久久久久久久| 先锋影音一区二区| 欧美日韩在线播放一区二区| 亚洲国产精品一区| 国产亚洲色婷婷久久| 国产精品视频看| 久久久久久亚洲av无码专区| 亚洲风情亚aⅴ在线发布| 97caopron在线视频| 国产欧美日韩精品丝袜高跟鞋| 亚洲精品亚洲人成在线观看| 丁香六月激情婷婷| 国产成人在线观看免费网站| 我要看一级黄色录像| 欧美综合色免费| 国产在线视频资源| 人人做人人澡人人爽欧美| 美国十次av导航亚洲入口| 国产一区 在线播放| 国产乱国产乱300精品| 男女男精品视频网站| 欧美最新大片在线看| 浮生影视网在线观看免费| 国产91在线视频| 男男gay无套免费视频欧美| 欧美黑人经典片免费观看| 成人精品高清在线| 日韩成人免费在线视频| 亚洲福利视频网站| 九色porny丨国产首页在线| 国产一区二区三区无遮挡| 一区在线观看| 内射中出日韩无国产剧情| 好吊成人免视频| 国模精品一区二区| 国产精品91久久久| 欧美3p视频| 亚洲人视频在线| 亚洲男同性恋视频| 亚洲精品911| 4k岛国日韩精品**专区| 最新国产精品视频| 日本美女高潮视频| 中文字幕日韩欧美一区二区三区| 91精品中文字幕| 久久国产精品久久久久| 91成人噜噜噜在线播放| 精品国产一区三区| 26uuu亚洲| 中文字幕在线2018| 久久天天躁夜夜躁狠狠躁2022| 亚洲精品高潮| 无码人妻丰满熟妇区毛片18| 国产日产欧美精品一区二区三区| 亚洲综合网av| 欧美人交a欧美精品| 西野翔中文久久精品国产| 欧美婷婷精品激情| 亚洲激情图片一区| 亚洲欧美日本在线观看| 国产精品永久免费在线| 国户精品久久久久久久久久久不卡| 水蜜桃av无码| 欧美网站一区二区| 日本欧美电影在线观看| 久久久神马电影| 国内精品伊人久久久久av一坑 | 舐め犯し波多野结衣在线观看| 欧美三级资源在线| 肉体视频在线| 日本一区二区三区www| 国产一区二区三区精品视频| 久久久精品免费看| 精品国产欧美一区二区三区成人 | 亚洲国产免费av| 国产精品亚洲成在人线| 亚洲熟妇无码av在线播放| 久久综合狠狠综合| www.久久精品.com| 国产99在线|中文| 欧美日韩国产高清| 国产免费看av| 日韩精品一区二区三区三区免费 | 中日韩视频在线观看| 美女视频久久久|