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

聊一聊數據庫中的鎖

數據庫 SQL Server
解決這個問題的過程中把數據庫鎖相關的學習了一下,這里把學習成果,分享給大家,希望對大家有所幫助.

背景

數據庫中有一張叫后宮佳麗的表,每天都有幾百萬新的小姐姐插到表中,光陰荏苒,夜以繼日,日久生情,時間長了,表中就有了幾十億的小姐姐數據,看到幾十億的小姐姐,每到晚上,我可愁死了,這么多小姐姐,我翻張牌呢?

辦法當然是精兵簡政,刪除那些age>18的,給年輕的小姐姐們留位置...

于是我在數據庫中添加了一個定時執行的小程序,每到周日,就自動運行如下的腳本 

  1. delete from `后宮佳麗` where age>18 

一開始還自我感覺良好,后面我就發現不對了,每到周日,這個腳本一執行就是一整天,運行的時間有點長是小事,重點是這大好周日,我再想讀這張表的數據,怎么也讀不出來了,怎是一句空虛了得,我好難啊!

[[285414]]

為什么

編不下去了,真實背景是公司中遇到的一張有海量數據表,每次一旦執行歷史數據的清理,我們的程序就因為讀不到這張表的數據,瘋狂地報錯,后面一查了解到,原來是因為定時刪除的語句設計不合理,導致數據庫中數據由行鎖(Row lock)升級為表鎖(Table lock)了😂.

解決這個問題的過程中把數據庫鎖相關的學習了一下,這里把學習成果,分享給大家,希望對大家有所幫助.

我將討論SQL Server鎖機制以及如何使用SQL Server標準動態管理視圖監視SQL Server 中的鎖,相信其他數據的鎖也大同小異,具有一定參考意義.

鋪墊知識

在我開始解釋SQL Server鎖定體系結構之前,讓我們花點時間來描述ACID(原子性,一致性,隔離性和持久性)是什么。ACID是指數據庫管理系統(DBMS)在寫入或更新資料的過程中,為保證事務(transaction)是正確可靠的,所必須具備的四個特性:原子性(atomicity,或稱不可分割性)、一致性(consistency)、隔離性(isolation,又稱獨立性)、持久性(durability)。

ACID#

原子性(Atomicity)#

一個事務(transaction)中的所有操作,或者全部完成,或者全部不完成,不會結束在中間某個環節。事務在執行過程中發生錯誤,會被回滾(Rollback)到事務開始前的狀態,就像這個事務從來沒有執行過一樣。即,事務不可分割、不可約簡。

一致性(Consistency)#

在事務開始之前和事務結束以后,數據庫的完整性沒有被破壞。這表示寫入的資料必須完全符合所有的預設約束、觸發器、級聯回滾等。

隔離性(Isolation)#

數據庫允許多個并發事務同時對其數據進行讀寫和修改的能力,隔離性可以防止多個事務并發執行時由于交叉執行而導致數據的不一致。事務隔離分為不同級別,包括未提交讀(Read uncommitted)、提交讀(read committed)、可重復讀(repeatable read)和串行化(Serializable)。

持久性(Durability)#

事務處理結束后,對數據的修改就是永久的,即便系統故障也不會丟失。

來源:維基百科 https://zh.wikipedia.org/wiki/ACID

事務 (Transaction:)#

事務是進程中最小的堆棧,不能分成更小的部分。此外,某些事務處理組可以按順序執行,但正如我們在原子性原則中所解釋的那樣,即使其中一個事務失敗,所有事務塊也將失敗。

鎖定 (Lock)#

鎖定是一種確保數據一致性的機制。SQL Server在事務啟動時鎖定對象。事務完成后,SQL Server將釋放鎖定的對象。可以根據SQL Server進程類型和隔離級別更改此鎖定模式。這些鎖定模式是:

鎖定層次結構#

SQL Server具有鎖定層次結構,用于獲取此層次結構中的鎖定對象。數據庫位于層次結構的頂部,行位于底部。下圖說明了SQL Server的鎖層次結構。

共享(S)鎖 (Shared (S) Locks)#

當需要讀取對象時,會發生此鎖定類型。這種鎖定類型不會造成太大問題。

獨占(X)鎖定 (Exclusive (X) Locks)# 

發生此鎖定類型時,會發生以防止其他事務修改或訪問鎖定對象。

更新(U)鎖 (Update (U) Locks)#

此鎖類型與獨占鎖類似,但它有一些差異。我們可以將更新操作劃分為不同的階段:讀取階段和寫入階段。在讀取階段,SQL Server不希望其他事務有權訪問此對象以進行更改,因此,SQL Server使用更新鎖。

意圖鎖定 (Intent Locks)#

當SQL Server想要在鎖定層次結構中較低的某些資源上獲取共享(S)鎖定或獨占(X)鎖定時,會發生意圖鎖定。實際上,當SQL Server獲取頁面或行上的鎖時,表中需要設置意圖鎖。

SQL Server locking

了解了這些背景知識后,我們嘗試再SQL Server找到這些鎖。SQL Server提供了許多動態管理視圖來訪問指標。要識別SQL Server鎖,我們可以使用sys.dm_tran_locks視圖。在此視圖中,我們可以找到有關當前活動鎖管理的大量信息。

在第一個示例中,我們將創建一個不包含任何索引的演示表,并嘗試更新此演示表。 

  1. CREATE TABLE TestBlock  
  2. (Id INT ,  
  3. Nm VARCHAR(100))  
  4. INSERT INTO TestBlock  
  5. values(1,'CodingSight')  
  6. In this step, we will create an open transaction and analyze the locked resources.  
  7. BEGIN TRAN  
  8. UPDATE TestBlock SET   Nm='NewValue_CodingSight' where Id=1  
  9. select @@SPID 

再獲取到了SPID后,我們來看看sys.dm_tran_lock視圖里有什么。 

  1. select * from sys.dm_tran_locks  WHERE request_session_id=74 

此視圖返回有關活動鎖資源的大量信息,但是是一些我們難以理解的一些數據。因此,我們必須將sys.dm_tran_locks join 一些其他表。 

  1. SELECT dm_tran_locks.request_session_id,  
  2.        dm_tran_locks.resource_database_id,  
  3.        DB_NAME(dm_tran_locks.resource_database_id) AS dbname,  
  4.        CASE  
  5.            WHEN resource_type = 'OBJECT'  
  6.                THEN OBJECT_NAME(dm_tran_locks.resource_associated_entity_id)  
  7.            ELSE OBJECT_NAME(partitions.OBJECT_ID)  
  8.        END AS ObjectName,  
  9.        partitions.index_id,  
  10.        indexes.name AS index_name,  
  11.        dm_tran_locks.resource_type,  
  12.        dm_tran_locks.resource_description,  
  13.        dm_tran_locks.resource_associated_entity_id,  
  14.        dm_tran_locks.request_mode,  
  15.        dm_tran_locks.request_status  
  16. FROM sys.dm_tran_locks  
  17. LEFT JOIN sys.partitions ON partitions.hobt_id = dm_tran_locks.resource_associated_entity_id  
  18. LEFT JOIN sys.indexes ON indexes.OBJECT_ID = partitions.OBJECT_ID AND indexes.index_id = partitions.index_id  
  19. WHERE resource_associated_entity_id > 0  
  20.   AND resource_database_id = DB_ID()  
  21.  and request_session_id=74  
  22. ORDER BY request_session_id, resource_associated_entity_id 

在上圖中,您可以看到鎖定的資源。SQL Server獲取該行中的獨占鎖。(RID:用于鎖定堆中單個行的行標識符)同時,SQL Server獲取頁中的獨占鎖和TestBlock表意向鎖。這意味著在SQL Server釋放鎖之前,任何其他進程都無法讀取此資源,這是SQL Server中的基本鎖定機制。

現在,我們將在測試表上填充一些合成數據。 

  1. TRUNCATE TABLE    TestBlock  
  2. DECLARE @K AS INT=0  
  3. WHILE @K <8000  
  4. BEGIN  
  5. INSERT TestBlock VALUES(@K, CAST(@K AS varchar(10)) + ' Value' )  
  6. SET @K=@K+1  
  7.  END  
  8. --After completing this step, we will run two queries and check the sys.dm_tran_locks view.  
  9. BEGIN TRAN  
  10.  UPDATE TestBlock  set Nm ='New_Value' where Id<5000 

在上面的查詢中,SQL Server獲取每一行的獨占鎖。現在,我們將運行另一個查詢。 

  1. BEGIN TRAN  
  2.  UPDATE TestBlock  set Nm ='New_Value' where Id<7000 

在上面的查詢中,SQL Server在表上創建了獨占鎖,因為SQL Server嘗試為這些將要更新的行獲取大量RID鎖,這種情況會導致數據庫引擎中的大量資源消耗,因此,SQL Server會自動將此獨占鎖定移動到鎖定層次結構中的上級對象(Table)。我們將此機制定義為Lock Escalation, 這就是我開篇所說的鎖升級,它由行鎖升級成了表鎖。

根據官方文檔的描述存在以下任一條件,則會觸發鎖定升級:

  •  單個Transact-SQL語句在單個非分區表或索引上獲取至少5,000個鎖。
  •  單個Transact-SQL語句在分區表的單個分區上獲取至少5,000個鎖,并且ALTER TABLE SET LOCK_ESCALATION選項設置為AUTO。
  •  數據庫引擎實例中的鎖數超過了內存或配置閾值。

https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms184286(v=sql.105)

如何避免鎖升級

防止鎖升級的最簡單,最安全的方法是保持事務的簡短,并減少昂貴查詢的鎖占用空間,以便不超過鎖升級閾值,有幾種方法可以實現這一目標.

將大批量操作分解為幾個較小的操作#

例如,在我開篇所說的在幾十億條數據中刪除小姐姐的數據: 

  1. delete from `后宮佳麗` where age>18 

我們可以不要這么心急,一次只刪除500個,可以顯著減少每個事務累積的鎖定數量并防止鎖定升級。例如: 

  1. SET ROWCOUNT 500  
  2. delete_more:  
  3.      delete from `后宮佳麗` where age>18  
  4. IF @@ROWCOUNT > 0 GOTO delete_more 
  5.  SET ROWCOUNT 0 

創建索引使查詢盡可能高效來減少查詢的鎖定占用空間#

如果沒有索引會造成表掃描可能會增加鎖定升級的可能性, 更可怕的是,它增加了死鎖的可能性,并且通常會對并發性和性能產生負面影響。

根據查詢條件創建合適的索引,最大化提升索引查找的效率,此優化的一個目標是使索引查找返回盡可能少的行,以最小化查詢的的成本。

如果其他SPID當前持有不兼容的表鎖,則不會發生鎖升級#

鎖定升級始總是升級成表鎖,而不會升級到頁面鎖定。如果另一個SPID持有與升級的表鎖沖突的IX(intent exclusive)鎖定,則它會獲取更細粒度的級別(行,key或頁面)鎖定,定期進行額外的升級嘗試。表級別的IX(intent exclusive)鎖定不會鎖定任何行或頁面,但它仍然與升級的S(共享)或X(獨占)TAB鎖定不兼容。

如下所示,如果有個操作始終在不到一小時內完成,您可以創建包含以下代碼的sql,并安排在操作的前執行 

  1. BEGIN TRAN  
  2. SELECT * FROM mytable (UPDLOCK, HOLDLOCK) WHERE 1=0  
  3. WAITFOR DELAY '1:00:00'  
  4. COMMIT TRAN 

此查詢在mytable上獲取并保持IX鎖定一小時,這可防止在此期間對表進行鎖定升級。

Happy Ending

好了,不說了,小姐姐們因為不想離我開又打起來了(死鎖). 

 

責任編輯:龐桂玉 來源: 碼農阿宇
相關推薦

2020-02-02 13:59:59

MySQL數據庫線程

2022-02-21 15:01:45

MySQL共享鎖獨占鎖

2020-12-11 11:11:44

原子類JavaCAS

2022-08-30 07:39:57

C++namespace隔離

2019-12-02 16:23:03

Python編程語言“垃圾”回收

2024-10-08 09:10:03

JDK通信并發

2021-01-04 08:09:07

Linux內核Watchdog

2020-07-16 14:40:23

大數據計算框架

2021-06-30 07:19:35

微服務業務MySQL

2022-11-09 08:05:15

JavaScriptsuper()

2022-03-06 20:35:41

并發串行CAP

2024-10-16 15:11:58

消息隊列系統設計

2020-09-08 06:54:29

Java Gradle語言

2023-07-06 13:56:14

微軟Skype

2017-12-26 10:19:14

大數據問題缺陷

2023-10-07 08:17:40

公平鎖非公平鎖

2018-06-07 13:17:12

契約測試單元測試API測試

2021-01-28 22:31:33

分組密碼算法

2020-05-22 08:16:07

PONGPONXG-PON

2023-09-22 17:36:37

點贊
收藏

51CTO技術棧公眾號

九色91在线| 国产黄色美女视频| 成人黄色av| 欧美一区二区网站| 男女高潮又爽又黄又无遮挡| 黄色免费在线播放| 国产一区二区三区四| 国外视频精品毛片| 永久免费观看片现看| 91夜夜蜜桃臀一区二区三区| 在线观看视频91| www成人免费| 97在线观看免费观看高清| 国产成人在线观看免费网站| 亲爱的老师9免费观看全集电视剧| 欧美精品日韩在线| 免费日韩一区二区三区| 欧美猛男gaygay网站| 免费看又黄又无码的网站| 日本三级视频在线播放| 久久综合五月天婷婷伊人| 91精品视频在线看| 日韩电影在线观看一区二区| 欧美精品国产一区二区| 色偷偷综合社区| yy1111111| 精品中文字幕一区二区三区四区| 色婷婷av一区| www在线观看免费| 老司机免费在线视频| 久久精品亚洲精品国产欧美| 国产福利一区二区三区在线观看| 一卡二卡在线观看| 久久亚洲电影| 97超级碰在线看视频免费在线看| 久久久久亚洲AV成人| 日韩国产一区二区三区| 亚洲美女中文字幕| 色综合久久五月| 亚洲国产高清在线观看| 91.麻豆视频| 成年人在线观看视频免费| а√在线中文网新版地址在线| ...xxx性欧美| 一区二区三区在线观看www| 久久99久久| 久久久精品tv| 美媛馆国产精品一区二区| 男人天堂综合网| 国产成人精品www牛牛影视| 亚洲一区二区久久久久久久| 亚洲无码精品在线观看| 免费精品99久久国产综合精品| 日韩免费在线免费观看| 91video| 日韩网站在线| 欧美又大又粗又长| 久久久久久少妇| 免费欧美日韩| 国产成人avxxxxx在线看| 欧产日产国产69| 久久久久免费| 国产精品女主播视频| 中文字幕在线日亚洲9| 日韩精品亚洲专区| 国产精品十八以下禁看| 国产精品玖玖玖| 国产高清一区日本| 国产精品免费一区二区三区| 五月婷婷丁香花| 久久久久久久久久久久久久久99 | 久久躁狠狠躁夜夜爽| 欧美一级特黄高清视频| 亚洲老妇激情| 久久男人av资源网站| 日韩三级一区二区三区| 美女国产一区| 国产精品一区二区久久| 国产剧情久久久| 懂色av一区二区三区免费观看| 精品日韩美女| 草草影院在线观看| 亚洲欧美日韩一区二区| 嫩草影院中文字幕| 亚洲性色av| 欧美久久久影院| 欧洲熟妇的性久久久久久| 西瓜成人精品人成网站| 最近日韩中文字幕中文| 亚洲色图综合区| 国产精品一卡| 91免费国产视频| 天堂中文在线观看视频| 欧美国产激情一区二区三区蜜月| 欧美性受xxxx黑人猛交88| 精精国产xxx在线视频app| 欧美色网一区二区| 又黄又爽的网站| 成人免费在线观看av| 欧美激情视频一区二区| 成人午夜精品视频| 国产成人在线视频播放| 日韩欧美精品久久| 日本动漫同人动漫在线观看| 日韩欧美在线网址| 中文字幕avav| 三级电影一区| 91精品国产99| 99在线小视频| 国产色综合一区| 国产女主播自拍| 96sao精品免费视频观看| 亚洲精品不卡在线| 久久精品黄色片| 日本午夜精品视频在线观看| 国产传媒一区| 黄a在线观看| 在线亚洲+欧美+日本专区| 少妇伦子伦精品无吗| 日韩在线第七页| 日本最新高清不卡中文字幕| 蜜桃久久一区二区三区| 亚洲色图一区二区| 在线观看的毛片| 日韩欧美黄色| 亚洲91精品在线观看| 国产绳艺sm调教室论坛| 国产精品沙发午睡系列990531| 日本不卡在线观看视频| 精品资源在线| 久久久综合免费视频| 99久久国产热无码精品免费| 亚洲国产成人私人影院tom| av免费观看网| 精品资源在线| 久久久久久久久久久91| 99国产揄拍国产精品| 国产精品狼人久久影院观看方式| 黄色一级免费大片| 九九热爱视频精品视频| 7777精品久久久久久| 手机在线不卡av| 亚洲永久免费视频| 色综合久久久无码中文字幕波多| 天天超碰亚洲| 91九色视频在线| 国产超级va在线视频| 91.麻豆视频| 欧美色图亚洲视频| 国产99久久久精品| 久久久久99精品成人片| 成人在线视频你懂的| 欧美激情亚洲综合一区| 黄色www视频| 亚洲成人你懂的| 欧美一区二区免费在线观看| 亚洲国产99| 久久久久一区二区三区| 无遮挡爽大片在线观看视频| 亚洲精品视频在线播放 | 亚洲欧美日韩精品一区二区 | 国产欧美日韩91| 日本免费在线视频| 欧美一区二区三区小说| 欧美激情一区二区视频| 成人丝袜18视频在线观看| 国产精品久久..4399| 在线看成人短视频| 国产欧美日韩中文| 91蜜桃在线视频| 欧美精品一区二区蜜臀亚洲| 日韩三级av在线| 久久精品夜夜夜夜久久| 粉色视频免费看| 欧美激情综合色综合啪啪| 国产嫩草一区二区三区在线观看| 性xxxxfreexxxxx欧美丶| 一本色道久久88精品综合| 一级黄色片在线| 午夜亚洲国产au精品一区二区| a毛片毛片av永久免费| 99精品99| 亚洲午夜精品福利| 综合激情五月婷婷| 欧美最顶级丰满的aⅴ艳星| 91在线品视觉盛宴免费| 日韩手机在线导航| 国产寡妇亲子伦一区二区三区四区| 欧美激情一区二区| 日韩大尺度视频| 日韩在线一区二区| 男人草女人视频| 亚洲宅男网av| 3d动漫啪啪精品一区二区免费 | 女人色偷偷aa久久天堂| 精品国产免费一区二区三区 | 麻豆蜜桃在线| 亚洲性猛交xxxxwww| 亚洲av无码一区二区三区dv| 色婷婷综合激情| 久久久一二三区| 国产亚洲欧美一区在线观看| 免费观看污网站| 另类专区欧美蜜桃臀第一页| 精品国产一区三区| 亚洲国产一成人久久精品| 久久青青草综合| 精品视频在线播放一区二区三区 | 99国产精品白浆在线观看免费| 国内精品久久久久久久影视简单 | 成人黄色午夜影院| 伊人成综合网站| 欧美激情一区二区三区在线视频观看| 麻豆app在线观看| 精品区一区二区| 91中文字幕在线播放| 色婷婷精品大视频在线蜜桃视频 | 欧美久久久久| 亚洲欧洲精品在线| 免费视频一区三区| 国产在线精品日韩| 亚洲国产视频二区| 国产欧美日韩中文| jizz亚洲女人高潮大叫| 18性欧美xxxⅹ性满足| 污视频网站在线免费| 日韩资源在线观看| jyzzz在线观看视频| 亚洲欧美国产精品| 天堂资源最新在线| 亚洲成人xxx| 亚洲精选一区二区三区| 91麻豆精品国产| 国产精品视频一区二区三区,| 欧美在线观看视频一区二区| av图片在线观看| 好吊成人免视频| 日韩毛片在线视频| 性欧美大战久久久久久久久| 欧美成人aaa片一区国产精品| 中文字幕一区二区三区色视频| 日本一级免费视频| 国产清纯白嫩初高生在线观看91| 丰满少妇一区二区| 久久综合久久久久88| 久久久久久久久免费看无码| 99久精品国产| 男女黄床上色视频| 久久在线免费观看| 毛片网站免费观看| 国产人成亚洲第一网站在线播放| 成人国产精品久久久网站| 国产午夜精品理论片a级大结局| wwwwxxxx国产| 欧美激情一区三区| 午夜激情福利电影| 亚洲另类在线一区| 欧美成人精品欧美一级| 亚洲制服欧美中文字幕中文字幕| 久久精品一区二区三| 亚洲一区二区精品久久av| 国产精久久久久久| 欧美色视频日本高清在线观看| 日本中文在线播放| 色呦呦国产精品| 一卡二卡三卡在线| 日韩欧美国产一二三区| 殴美一级特黄aaaaaa| 亚洲欧美精品一区二区| 中文字幕在线视频区| 久久综合网hezyo| 久草在线资源站资源站| 青草青草久热精品视频在线网站| 日韩视频网站在线观看| 成人xxxxx| 国产亚洲成av人片在线观黄桃| 久久伊人资源站| 久久一本综合| 全黄性性激高免费视频| 久久av在线| 91在线第一页| 91视频你懂的| 疯狂撞击丝袜人妻| 婷婷开心久久网| 中文字幕日本人妻久久久免费 | 水蜜桃av无码| 中文字幕精品一区| 国产在线观看免费视频今夜| 欧美性xxxx极品高清hd直播| 中文字幕网址在线| 亚洲精品在线观| av在线二区| 欧美激情一级二级| 成人av色网站| 狠狠色伊人亚洲综合网站色| 日本a级不卡| 青青草精品视频在线| 日本美女视频一区二区| 五月天丁香社区| 国产精品久久久久久亚洲毛片| 国产精品99精品无码视| 欧美理论电影在线| 欧美色视频免费| 欧美激情亚洲另类| 日韩一区二区三免费高清在线观看| 国产一区二区免费电影| 久久国产精品成人免费观看的软件| 香港三级日本三级a视频| 麻豆传媒一区二区三区| 内射中出日韩无国产剧情| 亚洲欧美日韩国产综合| 337p粉嫩色噜噜噜大肥臀| 欧美xxxx老人做受| 黄色网址视频在线观看| 国产精品国语对白| 巨人精品**| 国产女教师bbwbbwbbw| 日本人妖一区二区| 一级性生活毛片| 天天综合色天天| 午夜免费福利视频| 日韩性xxxx爱| 国产69精品久久久久9999人| 精品久久久久久综合日本| 欧美人成在线| 中文字幕第三区| 国产精品国产三级国产aⅴ无密码| a v视频在线观看| 亚洲国产毛片完整版| 福利在线导航136| 99理论电影网| 欧美阿v一级看视频| 日韩av自拍偷拍| 国产精品不卡在线观看| 五月天中文字幕| 国产亚洲精品久久久久久| 精品91久久| 欧洲亚洲一区二区三区四区五区| 一区在线视频| 天堂www中文在线资源| 亚洲最快最全在线视频| www.亚洲欧美| 久久6免费高清热精品| 综合伊人久久| 国产精品久久国产| 国产一区二区三区香蕉| 国产日韩欧美在线观看视频| 日韩三级.com| 天天色天天射天天综合网| 亚洲一区二区久久久久久| 欧美二区视频| 日韩精品视频一区二区| 天天综合色天天综合| 男女污污视频在线观看| 日韩美女免费视频| 国内黄色精品| 欧美成人乱码一二三四区免费| 国产精品美女一区二区在线观看| 一区二区自拍偷拍| www亚洲欧美| 一区二区三区自拍视频| 免费观看美女裸体网站| 久久亚洲捆绑美女| 中文字幕乱伦视频| www.亚洲男人天堂| 视频一区日韩精品| 久艹视频在线免费观看| 2024国产精品| 这里只有精品免费视频| 久久亚洲私人国产精品va| 国产精品巨作av| 日韩视频在线免费看| 亚洲欧洲精品一区二区三区| 亚洲美女性生活| 欧美一区二粉嫩精品国产一线天| 菠萝蜜一区二区| 日本在线视频播放| 精品二区三区线观看| 都市激情一区| 99国产盗摄| 肉肉av福利一精品导航| 青青操视频在线播放| 日韩激情av在线免费观看| 成人国产网站| 女人色极品影院| 国产欧美一区二区在线| 亚洲国产精品久久久久爰性色| 日韩美女视频免费看| 中文字幕午夜精品一区二区三区| 懂色av粉嫩av蜜乳av| 6080日韩午夜伦伦午夜伦| 理论片午夜视频在线观看| 宅男噜噜99国产精品观看免费| 成人av免费网站| 国产精品视频无码| 国产91在线播放九色快色| 欧美日韩精选| 美女网站视频色| 国产视频亚洲精品| 亚洲国产精品免费视频|