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

淺談SQL Server對于內存的管理

數據庫 SQL Server
理解SQL Server對于內存的管理是對于SQL Server問題處理和性能調優的基本,本篇文章講述SQL Server對于內存管理的內存原理。

簡介

理解SQL Server對于內存的管理是對于SQL Server問題處理和性能調優的基本,本篇文章講述SQL Server對于內存管理的內存原理。

二級存儲(secondary storage)

對于計算機來說,存儲體系是分層級的。離CPU越近的地方速度愉快,但容量越小(如圖1所示)。比如:傳統的計算機存儲體系結構離CPU由近到遠依次是:CPU內的寄存器,一級緩存,二級緩存,內存,硬盤。但同時離CPU越遠的存儲系統都會比之前的存儲系統大一個數量級。比如硬盤通常要比同時代的內存大一個數量級。

0
圖1.計算機存儲體系

因此對于SQL Server來說,正常的生產系統所配置的內存通常不能裝載所有數據,因此會涉及到二級存儲,也就是磁盤。磁盤作為現代計算機系統中***的機械存儲部件,讀取數據需要移動磁頭(具體關于磁盤的原理,可以看我之前寫的一篇文章),并且由于數據庫所訪問的數據往往是隨機分布在磁盤的各個位置,因此如果頻繁的讀取磁盤需要頻繁的移動磁頭,這個性能將會十分底下。

由計算機體存儲體系結構可以知道,計算機對于所有硬盤內數據的操作都需要首先讀取到內存,因此利用好內存的緩沖區而減少對磁盤IO的訪問將會是提升SQL Server性能的關鍵,這也是本篇文章寫作的出發點之一。

SQL Server引擎,一個自我調整的引擎

由于SQL Server過去一直面向是中小型企業市場的原因,SQL Server存儲引擎被設計成一個不需要太多配置就能使用的產品,從而減少了部署成本,但這也是很多人一直詬病的微軟開放的配置過少。而對于SQL Server如何使用內存,幾乎沒有直接可以配置的空間,僅僅開放的配置只有是否使用AWE,以及實例占用的***或最小內存,如圖2所示。

01
圖2.SQL Server可控控制內存的選項

而對于具體的SQL Server如何使用內存,例如分配給執行計劃緩存多少,分配給數據buffer多少,這些都無法通過配置進行調控。這也是很多其它技術的開發人員對于使用微軟技術的開發人員充滿優越感的原因,而在我看來,雖然SQL Server提供可控配置的地方很少,但是很多地方都可以在通曉原理的情況下進行“間接”的配置。這也需要了解一些Windows的原理。

SQL Server是如何使用內存的

SQL Server存儲引擎本身是一個Windows下的進程,所以SQL Server使用內存和其它Windows進程一樣,都需要向Windows申請內存。從Windows申請到內存之后,SQL Server使用內存粗略可以分為兩部分:緩沖池內存(數據頁和空閑頁),非緩沖內存(線程,DLL,鏈接服務器等)。而緩沖池內存占據了SQL Server的大部分內存使用。緩沖池所占內存也就是圖2***最小內存所設置的,因此sqlservr.exe所占的內存有可能會大于圖2中所設置的***內存。

還有一點是,SQL Server使用內存的特點是:有多少用多少,并且用了以后不釋放(除非收到Windows內存壓力的通知)。比如我所在公司的開發服務器,在幾乎沒有負載的時候來看內存使用,如圖3所示。

1
圖3.SQL Server 進程的內存使用

 

可以看到CPU在0負載的時候,內存卻占據了13個G。這其實是在之前的使用SQL Server向Windows申請的內存一直沒有釋放所致。

具體SQL Server能夠使用多少內存是由以下幾個因素決定的:

  1. 物理內存的大小
  2. 所安裝Windows版本對于內存的限制(比如windows server 2008標準版限制***內存只能使用32GB)
  3. SQL Server是32位或64位
  4. 如圖2所示配置SQL Server對于內存的使用量
  5. SQL Server的版本(比如express版只能用1G內存)

#p#

SQL Server OS的三層內存分配

SQL Server OS對于內存的分配分為三個層級,依賴關系如圖4所示。

 2
圖4.SQL Server OS內存依賴關系

Memory Node

首先***層的是Memory Node,Memory Node的作用是使得分配內存由Windows移交到SQL Server OS層面執行。每個SQL Server實例通常都只擁有一個Memory Node,Memory Node的多寡只取決于NUMA構架的硬件配置。我們通過 DBCC MEMORYSTATUS  可以看到Memory Node的一些信息,如圖5所示。

    5
圖5.查看Memory Node信息

我們可以看出 ,按照申請內存大小分類,可以分為兩部分

1.申請小于等于8KB為一個單位的內存,這些內存被用于緩存。(圖5中的SinglePage Allocator)

2.申請大于8KB為一個單位的內存,這些內存稱為Multi-Page(或MemToLeave)(圖5中的MultiPage Allocator)

對于為什么叫MemToLeave,被稱為MemToLeave的原因是由于SQL Server雖然大部分內存被用于緩沖區,但還需要一些連續的內存用于SQL CLR,linked server,backup buffer等操作,32位SQL Server在啟動實例時會保留一部分連續的虛擬地址(VAS)用于進行MultiPage Allocator。具體保留多少可以用如下公式計算:

保留地址=((CPU核數量-4)+256)*0.5MB+256MB,通常在384MB左右。

Memory Clerk

讓我們再來看Memory Clerk,Memory Clerk用于分配內存,用于將Allocate出去的內存進行分類,可以簡單的進行如下語句,如圖6所示.

6
圖6.按照Memory Clerk的類別進行分類

注意:由圖4可以看到,Memory Clerk只是分配內存的一部分,另一部分是數據緩存(Buffer Pool)

Buffer Pool

在開始講述Buffer Pool之前,首先想講一下虛擬內存。

在Windows中每個進程都有一個虛擬內存(Virtual Address Space  VAS),32位系統是2的32次方,也就是4G,這4G被Windows劃為兩部分,一部分是Windows使用,另一部分才是應用程序使用。虛擬內存并不是實際的物理內存,而是對于物理內存的映射,當物理內存不存在虛擬內存指向的內容時,產生缺頁中斷,將一部分頁面置換出內存,然后將需要的部分從硬盤讀到內存,關于這塊,可以讀我之前寫的一篇文章:淺談操作系統對內存的管理

因此Buffer Pool的作用時緩沖數據頁,使得未來讀取數據時減少對磁盤的訪問。

這個Buffer Pool這部分就是圖2中設置***最小服務器內存所占用的空間。這個最小值并不意味著SQL Server啟動時就能占用這么多內存,而是SQL Server Buffer Pool的使用一旦超過這個值,就不會再進行釋放了。

在DBCC MEMORYSTATUS 其中有一部分我們可以看到Buffer Pool的信息,如圖7所示。

7
圖7.Buffer Pool的相關信息

在SQL Server實例啟動時,Buffer Pool所保留的VAS地址空間取決于多個因素:包括實際的物理內存和SQL Server是32位或是64位(這個限制32位是4G,還要劃一半給Windows和減去MemToLeave空間),而對于實際上SQL Server所使用的物理內存,可以通過如下語句查看,如圖8所示。

8
圖8.查看Buffer Pool所使用物理內存

Buffer Pool會按照需要不斷的提出內存申請。Buffer Pool如果需要,Buffer Pool會不斷消耗內存,直到Windows通知SQL Server內存過低時,Buffer Pool才有可能釋放內存,否則Buffer Pool占據了內存不會釋放。

另外值得注意的一點是,Buffer Pool所分配的頁面和SQL Server OS頁面大小是一致的,也就是8192字節,當SQL Server其它部分需要向”Buffer Pool”借內存時,也只能按照8k為單位借,并且這部分內存在物理內存中是不連續的,這聽上去像是Buffer Pool內存管理自成體系[[91120]],可以這么理解,因為Buffer Pool 不使用任何SQL Server的page allocator,而直接使用virtual或AWE SQLOS's的接口。

所以SQL Server所占用的內存可以用這個公式粗略估算出來: buffer pool占用的內存+從buffer pool借的頁占得內存+multiPageAllocator分配的非buffer pool內存,如圖9所示。

9
圖9.可以近似的估算出sql server所占的內存

Memory Object

menory object本質上是一個堆,由Page Allocator進行分配,可以通過sys.dm_os_memory_objects這個DMV進行查看,這個DMV可以看到有一列 Page_Allocator_Address列,這列就是Memory Clerk的標識,表明這個Memory Object是由哪個Memory Clerk進行分配的。

#p#

32位SQL Server的內存瓶頸

由文章前面所述的一些基本原理可以看出,由于32位的SQL Server使用的是VAS進行地址分配,因此尋址空間被限制在4GB,這4GB還要有一半分給Windows,使得Buffer Pool最多只能用到2G的內存,這使得32位SQL Server即使有多余的物理內存,也無法使用。

解決辦法之一是通過減少Windows默認占用的2G到1G,使得SQL Server可以使用的內存變為3G。這個可以通過在Windows Server 2008中的命令行鍵入 BCDEdit /set設置increaseuserva選項,設置值為3072MB,對于Windows Server 2003來說,需要在boot.ini中加上/3gb啟動參數。

另一種辦法是使用AWE(Address Window Extension)分配內存。AWE通過計算機物理地址擴展(Physical Address Extension PAE),增加4位,使得32位的CPU尋址范圍增加到2的36次方,也就是64GB。基本解決了尋址范圍不夠的問題。

VirtualAlloc和AllocateUserPhysicalPages

VirtualAlloc 和AllocateUserPhysicalPages是SQL Server向Windows申請內存所使用的方法。在默認情況下,SQL Server所需要的所有內存都會使用VirtualAlloc去Windows申請內存,這種申請是操作系統層面的,也就是直接對應的虛擬內存。這導致一個問題,所有通過VirtualAlloc分配的內存都可以在Windows面臨內存壓力時被置換到虛擬內存中。這會造成IO占用問題。

而使用AllocateUserPhysicalPages所申請的內存,直接和更底層的頁表(Page Table)進行匹配,因此使用這個方法申請的內存不會被置換出內存。在32位SQL Server的情況下,通過開啟AWE分配內存,buffer pool中的data cache部分將會使用這個函數,而MemToLeave部分和Buffer Pool中的另一部分內存(主要是執行計劃緩存)依然通過VirtualAlloc進行內存分配。

因此在開啟通過AWE分配內存之前,SQL Server首先需要對應的權限,否則就會在日志中報錯,如圖10所示。

10
圖10.開啟AWE卻沒有開啟對應權限報錯

我們可以在組策略里設置啟動SQL Server的賬戶擁有這個權限,如圖11所示。

11
圖11.鎖定內存頁(Lock Page In Memory)

64位SQL Server的問題

64位Windows基本已經不存在上述的內存問題,但是依然要注意,在默認情況下,64位的SQL Server使用的依然是VirtualAlloc 進行內存分配,這意味著所有分配的內存都會在Windows面臨壓力時將頁置換出去,這很可能造成抖動(Buffer Pool Churn),這種情況也就是SQL Server Buffer Pool中的頁不斷的被交換進硬盤,造成大量的IO占用(可以通過sys.dm_exec_query_memory_grants這個DMV查看等待內存的查詢),因此64位SQL Server將Buffer Pool中的Date Page通過AllocateUserPhysicalPages來進行內存分配就能避免這個問題。與32位SQL Server不同的是,64位SQL Server并不需要開啟AWE,只需開啟如圖11所示的“Lock Page In Memory”就行了。

但這又暴漏出了另一個問題,因為SQL Server鎖定了內存頁,當Windows內存告急時,SQL Server就不能對Windows的內存告急做出響應(當然了Buffer Pool中的非data cache和MemToLeave部分依然可以,但往往不夠,因為這部分內存相比Data Cache消耗很小),因為SQL Server的特性是內存有多少用多少,因此很有可能在無法做出對Windows低內存的響應時造成Windows的不穩定甚至崩潰。因此開啟了”Lock Page In Memory”之后,要限制SQL Server Buffer Pool的內存使用,前面圖2中已經說了,這里就不再細說了。

還有一個問題是當Buffer Pool通過AllocateUserPhysicalPages分配內存時,我們在任務管理器中看到的sqlservr.exe占用的內存就僅僅包含 Buffer Pool中非Data Cache部分和MemToLeave部分,而不包含Data Cache部分,因此看起來有可能造成sqlservr.exe只占用了幾百兆內存而內存的使用是幾十G。這時我們就需要在Perfmon.exe中查看 SQL Server:Memory Manager\Total Server Memory計數器去找到SQL Server真實占用的內存。

總結

本文講述了SQL Server對內存管理的基本原理和SQL Server對內存使用所分的部分,對于SQL Server性能調優來說,理解內存的使用是非常關鍵的一部分,很多IO問題都有可能是內存所引起的。

原文鏈接:http://www.cnblogs.com/CareySon/archive/2012/08/16/HowSQLServerManageMemory.html

責任編輯:林師授 來源: 博客園
相關推薦

2010-07-23 10:36:43

SQL Server內

2010-07-19 14:17:47

SQL Server內

2010-07-07 09:02:30

SQL Server內

2011-06-28 15:37:34

Qt 內存

2010-07-07 17:56:21

2010-06-29 17:17:44

SQL Server鎖

2010-11-08 10:07:23

SQL Server內

2011-02-22 14:47:52

SQL Server資

2011-02-28 08:57:10

SQL Server資內存性能調優

2010-07-22 16:02:29

2013-09-29 15:11:46

Linux運維內存管理

2020-04-08 09:20:25

Linux內存系統

2009-04-17 13:27:43

SQL Server遠程備份鏡像

2012-04-16 09:55:38

SQL Server

2009-04-07 13:56:03

SQL Server觸發器實例

2009-06-22 10:22:57

SQL Server

2018-12-26 16:30:09

SQL Server內部運行機制數據庫

2011-03-21 13:44:38

SQL ServerSQL Server2分頁

2009-07-09 09:47:26

Sun JVM

2009-07-23 13:37:45

JDBC連接SQL S
點贊
收藏

51CTO技術棧公眾號

精品国产av一区二区三区| 亚洲精品在线视频免费观看| 国产在线视频福利| 美日韩一区二区三区| 久久成年人免费电影| fc2成人免费视频| 电影一区电影二区| 亚洲欧美韩国综合色| 国产综合18久久久久久| 中文字幕在线播放av| 欧美欧美天天天天操| 亚洲欧美www| 九九九九九国产| 日本黄色免费在线| 亚洲三级电影网站| 欧美日韩高清在线一区| av一级黄色片| 秋霞午夜av一区二区三区| 欧美国产第一页| 黄色av免费播放| 久久丝袜视频| 欧美一区二区久久| 亚洲精品高清无码视频| а_天堂中文在线| 成人免费在线播放视频| 鲁丝一区二区三区免费| 亚洲av综合色区无码一二三区| 久久香蕉精品| 51色欧美片视频在线观看| 污污的视频在线免费观看| 最近国产精品视频| 亚洲国产天堂久久国产91| 国产美女视频免费看| 欧美日韩123区| 午夜国产不卡在线观看视频| 天堂av在线中文| 五月婷婷在线视频| 欧美高清在线一区二区| 久久精品国产精品青草色艺 | 午夜在线视频观看日韩17c| 欧美美女15p| 免费精品在线视频| 999国产精品永久免费视频app| 国产视频精品va久久久久久| 亚洲综合自拍网| 欧美freesex8一10精品| 亚洲а∨天堂久久精品9966| www.欧美com| 天堂va欧美ⅴa亚洲va一国产| 欧美军同video69gay| 久热精品在线播放| 欧美91在线|欧美| 欧美久久久久久久久中文字幕| 日韩一级片播放| 激情亚洲影院在线观看| 欧美视频专区一二在线观看| 久久久999免费视频| a天堂资源在线| 亚洲国产精品久久久久婷婷884| 黄色片免费在线观看视频| 在线观看电影av| 一区二区免费看| 日韩伦理在线免费观看| 国产高清中文字幕在线| 一区二区三区**美女毛片| 成人区一区二区| 国产精品69xx| 欧美香蕉大胸在线视频观看| 国产xxxx振车| 成人一级福利| 在线观看视频一区二区| mm131国产精品| 美女日韩一区| 亚洲精品国产精品国产自| 欧洲一级黄色片| 欧美日韩国产传媒| 日韩三级影视基地| 欧美日韩免费一区二区| 亚洲人成人一区二区三区| 欧美一级高清免费播放| 中文字幕人妻一区二区在线视频| 精品在线你懂的| 国产精品乱码一区二区三区| 香蕉视频免费在线看| 久久九九久精品国产免费直播| 亚洲乱码一区二区三区| 中文字幕有码在线观看| 午夜精品一区二区三区三上悠亚| 啊啊啊一区二区| 成人四虎影院| 日韩精品专区在线| 自拍偷拍中文字幕| 久久精品国产大片免费观看| 欧美精品情趣视频| 韩国av中文字幕| 久久91精品国产91久久小草| 国产精品久久久久久久久久直播 | 4444在线观看| 少妇视频在线观看| 7777精品伊人久久久大香线蕉完整版 | 91精品国产丝袜白色高跟鞋| 天堂www中文在线资源| 国产欧美日韩在线一区二区| 成人444kkkk在线观看| 日韩精品视频免费看| 久久福利资源站| 国内精品国语自产拍在线观看| 岛国大片在线观看| 亚洲一区欧美一区| www.com操| 国产图片一区| 久久久av免费| 国产一区二区视频免费| 国产福利91精品一区二区三区| 欧美国产视频在线观看| 影音先锋男人在线资源| 在线看日本不卡| 超碰caoprom| 围产精品久久久久久久| 欧洲中文字幕国产精品| 亚洲黄色在线免费观看| 国产精品麻豆一区二区| 18禁男女爽爽爽午夜网站免费| 亚洲影视资源| 亚洲欧美一区二区精品久久久| 91porn在线视频| 强制捆绑调教一区二区| 九色91视频| 性国产高清在线观看| 欧美三级日韩在线| 欧亚乱熟女一区二区在线 | 免费日韩在线观看| 欧美黄页在线免费观看| 亚洲视频999| 成人午夜视频精品一区| 国产suv一区二区三区88区| 亚洲一区二区高清视频| 欧美日韩电影免费看| 日韩高清免费在线| 久久精品视频国产| 国产精品综合二区| 视频一区二区视频| 久久精品97| 在线观看日韩www视频免费| 国产精品第5页| proumb性欧美在线观看| 男人天堂手机在线视频| 涩涩屋成人免费视频软件 | www.超碰在线| 亚洲电影在线看| 国产在线观看免费av| 国产成人精品影视| 国产91在线亚洲| 中文字幕一区二区三区四区久久 | 大菠萝精品导航| 亚洲国产精品久久久久秋霞不卡 | 欧美久久影院| 成人做爰66片免费看网站| 五月婷婷视频在线观看| 日韩精品中文字幕在线不卡尤物 | 黄色91在线观看| 中文字幕三级电影| 一本一本久久| 欧美精品尤物在线| 国产成人精品亚洲日本在线观看| 亚洲欧洲自拍偷拍| 日韩精选在线观看| 国产精品国产自产拍高清av王其| 亚洲 国产 图片| 欧美日韩理论| 激情伦成人综合小说| 小视频免费在线观看| 一区二区三区久久精品| 在线免费看av的网站| 亚洲欧洲综合另类| 无码人妻一区二区三区精品视频| 亚洲黄色一区| 欧美婷婷久久| 日韩专区视频网站| 久久久久久久久久久久久久久久久久av| 日本xxxxwww| 色88888久久久久久影院按摩| 亚洲午夜精品久久久久久高潮| 久久成人免费网| 中文精品无码中文字幕无码专区| 欧美成人基地| 国产精品久久久久久久久男| 成人日日夜夜| 亚洲精品色婷婷福利天堂| 一区二区视频播放| 亚洲va韩国va欧美va| a级片在线观看| 国产剧情一区在线| 亚洲中文字幕无码中文字| 人人狠狠综合久久亚洲婷婷| 99热99热| 亚洲a∨精品一区二区三区导航| 久久天天躁狠狠躁夜夜躁2014| 日本精品一区二区在线观看| 欧美日韩一级视频| 日韩av无码中文字幕| 国产精品午夜免费| 一级欧美一级日韩片| 精品伊人久久久久7777人| 青青青免费在线| 亚洲经典一区| 日本中文不卡| 51vv免费精品视频一区二区| 国产精品视频白浆免费视频| 黄页在线观看免费| 日韩中文综合网| 亚洲欧美日韩免费| 日韩一区二区三区av| 天天爱天天做天天爽| 亚洲一区电影777| 亚洲天堂精品一区| 91原创在线视频| 久久国产免费视频| 精品一区二区在线看| 欧美黄色免费影院| 亚洲国产二区| 中文字幕av久久| 日韩理论片av| 免费99视频| 狠狠一区二区三区| 97伦理在线四区| 亚洲人体在线| 国产精品久久久久久久app| 高潮在线视频| 欧美丰满老妇厨房牲生活| 成人在线视频亚洲| 久久精品国产亚洲精品| h视频在线免费| 亚洲美女久久久| 天堂中文在线观看视频| 精品国产免费久久| 精品久久在线观看| 制服.丝袜.亚洲.另类.中文 | 97超碰免费在线| 欧美理论片在线观看| 菠萝蜜视频国产在线播放| 色妞色视频一区二区三区四区| 国产黄色在线| 国产午夜精品全部视频在线播放| 无码精品人妻一区二区三区影院| 欧美tk—视频vk| 亚洲AV无码国产精品午夜字幕| 69久久99精品久久久久婷婷| 国产女同91疯狂高潮互磨| 欧美人动与zoxxxx乱| 一女二男一黄一片| 欧美人与z0zoxxxx视频| 国产精选久久久| 555www色欧美视频| 国产日本精品视频| 8v天堂国产在线一区二区| 99精品视频免费看| 欧美mv日韩mv国产| 人人妻人人澡人人爽人人欧美一区 | 欧美精品激情在线| 2020日本在线视频中文字幕| 欧美激情奇米色| 狂野欧美性猛交xxxxx视频| 欧美极品美女视频网站在线观看免费 | 欧美成人免费全部| 牛牛精品视频在线| 久久免费国产视频| 成人软件在线观看| 国产日韩在线看| 911精品国产| 久久精品ww人人做人人爽| 欧州一区二区| 中文字幕黄色大片| 欧美午夜视频| 人妻熟女一二三区夜夜爱| 玖玖视频精品| 色91精品久久久久久久久| 国产成人精品一区二| 一起草在线视频| 国产精品污污网站在线观看| 男的操女的网站| 午夜国产不卡在线观看视频| 久操视频在线免费观看| 91精品国产福利| 亚洲av电影一区| 最新的欧美黄色| 日本高清成人vr专区| 欧美一区二区三区……| 伊人国产精品| 精品日韩欧美| 香蕉视频国产精品| 中文字幕无码精品亚洲35| 蜜臀久久久久久久| 日本黄色大片在线观看| 久久免费电影网| 欧美亚洲日本在线| 色综合天天综合在线视频| av小说天堂网| 国产一区二区成人| 欧美xxxx免费虐| 国产日本欧美视频| 日本中文字幕在线一区| 色中文字幕在线观看| 免费在线观看成人av| 91大神免费观看| 久久精品免费在线观看| 免费一级片视频| 欧美性xxxxxxxx| 人妻一区二区三区| 久久久精品一区二区| 视频在线日韩| 久久另类ts人妖一区二区| 女主播福利一区| wwwwww.色| 91麻豆国产精品久久| 91在线播放观看| 欧美日韩国产不卡| 九一在线视频| 国内精品久久久久久影视8| 亚洲我射av| 一本久道久久综合| 久久久久综合| 免费看毛片的网站| 伊人一区二区三区| 国产又粗又黄视频| 国产一区二区三区在线播放免费观看 | 欧美久久久精品| 草民电影神马电影一区二区| 久久婷婷人人澡人人喊人人爽| 欧美日本精品| 韩国一区二区在线播放| 中文字幕日韩一区| 中文字幕乱码视频| 国产一区二区免费| 亚洲深夜视频| 精品无码久久久久国产| 影音先锋久久精品| 91人妻一区二区| 夜夜操天天操亚洲| 亚洲精品字幕在线观看| 欧美成人四级hd版| 国产精品久久久久久久久久久久久久久| 台湾成人av| 麻豆中文一区二区| 国产不卡在线观看视频| 欧美性大战xxxxx久久久| av在线免费观看网| 国产精品海角社区在线观看| 国产欧美久久一区二区三区| 欧美精品第三页| 欧美国产精品一区| 国产一区二区三区成人| 日韩一区二区福利| 国产在线视频欧美一区| 国产在线拍揄自揄拍无码| 国产一区二区h| 妺妺窝人体色www在线下载| 日韩欧美国产一二三区| 欧美黑人xx片| 黑人另类av| 国产精品视频一二三四区| 成人免费高清在线| 青青国产在线观看| 亚洲视频视频在线| 国产精品99| 佐佐木明希av| 国产69精品久久99不卡| 成年免费在线观看| 在线视频国产日韩| 国产一区影院| 天堂av在线中文| 99在线视频精品| 国产精品自拍第一页| 久久亚洲国产精品| 国内精品免费| 9久久婷婷国产综合精品性色| 亚洲视频小说图片| 香蕉视频黄在线观看| 国产精品激情av电影在线观看| 色爱综合网欧美| 四虎永久免费观看| 色88888久久久久久影院按摩| 麻豆视频网站在线观看| 99久久综合狠狠综合久久止| 亚洲综合欧美| 黄色录像一级片| 亚洲国产精品推荐| 另类一区二区三区| 激情小视频网站| 国产农村妇女毛片精品久久麻豆 | 亚洲二区自拍| 国产+成+人+亚洲欧洲自线| 中文字幕免费高清网站| 按摩亚洲人久久| 亚洲精华一区二区三区| 99re6在线观看| 欧美性生交xxxxxdddd| 久久bbxx| 日韩免费电影一区二区| 国产精品1024|