黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術文章
文章詳情頁

理解MySQL——索引與優化

瀏覽:5日期:2023-10-16 17:14:39

寫在前面:索引對查詢的速度有著至關重要的影響,理解索引也是進行數據庫性能調優的起點。考慮如下情況,假設數據庫中一個表有10^6條記錄,DBMS的頁面大小為4K,并存儲100條記錄。如果沒有索引,查詢將對整個表進行掃描,最壞的情況下,如果所有數據頁都不在內存,需要讀取10^4個頁面,如果這10^4個頁面在磁盤上隨機分布,需要進行10^4次I/O,假設磁盤每次I/O時間為10ms(忽略數據傳輸時間),則總共需要100s(但實際上要好很多很多)。如果對之建立B-Tree索引,則只需要進行log100(10^6)=3次頁面讀取,最壞情況下耗時30ms。這就是索引帶來的效果,很多時候,當你的應用程序進行SQL查詢速度很慢時,應該想想是否可以建索引。進入正題:

第二章、索引與優化

1、選擇索引的數據類型

MySQL支持很多數據類型,選擇合適的數據類型存儲數據對性能有很大的影響。通常來說,可以遵循以下一些指導原則:

(1)越小的數據類型通常更好:越小的數據類型通常在磁盤、內存和CPU緩存中都需要更少的空間,處理起來更快。(2)簡單的數據類型更好:整型數據比起字符,處理開銷更小,因為字符串的比較更復雜。在MySQL中,應該用內置的日期和時間數據類型,而不是用字符串來存儲時間;以及用整型數據類型存儲IP地址。(3)盡量避免NULL:應該指定列為NOT NULL,除非你想存儲NULL。在MySQL中,含有空值的列很難進行查詢優化,因為它們使得索引、索引的統計信息以及比較運算更加復雜。你應該用0、一個特殊的值或者一個空串代替空值。1.1、選擇標識符選擇合適的標識符是非常重要的。選擇時不僅應該考慮存儲類型,而且應該考慮MySQL是怎樣進行運算和比較的。一旦選定數據類型,應該保證所有相關的表都使用相同的數據類型。(1) 整型:通常是作為標識符的最好選擇,因為可以更快的處理,而且可以設置為AUTO_INCREMENT。

(2) 字符串:盡量避免使用字符串作為標識符,它們消耗更好的空間,處理起來也較慢。而且,通常來說,字符串都是隨機的,所以它們在索引中的位置也是隨機的,這會導致頁面分裂、隨機訪問磁盤,聚簇索引分裂(對于使用聚簇索引的存儲引擎)。

2、索引入門對于任何DBMS,索引都是進行優化的最主要的因素。對于少量的數據,沒有合適的索引影響不是很大,但是,當隨著數據量的增加,性能會急劇下降。如果對多列進行索引(組合索引),列的順序非常重要,MySQL僅能對索引最左邊的前綴進行有效的查找。例如:假設存在組合索引it1c1c2(c1,c2),查詢語句select * from t1 where c1=1 and c2=2能夠使用該索引。查詢語句select * from t1 where c1=1也能夠使用該索引。但是,查詢語句select * from t1 where c2=2不能夠使用該索引,因為沒有組合索引的引導列,即,要想使用c2列進行查找,必需出現c1等于某值。2.1、索引的類型索引是在存儲引擎中實現的,而不是在服務器層中實現的。所以,每種存儲引擎的索引都不一定完全相同,并不是所有的存儲引擎都支持所有的索引類型。2.1.1、B-Tree索引假設有如下一個表:

CREATE TABLE People (

last_name varchar(50) not null,

first_name varchar(50) not null,

dobdate not null,

gender enum(’m’, ’f’) not null,

key(last_name, first_name, dob)

);

其索引包含表中每一行的last_name、first_name和dob列。其結構大致如下:

理解MySQL——索引與優化

索引存儲的值按索引列中的順序排列。可以利用B-Tree索引進行全關鍵字、關鍵字范圍和關鍵字前綴查詢,當然,如果想使用索引,你必須保證按索引的最左邊前綴(leftmost prefix of the index)來進行查詢。(1)匹配全值(Match the full value):對索引中的所有列都指定具體的值。例如,上圖中索引可以幫助你查找出生于1960-01-01的Cuba Allen。(2)匹配最左前綴(Match a leftmost prefix):你可以利用索引查找last name為Allen的人,僅僅使用索引中的第1列。(3)匹配列前綴(Match a column prefix):例如,你可以利用索引查找last name以J開始的人,這僅僅使用索引中的第1列。(4)匹配值的范圍查詢(Match a range of values):可以利用索引查找last name在Allen和Barrymore之間的人,僅僅使用索引中第1列。(5)匹配部分精確而其它部分進行范圍匹配(Match one part exactly and match a range on another part):可以利用索引查找last name為Allen,而first name以字母K開始的人。(6)僅對索引進行查詢(Index-only queries):如果查詢的列都位于索引中,則不需要讀取元組的值。由于B-樹中的節點都是順序存儲的,所以可以利用索引進行查找(找某些值),也可以對查詢結果進行ORDER BY。當然,使用B-tree索引有以下一些限制:(1) 查詢必須從索引的最左邊的列開始。關于這點已經提了很多遍了。例如你不能利用索引查找在某一天出生的人。(2) 不能跳過某一索引列。例如,你不能利用索引查找last name為Smith且出生于某一天的人。(3) 存儲引擎不能使用索引中范圍條件右邊的列。例如,如果你的查詢語句為WHERE last_name='Smith' AND first_name LIKE ’J%’ AND dob=’1976-12-23’,則該查詢只會使用索引中的前兩列,因為LIKE是范圍查詢。

2.1.2、Hash索引MySQL中,只有Memory存儲引擎顯示支持hash索引,是Memory表的默認索引類型,盡管Memory表也可以使用B-Tree索引。Memory存儲引擎支持非唯一hash索引,這在數據庫領域是罕見的,如果多個值有相同的hash code,索引把它們的行指針用鏈表保存到同一個hash表項中。假設創建如下一個表:CREATE TABLE testhash ( fname VARCHAR(50) NOT NULL, lname VARCHAR(50) NOT NULL, KEY USING HASH(fname)) ENGINE=MEMORY;包含的數據如下:理解MySQL——索引與優化

假設索引使用hash函數f( ),如下:

f(’Arjen’) = 2323

f(’Baron’) = 7437

f(’Peter’) = 8784

f(’Vadim’) = 2458

此時,索引的結構大概如下:

理解MySQL——索引與優化

Slots是有序的,但是記錄不是有序的。當你執行mysql> SELECT lname FROM testhash WHERE fname=’Peter’;MySQL會計算’Peter’的hash值,然后通過它來查詢索引的行指針。因為f(’Peter’) = 8784,MySQL會在索引中查找8784,得到指向記錄3的指針。因為索引自己僅僅存儲很短的值,所以,索引非常緊湊。Hash值不取決于列的數據類型,一個TINYINT列的索引與一個長字符串列的索引一樣大。 Hash索引有以下一些限制:(1)由于索引僅包含hash code和記錄指針,所以,MySQL不能通過使用索引避免讀取記錄。但是訪問內存中的記錄是非常迅速的,不會對性造成太大的影響。(2)不能使用hash索引排序。(3)Hash索引不支持鍵的部分匹配,因為是通過整個索引值來計算hash值的。(4)Hash索引只支持等值比較,例如使用=,IN( )和<=>。對于WHERE price>100并不能加速查詢。2.1.3、空間(R-Tree)索引MyISAM支持空間索引,主要用于地理空間數據類型,例如GEOMETRY。2.1.4、全文(Full-text)索引全文索引是MyISAM的一個特殊索引類型,主要用于全文檢索。

3、高性能的索引策略3.1、聚簇索引(Clustered Indexes)聚簇索引保證關鍵字的值相近的元組存儲的物理位置也相同(所以字符串類型不宜建立聚簇索引,特別是隨機字符串,會使得系統進行大量的移動操作),且一個表只能有一個聚簇索引。因為由存儲引擎實現索引,所以,并不是所有的引擎都支持聚簇索引。目前,只有solidDB和InnoDB支持。聚簇索引的結構大致如下:理解MySQL——索引與優化

注:葉子頁面包含完整的元組,而內節點頁面僅包含索引的列(索引的列為整型)。一些DBMS允許用戶指定聚簇索引,但是MySQL的存儲引擎到目前為止都不支持。InnoDB對主鍵建立聚簇索引。如果你不指定主鍵,InnoDB會用一個具有唯一且非空值的索引來代替。如果不存在這樣的索引,InnoDB會定義一個隱藏的主鍵,然后對其建立聚簇索引。一般來說,DBMS都會以聚簇索引的形式來存儲實際的數據,它是其它二級索引的基礎。

3.1.1、InnoDB和MyISAM的數據布局的比較為了更加理解聚簇索引和非聚簇索引,或者primary索引和second索引(MyISAM不支持聚簇索引),來比較一下InnoDB和MyISAM的數據布局,對于如下表:

CREATE TABLE layout_test (

col1 int NOT NULL,

col2 int NOT NULL,

PRIMARY KEY(col1),

KEY(col2)

);

假設主鍵的值位于1---10,000之間,且按隨機順序插入,然后用OPTIMIZE TABLE進行優化。col2隨機賦予1---100之間的值,所以會存在許多重復的值。(1) MyISAM的數據布局其布局十分簡單,MyISAM按照插入的順序在磁盤上存儲數據,如下:理解MySQL——索引與優化

注:左邊為行號(row number),從0開始。因為元組的大小固定,所以MyISAM可以很容易的從表的開始位置找到某一字節的位置。據些建立的primary key的索引結構大致如下:理解MySQL——索引與優化

注:MyISAM不支持聚簇索引,索引中每一個葉子節點僅僅包含行號(row number),且葉子節點按照col1的順序存儲。來看看col2的索引結構:理解MySQL——索引與優化

實際上,在MyISAM中,primary key和其它索引沒有什么區別。Primary key僅僅只是一個叫做PRIMARY的唯一,非空的索引而已。(2) InnoDB的數據布局InnoDB按聚簇索引的形式存儲數據,所以它的數據布局有著很大的不同。它存儲表的結構大致如下:理解MySQL——索引與優化

注:聚簇索引中的每個葉子節點包含primary key的值,事務ID和回滾指針(rollback pointer)——用于事務和MVCC,和余下的列(如col2)。相對于MyISAM,二級索引與聚簇索引有很大的不同。InnoDB的二級索引的葉子包含primary key的值,而不是行指針(row pointers),這減小了移動數據或者數據頁面分裂時維護二級索引的開銷,因為InnoDB不需要更新索引的行指針。其結構大致如下:理解MySQL——索引與優化

聚簇索引和非聚簇索引表的對比:

理解MySQL——索引與優化

3.1.2、按primary key的順序插入行(InnoDB)

如果你用InnoDB,而且不需要特殊的聚簇索引,一個好的做法就是使用代理主鍵(surrogate key)——獨立于你的應用中的數據。最簡單的做法就是使用一個AUTO_INCREMENT的列,這會保證記錄按照順序插入,而且能提高使用primary key進行連接的查詢的性能。應該盡量避免隨機的聚簇主鍵,例如,字符串主鍵就是一個不好的選擇,它使得插入操作變得隨機。

3.2、覆蓋索引(Covering Indexes)如果索引包含滿足查詢的所有數據,就稱為覆蓋索引。覆蓋索引是一種非常強大的工具,能大大提高查詢性能。只需要讀取索引而不用讀取數據有以下一些優點:(1)索引項通常比記錄要小,所以MySQL訪問更少的數據;(2)索引都按值的大小順序存儲,相對于隨機訪問記錄,需要更少的I/O;(3)大多數據引擎能更好的緩存索引。比如MyISAM只緩存索引。(4)覆蓋索引對于InnoDB表尤其有用,因為InnoDB使用聚集索引組織數據,如果二級索引中包含查詢所需的數據,就不再需要在聚集索引中查找了。覆蓋索引不能是任何索引,只有B-TREE索引存儲相應的值。而且不同的存儲引擎實現覆蓋索引的方式都不同,并不是所有存儲引擎都支持覆蓋索引(Memory和Falcon就不支持)。對于索引覆蓋查詢(index-covered query),使用EXPLAIN時,可以在Extra一列中看到“Using index”。例如,在sakila的inventory表中,有一個組合索引(store_id,film_id),對于只需要訪問這兩列的查詢,MySQL就可以使用索引,如下:

mysql> EXPLAIN SELECT store_id, film_id FROM sakila.inventoryG

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: inventory

type: index

possible_keys: NULL

key: idx_store_id_film_id

key_len: 3

ref: NULL

rows: 5007

Extra: Using index

1 row in set (0.17 sec)

在大多數引擎中,只有當查詢語句所訪問的列是索引的一部分時,索引才會覆蓋。但是,InnoDB不限于此,InnoDB的二級索引在葉子節點中存儲了primary key的值。因此,sakila.actor表使用InnoDB,而且對于是last_name上有索引,所以,索引能覆蓋那些訪問actor_id的查詢,如:

mysql> EXPLAIN SELECT actor_id, last_name

-> FROM sakila.actor WHERE last_name = ’HOPPER’G

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: actor

type: ref

possible_keys: idx_actor_last_name

key: idx_actor_last_name

key_len: 137

ref: const

rows: 2

Extra: Using where; Using index

3.3、利用索引進行排序MySQL中,有兩種方式生成有序結果集:一是使用filesort,二是按索引順序掃描。利用索引進行排序操作是非常快的,而且可以利用同一索引同時進行查找和排序操作。當索引的順序與ORDER BY中的列順序相同且所有的列是同一方向(全部升序或者全部降序)時,可以使用索引來排序。如果查詢是連接多個表,僅當ORDER BY中的所有列都是第一個表的列時才會使用索引。其它情況都會使用filesort。

create table actor(

actor_id int unsigned NOT NULL AUTO_INCREMENT,

name varchar(16) NOT NULL DEFAULT ’’,

passwordvarchar(16) NOT NULL DEFAULT ’’,

PRIMARY KEY(actor_id),

KEY (name)

) ENGINE=InnoDB

insert into actor(name,password) values(’cat01’,’1234567’);

insert into actor(name,password) values(’cat02’,’1234567’);

insert into actor(name,password) values(’ddddd’,’1234567’);

insert into actor(name,password) values(’aaaaa’,’1234567’);

mysql> explain select actor_id from actor order by actor_id G

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: actor

type: index

possible_keys: NULL

key: PRIMARY

key_len: 4

ref: NULL

rows: 4

Extra: Using index

1 row in set (0.00 sec)

mysql> explain select actor_id from actor order by password G

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: actor

type: ALL

possible_keys: NULL

key: NULL

key_len: NULL

ref: NULL

rows: 4

Extra: Using filesort

1 row in set (0.00 sec)

mysql> explain select actor_id from actor order by name G

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: actor

type: index

possible_keys: NULL

key: name

key_len: 18

ref: NULL

rows: 4

Extra: Using index

1 row in set (0.00 sec)

當MySQL不能使用索引進行排序時,就會利用自己的排序算法(快速排序算法)在內存(sort buffer)中對數據進行排序,如果內存裝載不下,它會將磁盤上的數據進行分塊,再對各個數據塊進行排序,然后將各個塊合并成有序的結果集(實際上就是外排序)。對于filesort,MySQL有兩種排序算法。(1)兩遍掃描算法(Two passes)實現方式是先將須要排序的字段和可以直接定位到相關行數據的指針信息取出,然后在設定的內存(通過參數sort_buffer_size設定)中進行排序,完成排序之后再次通過行指針信息取出所需的Columns。注:該算法是4.1之前采用的算法,它需要兩次訪問數據,尤其是第二次讀取操作會導致大量的隨機I/O操作。另一方面,內存開銷較小。(3) 一次掃描算法(single pass)該算法一次性將所需的Columns全部取出,在內存中排序后直接將結果輸出。注:從 MySQL 4.1 版本開始使用該算法。它減少了I/O的次數,效率較高,但是內存開銷也較大。如果我們將并不需要的Columns也取出來,就會極大地浪費排序過程所需要的內存。在 MySQL 4.1 之后的版本中,可以通過設置 max_length_for_sort_data 參數來控制 MySQL 選擇第一種排序算法還是第二種。當取出的所有大字段總大小大于 max_length_for_sort_data 的設置時,MySQL 就會選擇使用第一種排序算法,反之,則會選擇第二種。為了盡可能地提高排序性能,我們自然更希望使用第二種排序算法,所以在 Query 中僅僅取出需要的 Columns 是非常有必要的。當對連接操作進行排序時,如果ORDER BY僅僅引用第一個表的列,MySQL對該表進行filesort操作,然后進行連接處理,此時,EXPLAIN輸出“Using filesort”;否則,MySQL必須將查詢的結果集生成一個臨時表,在連接完成之后進行filesort操作,此時,EXPLAIN輸出“Using temporary;Using filesort”。

3.4、索引與加鎖索引對于InnoDB非常重要,因為它可以讓查詢鎖更少的元組。這點十分重要,因為MySQL 5.0中,InnoDB直到事務提交時才會解鎖。有兩個方面的原因:首先,即使InnoDB行級鎖的開銷非常高效,內存開銷也較小,但不管怎么樣,還是存在開銷。其次,對不需要的元組的加鎖,會增加鎖的開銷,降低并發性。InnoDB僅對需要訪問的元組加鎖,而索引能夠減少InnoDB訪問的元組數。但是,只有在存儲引擎層過濾掉那些不需要的數據才能達到這種目的。一旦索引不允許InnoDB那樣做(即達不到過濾的目的),MySQL服務器只能對InnoDB返回的數據進行WHERE操作,此時,已經無法避免對那些元組加鎖了:InnoDB已經鎖住那些元組,服務器無法解鎖了。來看個例子:

create table actor(

actor_id int unsigned NOT NULL AUTO_INCREMENT,

name varchar(16) NOT NULL DEFAULT ’’,

passwordvarchar(16) NOT NULL DEFAULT ’’,

PRIMARY KEY(actor_id),

KEY (name)

) ENGINE=InnoDB

insert into actor(name,password) values(’cat01’,’1234567’);

insert into actor(name,password) values(’cat02’,’1234567’);

insert into actor(name,password) values(’ddddd’,’1234567’);

insert into actor(name,password) values(’aaaaa’,’1234567’);

SET AUTOCOMMIT=0;

BEGIN;

SELECT actor_id FROM actor WHERE actor_id < 4

AND actor_id <> 1 FOR UPDATE;

該查詢僅僅返回2---3的數據,實際已經對1---3的數據加上排它鎖了。InnoDB鎖住元組1是因為MySQL的查詢計劃僅使用索引進行范圍查詢(而沒有進行過濾操作,WHERE中第二個條件已經無法使用索引了):

mysql> EXPLAIN SELECT actor_id FROM test.actor

-> WHERE actor_id < 4 AND actor_id <> 1 FOR UPDATE G

*************************** 1. row ***************************

id: 1

select_type: SIMPLE

table: actor

type: index

possible_keys: PRIMARY

key: PRIMARY

key_len: 4

ref: NULL

rows: 4

Extra: Using where; Using index

1 row in set (0.00 sec)

mysql>

表明存儲引擎從索引的起始處開始,獲取所有的行,直到actor_id<4為假,服務器無法告訴InnoDB去掉元組1。為了證明row 1已經被鎖住,我們另外建一個連接,執行如下操作:

SET AUTOCOMMIT=0;

BEGIN;

SELECT actor_id FROM actor WHERE actor_id = 1 FOR UPDATE;

該查詢會被掛起,直到第一個連接的事務提交釋放鎖時,才會執行(這種行為對于基于語句的復制(statement-based replication)是必要的)。如上所示,當使用索引時,InnoDB會鎖住它不需要的元組。更糟糕的是,如果查詢不能使用索引,MySQL會進行全表掃描,并鎖住每一個元組,不管是否真正需要。

來自: http://blog.csdn.net/kingmax54212008/article/details/51699148

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 国产网友自拍视频 | 免费男女乱淫真视频免费播放 | 久久久受www免费人成 | 男人的天堂av社区在线 | 91在线影院| 国产性色αv视频免费 | 手机看片福利永久 | 中文字幕日产乱码中 | 免费人成视频网站在线观看18 | 中出在线 | 免费成人黄色av | 亚州av网站| 欧美一极片 | 亚洲精品乱码久久久久久麻豆不卡 | 日本在线观看a | 性做久久久久久久免费看 | 久久精品欧美日韩精品 | 久久国产精品波多野结衣av | 午夜国产羞羞视频免费网站 | 荡女淫春 在线观看69影院 | 草久久久 | 亚洲 自拍 另类小说综合图区 | 精品国产乱码久久久久久郑州公司 | 国产精品久久久久久网站 | 狠狠狠色丁香婷婷综合久久五月 | 99产精品成人啪免费网站 | aa一级片 | 欧美a级suv大全免费看 | 78亚洲精品久久久蜜桃网 | 国产成人亚洲精品自产在线 | 人人爽人人草 | 手机在线永久免费观看av片 | 亚洲精品一线二线三线 | 午夜有码 | 欧美精品亚洲精品日韩已满十八 | 国产亚洲一区二区在线观看 | 日本黄页网站免费大全 | 依人成人| 四虎国产永久在线精品 | 日本精品人妻无码77777 | 日本毛片高清免费视频 | 欧美人与动性行为视频 | 成人毛片18女人 | 首页干日本少妇 | 97成人免费| 久久99精品久久只有精品 | 尤物yw193无码点击进入 | 张警花视频99精品视频 | 亚洲高清av | av美女在线 | 国产日本一区二区 | 国产精品污www在线观看17c | 欧美日韩新片 | 亚洲欧洲日本一区二区三区 | 超碰在线97国产 | 日韩精品久久久久久久电影蜜臀 | 国产精品区一区二区三在线播放 | 高清毛片aaaaaaaaa郊外 | 荷兰av| 成人免费区一区二区三区 | 日韩精品视频在线观看免费 | 日本波多野结衣在线 | 久久久青草| 中文字幕av无码一区二区三区电影 | 狠狠色伊人亚洲综合成人 | 在线视频三区 | 亚洲热久久| 爱豆国产剧免费观看大全剧集 | 午夜精品久久久久久久99樱桃 | 性欧美在线视频观看 | 中文字幕在线不卡一区二区 | 精品少妇一区二区三区免费观看 | 黄色a级片网站 | 免费视频永久免费人 | 国产午夜成人免费看片 | 中文字幕av网 | 爱情岛论坛亚洲首页入口章节 | 中文字幕第一页久久 | 国产 一二三四五六 | 亚洲欧美一区二区三区三高潮 | 欧美性xxxx极品少妇 | 亚洲少妇网| 成人免费毛片嘿嘿连载视频 | 亚洲中文字幕va福利 | av高清在线免费观看 | 国产精品国产三级国产专播i12 | 一级黄色片国产 | 极品福利视频 | 色中色在线视频 | 玩弄中年熟妇正在播放 | 免费在线黄色片 | 中文字幕第一页在线视频 | 91网页入口 | 精品国产一区二区三区无码 | 欧美日韩一级二级三级 | 五十老熟妇乱子伦免费观看 | 成人久久18免费 | a网站在线 | 成人久久18免费网站 | 国产性生交xxxxx免费 | 久久精品人人做人人爱爱站长工具 | 国产无套粉嫩白浆在线观看 | 麻豆蜜桃av蜜臀av色欲av | 成人精品视频一区二区三区尤物 | 亚洲爆乳大丰满无码专区 | 久久亚洲sm情趣捆绑调教 | 欧美黄色一级大片 | 亚洲一区二区 | 国产精品爽爽久久久久久蜜臀 | 久久精品女人毛片国产 | 久久av无码精品人妻系列试探 | 久操视频在线观看 | 成人三级a做爰视频哪里看 成人三级k8经典网 成人三级黄色 | 国产亚洲精品久久久闺蜜 | 亚洲男人第一av网站 | 亚洲天堂免费观看 | 欧美视频一区在线观看 | 国产aⅴ一区二区三区精华液 | 亚洲少妇15p | 亚洲第一成人网站 | 亚洲国产成人精品女 | 69热在线观看 | 色综合色天天久久婷婷基地 | 手机看片1024在线 | 久久精品这里有 | 久久aⅴ国产紧身牛仔裤 | 91爱爱视频 | 亚洲在线国产日韩欧美 | 国产三男一女4p免费男黑人 | 女同互添互慰av毛片观看 | 成人一二三区 | mm1313亚洲国产精品 | 男女交性全过程免费观看网站 | 国模无码视频一区二区三区 | 国产大片aaa | 日本免费三区 | 国精产品一二三三区入口 | 51国产偷自视频区视频 | 香蕉免费毛片视频 | 中文字幕在线观 | 久久五月天综合 | 国产女人成人精品a区 | 99久久国产露脸国语对白 | 亚洲天堂免费av | 成人美女视频 | 在线色站| 一区二区三区视频 | 国产成人久久 | 夜夜骑天天干 | 久久综合资源 | 高潮喷水抽搐无码免费 | 精品一区二区三区免费视频 | 午夜福利电影 | 久久日精品 | 先锋影音av资源在线观看 | 亚洲深夜福利 | 日韩欧美视频在线免费观看 | 久久一热 | 欧美jizz18 | 日本国产视频 | 亚洲国产成 | 91性高潮久久久久久久 | 国产免费看av | 国产精品无码dvd在线观看 | 中文字幕 国产精品 | 小毛片网站 | av高清在线观看 | 国产精品一区二区人人爽79欧美 | 女性无套免费网站在线看动漫 | 麻豆精品乱码一二三区别蜜臀在线 | 日本中文字幕在线观看 | 精品国产乱码久久久久久闺蜜 | 免费的av网址| 国产日产欧产精品精品app | av观看免费 | 久久精品一区视频 | 成人一级黄色毛片 | 久久 国产 尿 小便 嘘嘘 | 亚洲网站免费 | 成人性生交大片免费视频 | 精品久久久久久久久久久久久久 | a级黄色片免费看 | 久久噜噜噜精品国产亚洲综合 | 国产精品极品白嫩在线 | 无遮挡啪啪摇乳动态图gif | 欧美乱欲视频 | 福利片第一页 | 国产免费一区 | 国产一区二区三区观看 | 丰满人妻在公车被猛烈进入电影 | 深夜视频在线观看免费 | 三上悠亚日韩精品二区 | 男女爽爽无遮挡午夜视频 | 怡春院欧美 | 亚洲综合国产 | 亚洲精品乱码久久久久久花季 | 天天操天天玩 | 国产区小视频 | 成人三级晚上看 | 鲁死你av资源站 | 久久婷婷精品一区二区三区日本 | 免费人成又黄又爽又色 | av一区二区三 | 超碰在线人人干 | 91精品在线国产 | 国产夫绿帽单男3p精品视频 | 夜夜夜高潮夜夜爽夜夜爰爰 | 人人妻一区二区三区 | 超薄丝袜足j好爽在线 | 久久国产精品99精品国产 | 成人毛片视频网站 | 亚洲成av人片在线观看无码 | 成人高清在线 | 国产精品二区一区二区aⅴ 国产精品粉嫩懂色av | 你懂的日韩 | 少妇交换做爰中文字幕 | 欧美激情欧美激情在线五月 | 亚洲精品偷拍视频 | 国产精品21p| 女人被狂躁c到高潮视频 | 中文字幕无码精品亚洲35 | 免费一级片在线观看 | 欧美激情aaa | 亚洲男人的天堂av手机在线观看 | 国产精品亚洲综合一区二区三区 | 99插插插 | 国产女人18毛片18精品 | 久久久久色 | 亚洲人精品亚洲人成在线 | 成人黄色在线 | 久久久久久久久久久国产 | 婷婷色影院 | 国产一区二区毛片 | 久久人人爽人人爽人人片av卡 | 亚洲天堂网站在线 | 国产专区在线 | 欧美性猛交一区二区三区精品 | 石原莉奈一区二久久影视 | 日韩av午夜在线观看 | 91福利网站| 国产精品精品久久久久久 | 国产精品人妖 | 青青国产在线视频 | 国产精品自在线 | 一区二区三区在线免费观看视频 | 国产亚洲人成网站在线观看 | 国产肉体ⅹxxx137大胆视频 | 国产又粗又猛又黄视频 | 男人的天堂视频 | 99在线 | 亚洲 | 国产毛片基地 | 另类专区欧美 | 韩国三级丰满少妇高潮 | 人人超碰在线 | 亚洲精品午夜久久久 | 久热中文字幕无码视频 | 在线观看中文字幕一区 | 波多野结衣在线免费视频 | 国产成人在线播放视频 | 精品美女在线 | 加勒比综合 | 在线免费黄| 久热精品视频在线播放 | 五月激情婷婷丁香 | 最新中文字幕av专区 | 91超级碰 | 黄色观看网站 | 精品视频一区二区三区四区五区 | 久久精彩免费视频 | 年代肉高h喷汁呻吟快穿 | 激情小说专区 | 少妇激情一区二区三区 | 国产鲁鲁视频在线观看免费 | 国产爽爽久久影院潘金莲 | 色人阁视频 | 国产视频一区二区三区在线 | 91精品国产综合久久久久久软件 | 中文字幕亚洲日韩无线码 | www.天天干| 丁香婷婷激情 | 国产又爽又黄的激情精品视频 | 国产女人和拘做受视频免费 | 成人国产精品齐天大性 | 日本一区二区不卡在线 | 日韩经典av | 少妇视频网站 | 国产主播户外勾搭人xx | 国产69精品久久久久久妇女迅雷 | av爽妇网| 久久久久久久久久久久国产精品 | 亚洲日本国产精品 | 国产精品人人妻人人爽人人牛 | 国产爽爽久久影院hd | aa一级片 | 日本va欧美va精品发布 | 国产一区二区三区成人欧美日韩在线观看 | 日韩亚洲欧美一区二区三区 | 欧美精品免费一区二区三区 | 97国产精品久久久 | 久久天天躁夜夜躁狠狠躁2022 | 97人人在线视频 | 最新中文字幕在线 | 国产成人精品视频ⅴa片软件竹菊 | 欧美精品乱人伦久久久久久 | 久久久久久久久久久久久久免费看 | 毛片大全在线观看 | 一区二区精品视频 | 亚洲码欧美码一区二区三区 | 少妇一夜三次一区二区 | 中国白嫩丰满人妻videos | 亚洲一区中文字幕永久在线 | 精品人伦一区二区三区蜜桃网站 | 亚洲男人天堂 | 久久婷婷成人综合色 | 亚洲乱码国产乱码精品精软件 | 欧美一级爽aaaaa大片 | 天天色综合天天色 | 天天干在线观看 | 天天天天噜在线视频 | 麻豆理论片| 天天躁夜夜躁狠狠是什么心态 | 亚洲精品国产成人 | 青青青爽久久午夜综合久久午夜 | 毛片大全在线观看 | 92看片淫黄大片一级 | 国产精品国产三级国产普通 | 丝袜美腿一区二区三区 | 国产自产21区 | 91精品国产91久久久久久吃药 | 亚洲精品一二三四 | 四影虎影免费在线观看 | 色美av| 成人在线免费看片 | 日日干日日操 | 亚洲精品一二三区 | 久久午夜福利电影 | 国产91免费视频 | 中文字幕三区 | avt天堂网| 亚洲视频你懂的 | 超碰免费在线播放 | 国产精品亚洲欧美 | 命带桃花1987在线 | 欧美性xxxx极品hd大豆行情 | 大色综合| 国产裸体视频 | 99久久久国产精品免费调教网站 | 91久久精品日日躁夜夜躁国产 | 色欧美亚洲 | 欧美一级免费观看 | 久久久久久久久久久久久9999 | 色婷婷久久综合中文久久一本 | 久久精品国产v日韩v亚洲 | 成人久久久精品国产乱码一区二区 | 四虎永久网址 | 亚洲男人在线天堂 | 国产免费av网址 | 91九色精品女同系列 | 色偷偷偷在线视频播放 | 激情一区| 亚洲热av | 性色av免费| 久久久久国产综合av天堂 | 国产精品久久久爽爽爽麻豆色哟哟 | 久久天天躁狠狠躁夜夜免费观看 | 久久精品这里热有精品 | 性爱视频日本 | 国产精品乱码高清在线观看 | 97国产超薄黑色肉色丝袜 | 快色av| 欧美久久久久久久久中文字幕 | 麻豆一区二区三区四区 | 91成人在线播放 | 屁屁影院国产第一页 | 亚洲品牌自拍一品区9 | 日本人做爰大片免费网站 | 亚洲wwww| 国产18在线观看 | 久久国产毛片 | 少妇粉嫩小泬喷水视频 | 国产免费又色又爽粗视频 | 欧美激情一区二区在线观看 | 一本久久a精品一合区久久久 | 午夜99| 精品国产一区二区三区免费 | 人善交另类亚洲重口另类 | 91久久国产自产拍夜夜嗨 | yy6080午夜| 欧美经典影片视频中文 | 日韩欧美啪啪 | 亚洲一卡二卡三卡四卡在线看 | 伊人久久大香线蕉av色 | 青青草视频在线免费观看 | 欧美另类交在线观看 | 欧美一本 | 在线伊人 | www九九热 | 麻豆影视在线播放 | 国产在线视频不卡 | 99在线精品视频免费观看软件 | 日韩99在线 | 中文 | 调教一区| 国产日韩欧美中文另类 | 131mm极品尤物美女无胸罩 | 日韩一级片在线观看 | 国语啪啪 | 天堂亚洲免费视频 | 国产专区第一页 | 91在线精品啪婷婷 | lutu成人福利在线观看 | 国产精品成 | а√天堂8资源中文在线 | 欧美成人免费全部网站 | 色婷婷中文 | 屁屁影院ccyy国产第一页 | a级成人毛片 | 日韩精品一 | 五月天丁香激情 | 丝袜高跟av | 国产亚洲精品久久久玫瑰 | 国产男女爽爽爽免费视频 | 4444亚洲人成无码网在线观看 | 中日一级毛片 | 丰满少妇免费做爰大片人 | 一区二区三区在线视频免费观看 | 亚洲精品乱码久久久久久蜜桃不爽 | 麻豆国产丝袜白领秘书在线观看 | av一起看香蕉 | 免费观看日本 | www久久爱白液流出h | 欧美人与禽zozzo禽性配 | 五月婷六月丁香狠狠躁狠狠爱 | 国产精品久久久久免费 | 国产精品久久久一区 | 麻豆aⅴ精品无码一区二区 午夜福制92视频 | 97香蕉碰碰人妻国产欧美 | 69性影院| 波多野结衣免费在线视频 | 人人干在线观看 | 欧美xxx在线观看 | 亚洲精品国产嫩草在线观看东京热 | 中文字幕av一区二区三区高 | 理论片毛片 | 99久久99久久精品国产片果冻 | 欧美一级二级在线观看 | 国产一区二区三区黄 | 国产日产精品久久快鸭的功能介绍 | 97在线观看 | 青青草成人影视 | 超碰97免费 | 噜啦噜色姑娘综合 | 伊人久久无码中文字幕 | 久久久久久国产精品 | 性女次台湾三级 | 成年女人永久免费观看视频 | 一区二区三区四区五区在线视频 | 97久久偷偷做嫩草影院免费看 | 狠狠色狠狠色很很综合很久久 | 国产精品成人自拍 | 欧美老熟妇乱子伦视频 | 又大又硬又黄的免费视频 | 台湾性dvd性色av | 日本高清一区二区三 | 阿v天堂网| 国产又黄又猛又粗又爽的 | www.欧美国产 | 精品一区精品二区 | jizz欧美大全| 狠狠色狠狠色很很综合很久久 | 国产精品久久久久免费观看 | 青青草无码免费一二三区 | 亚洲a视频 | 日本女人毛片 | 亚洲一区二区三区四区不卡 | 国产精品一久久香蕉国产线看观看 | 狠狠色伊人亚洲综合第8页 狠狠色综合久久婷婷 | 国产xxxxx在线观看 | 成人做爰视频www网站小优视频 | 作爱视频在线 | a√天堂在线 | 妓女爽爽爽爽爽妓女8888 | 欧美日韩在线视频一区 | 粉嫩av一区二区三区免费看 | 四虎在线观看视频 | 少妇无码太爽了不卡视频在线看 | 国产成人精品aa毛片 | 神马九九 | 亚洲精品国产精品自产a区红杏吧 | 成人在线小视频 | 免费日韩欧美 | 久久久www成人免费精品张筱雨 | 97久久精品无码一区二区 | 亚洲一卡二卡在线 | 国产美女在线观看 | 91久草视频| 青草视频网 | 亚洲 丝袜 另类 校园 欧美 | 久久精品无码一区二区无码 | 熟妇高潮一区二区三区 | 免费毛片视频 | 国产一区二区三区精品视频 | 天天爽夜夜爽夜夜爽精品视频 | 国产三级全黄 | 国产盗摄一区二区 | 色欲久久综合亚洲精品蜜桃 | 日韩专区在线观看 | 又白又嫩毛又多15p 国产热の有码热の无码视频 | 欧州一区 | 日本一区二区不卡在线观看 | 色琪琪一区二区三区亚洲区 | 国产免费a∨片同性同志 | 91蝌蚪91密月 | www亚洲视频| 性一交一乱一乱一乱视频 | www.youjizz.com国产| www在线 | 久久精品视频8 | 中出人妻中文字幕无码 | 欧美老女人性生活视频 | 久久亚洲精品成人无码 | 成人午夜视频免费在线观看 | 一本大道一区二区 | 超碰免费在 | 日本熟妇丰满大白屁毛片 | 亚洲一区二区三区视频在线 | 国产欧美日韩一区二区三区在线 | 一区二区在线播放视频 | 久久精品视频在线看15 | 亚洲日本乱码在线观看 | 色综合视频一区二区三区44 | 国产成人av免费网址 | 欧美精品一区二区三区四区 | 任我爽精品视频在线播放 | 日韩在线永久免费播放 | 久久久久久一区二区三区四区别墅 | 亚洲国产一区二 | 久在操| a级片在线免费观看 | 99精品视频在线导航 | 久久毛片网站 | 香蕉视频影院 | 全部av―极品视觉盛宴 | 亚洲国产成人va在线观看天堂 | 牛牛超碰 | 免费又黄又爽又色的视频 | 一个人看的www免费视频在线观看 | 天天干夜夜玩 | 国产91对白在线观看九色 | 免费人成视频在线播放 | 日韩色黄大片 | 国产一区二区三区四区五区 | 国产伦精品一区二区三 | 午夜av在线播放 | 国产无遮挡又黄又爽免费网站 | a级高清免费毛片 | 日批免费在线观看 | 污污内射久久一区二区欧美日韩 | 久久久久久亚洲综合影院红桃 | 巨乳女教师佐山爱,夫前在线 | 四虎永久在线精品免费观看网站 | 国产丰满果冻videossex | 26uuu精品一区二区 | 欧美日韩综合在线观看 | 永久免费a级在线视频 | 一区二区三区av在线 | 久久香蕉国产线熟妇人妻 | 天天干夜夜操视频 | 久久久亚洲精品一区二区三区浴池 | 国产精品久久久久久久久久久久午夜片 | 国产无限制自拍 | 又摸又揉又黄又爽的视频 | 国产在线第一页 | 久久久国产精品久久久 | 草草影院第一页yycc.com | 亚洲成av人片不卡无码手机版 | 99久久精品午夜一区二区小说 | 好吊操这里只有精品 | 美女少妇翘臀啪啪呻吟网站 | 中文字幕日韩精品亚洲七区 | 最近中文字幕mv在线资源 | 日韩毛片欧美一级a | 天天操天天曰 | 日韩精品视频在线一区 | 欧美激烈精交gif动态图 | 久久婷婷五月综合色丁香 | a级毛片网 | 日日摸天天摸爽爽狠狠97 | 亚洲区一 | 17c在线视频在线观看 | 午夜宅男影院 | 欧美激情在线看 | 91看片在线看| 亚洲天堂男 | 久久人妻公开中文字幕 | 紧缚捆绑精品一区二区 | 风韵犹存少妇69xx视频 | 亚洲一区二区三区在线 | 夜色.com | 国产尤物精品视频 | 日韩国产成人在线 | 亚洲成人在线视频播放 | 日韩福利一区 | 欧美极品jiizzhd欧美爆 | 91亚洲精品国偷拍自产在线观看 | 综合国产一区 | play在线海量a v视频播放 | yiren22亚洲综合伊人22 | 四色永久网址在线观看 | 亚洲综合无码明星蕉在线视频 | 久久69精品久久久久久国产越南 | 69174欧美丰满少妇猛烈 | 野外做受又硬又粗又大视幕 | 欧美日韩在线视频观看 | 床戏一区 | 二区欧美 |