1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        一條 sql 的執(zhí)行過程詳解

        共 6538字,需瀏覽 14分鐘

         ·

        2020-12-07 01:41


        寫操作執(zhí)行過程

          如果這條sql是寫操作(insert、update、delete),那么大致的過程如下,其中引擎層是屬于 InnoDB 存儲引擎的,因為InnoDB 是默認的存儲引擎,也是主流的,所以這里只說明 InnoDB 的引擎層過程。由于寫操作較查詢操作更為復(fù)雜,所以先看一下寫操作的執(zhí)行圖。方便后面解析。

        0x01: 組件介紹?


        Server層


        1、連接器

          1)負責(zé)與客戶端的通信,是半雙工模式,這就意味著某一固定時刻只能由客戶端向服務(wù)器請求或者服務(wù)器向客戶端發(fā)送數(shù)據(jù),而不能同時進行。

          2)驗證用戶名和密碼是否正確(數(shù)據(jù)庫mysql的user表中進行驗證),如果錯誤返回錯誤通知(deAcess ?nied ?for ?user ?'root'@'localhost'(using password:YES)),如果正確,則會去 mysql 的權(quán)限表(mysql中的 user、db、columns_priv、Host 表,分別存儲的是全局級別、數(shù)據(jù)庫級別、表級別、列級別、配合 db 的數(shù)據(jù)庫級別)查詢當(dāng)前用戶的權(quán)限。


        2、緩存(Cache)

          也稱為查詢緩存,存儲的數(shù)據(jù)是以鍵值對的形式進行存儲,如果開啟了緩存,那么在一條查詢sql語句進來時會先判斷緩存中是否包含當(dāng)前的sql語句鍵值對,如果存在直接將其對應(yīng)的結(jié)果返回,如果不存在再執(zhí)行后面一系列操作。如果沒有開啟則直接跳過。

        相關(guān)操作

        查看緩存配置:show ?variables ?like ?'have_query_cache';

        查看是否開啟:show ?variables ?like ?'query_cache_type';

        查看緩存占用大?。簊how ?variables ?like ?'query_cache_size';

        查看緩存狀態(tài)信息:show ?status ?like ?'Qcache%';

        相關(guān)參數(shù)的含義:

        ?緩存失效場景

        1、查詢語句不一致。前后兩條查詢SQL必須完全一致。

        2、查詢語句中含有一些不確定的值時,則不會緩存。比如 now()、current_date()、curdate()、curtime()、rand()、uuid()等。

        3、不使用任何表查詢。如 select 'A';

        4、查詢 mysql、information_schema 或 performance_schema 數(shù)據(jù)庫中的表時,不會走查詢緩存。

        5、在存儲的函數(shù),觸發(fā)器或事件的主體內(nèi)執(zhí)行的查詢。

        6、如果表更改,則使用該表的所有高速緩存查詢都變?yōu)闊o效并從緩存中刪除,這包括使用 MERGE 映射到已更改表的表的查詢。一個表可以被許多類型的語句改變,如 insert、update、delete、truncate rable、alter table、drop table、drop database。

        ?

        通過上面的失效場景可以看出緩存是很容易失效的,所以如果不是查詢次數(shù)遠大于修改次數(shù)的話,使用緩存不僅不能提升查詢效率還會拉低效率(每次讀取后需要向緩存中保存一份,而緩存又容易被清除)。所以在 MYSQL5.6默認是關(guān)閉緩存的,并且在 8.0?直接被移除了。當(dāng)然,如果場景需要用到,還是可以使用的。

        開啟

        在配置文件(linux下是安裝目錄的cnf文件,windows是安裝目錄下的ini文件)中,增加配置:?query_cache_type = 1

        關(guān)于 query_type_type 參數(shù)的說明:

        指定 SQL_NO_CACHE:select ?SQL_NO_CACHE ?*? from ?student ?where age >20;? ? SQL_CACHE 同理。


        3、分析器

        對客戶端傳來的 sql 進行分析,這將包括預(yù)處理與解析過程,并進行關(guān)鍵詞的提取、解析,并組成一個解析樹。具體的解析詞包括但不局限于 select/update/delete/or/in/where/group by/having/count/limit 等,如果分析到語法錯誤,會直接拋給客戶端異常:ERROR:You have an error in your SQL syntax.

        比如:select *? from user where userId =1234;

        在分析器中就通過語義規(guī)則器將select from where這些關(guān)鍵詞提取和匹配出來,mysql會自動判斷關(guān)鍵詞和非關(guān)鍵詞,將用戶的匹配字段和自定義語句識別出來。這個階段也會做一些校驗:比如校驗當(dāng)前數(shù)據(jù)庫是否存在user表,同時假如User表中不存在userId這個字段同樣會報錯:unknown column in field list.


        4、優(yōu)化器

        進入優(yōu)化器說明sql語句是符合標(biāo)準(zhǔn)語義規(guī)則并且可以執(zhí)行。優(yōu)化器會根據(jù)執(zhí)行計劃選擇最優(yōu)的選擇,匹配合適的索引,選擇最佳的方案。比如一個典型的例子是這樣的:

        ?

        表T,對A、B、C列建立聯(lián)合索引(A,B,C),在進行查詢的時候,當(dāng)sql查詢條件是:select xx where ?B=x and A=x and C=x.很多人會以為是用不到索引的,但其實會用到,雖然索引必須符合最左原則才能使用,但是本質(zhì)上,優(yōu)化器會自動將這條sql優(yōu)化為:where A=x and B=x and C=X,這種優(yōu)化會為了底層能夠匹配到索引,同時在這個階段是自動按照執(zhí)行計劃進行預(yù)處理,mysql會計算各個執(zhí)行方法的最佳時間,最終確定一條執(zhí)行的sql交給最后的執(zhí)行器


        5、執(zhí)行器

        執(zhí)行器會調(diào)用對應(yīng)的存儲引擎執(zhí)行 sql。主流的是MyISAM 和 Innodb。


        存儲引擎(InnoDB)層


        1、undo log?與 MVCC

        undo log是 Innodb 引擎專屬的日志,是記錄每行數(shù)據(jù)事務(wù)執(zhí)行前的數(shù)據(jù)。主要作用是用于實現(xiàn)MVCC版本控制,保證事務(wù)隔離級別的讀已提交和讀未提交級別。而 MVCC 相關(guān)的可以參考 MySQL中的事務(wù)原理和鎖機制。

        ?


        2、redo log?與 Buffer Pool

        InnoDB 內(nèi)部維護了一個緩沖池,用于減少對磁盤數(shù)據(jù)的直接IO操作,并配合 redo log 來實現(xiàn)異步的落盤,保證程序的高效執(zhí)行。redo log 大小固定,采用循環(huán)寫

        ?

        ?

        ?write pos 表示當(dāng)前正在記錄的位置,會向后記錄, checkpoint 表示數(shù)據(jù)落盤的邊界,也就是 checkpoint 與 write pos中間是已記錄的,當(dāng) write pos寫完 id_logfile_3后,會回到id_logfile_0循環(huán)寫,而追上 checkpomnit 后則需要先等數(shù)據(jù)進行落盤,等待 checkponit向后面移動一段距離再寫。redo log存儲的內(nèi)容個人認為當(dāng)直接更新到數(shù)據(jù)頁緩存時記錄的就是數(shù)據(jù)頁邏輯,如果更新到 Change Buffer 那么就是操作的 sql。

        關(guān)于 Buffer Pool詳情可查看博客 InnoDB 中的緩沖池(Buffer Pool)。

        ?


        3、bin log(Server?層)

        redo log 因為大小固定,所以不能存儲過多的數(shù)據(jù),它只能用于未更新的數(shù)據(jù)落盤,而數(shù)據(jù)操作的備份恢復(fù)、以及主從復(fù)制是靠 bin log(如果數(shù)據(jù)庫誤刪需要還原,那么需要某個時間點的數(shù)據(jù)備份以及bin log)。5.7默認記錄的是修改后的行記錄。

        在更新到數(shù)據(jù)頁緩存或者 Change Buffer 后,首先進行 redo log 的編寫,此時 redo log 處于 prepare 狀態(tài),隨后再進行 bin log 的編寫,等到 bin log 也編寫完成后再將 redo log 設(shè)置為 commit 狀態(tài)。這是為了防止數(shù)據(jù)庫宕機導(dǎo)致 bin log 沒有將修改記錄寫入,后面數(shù)據(jù)恢復(fù)、主從復(fù)制時數(shù)據(jù)不一致。當(dāng)數(shù)據(jù)庫啟動后如果發(fā)現(xiàn) redo log 為 prepare 狀態(tài),那么就會檢查 bin log 與 redo log 最近的記錄是否對的上,如果對的上就提交,對不上就進行事務(wù)回滾。

        三種格式:

        1、Row(5.7默認)。記錄被修改后的行記錄。缺點是占空間大。優(yōu)點是能保證數(shù)據(jù)安全,不會發(fā)生遺漏。

        2、Statement。記錄修改的 sql。缺點是在 mysql 集群時可能會導(dǎo)致操作不一致從而使得數(shù)據(jù)不一致(比如在操作中加入了Now()函數(shù),主從數(shù)據(jù)庫操作的時間不同結(jié)果也不同)。優(yōu)點是占空間小,執(zhí)行快。

        3、Mixed。會針對于操作的 sql 選擇使用Row 還是 Statement。缺點是還是可能發(fā)生主從不一致的情況。


        三個日志的比較(undo、redo、bin)

        1、undo log是用于事務(wù)的回滾、保證事務(wù)隔離級別讀已提交、可重復(fù)讀實現(xiàn)的。redo log是用于對暫不更新到磁盤上的操作進行記錄,使得其可以延遲落盤,保證程序的效率。bin log是對數(shù)據(jù)操作進行備份恢復(fù)(并不能依靠 bin log 直接完成數(shù)據(jù)恢復(fù))。

        2、undo log 與 redo log 是存儲引擎層的日志,只能在 InnoDB 下使用;而bin log 是 Server 層的日志,可以在任何引擎下使用。

        3、redo log 大小有限,超過后會循環(huán)寫;另外兩個大小不會。

        4、undo log 記錄的是行記錄變化前的數(shù)據(jù);redo log 記錄的是 sql 或者是數(shù)據(jù)頁修改邏輯或 sql(個人理解);bin log記錄的是修改后的行記錄(5.7默認)或者sql語句。

        ?

        0x02: 執(zhí)行過程


        寫操作

        ?通過上面的分析,可以很容易地了解開始的更新執(zhí)行圖。這里就不過多闡述了。


        讀操作

        查詢的過程和更新比較相似,但是有些不同,主要是來源于他們在查找篩選時的不同,更新因為在查找后會進行更新操作,所以查詢這一行為至始至終都在緩沖池中(使用到索引且緩沖池中包含數(shù)據(jù)對應(yīng)的數(shù)據(jù)頁)。而查詢則更復(fù)雜一些。


        Where?條件的提取

        在 MySQL 5.6開始,引入了一種索引優(yōu)化策略——索引下推,其本質(zhì)優(yōu)化的就是 Where 條件的提取。Where 提取過程是怎樣的?用一個例子來說明,首先進行建表,插入記錄。

        create?table?tbl_test?(a?int?primary?key,?b?int,?c?int,?d?int,?e?varchar(50));
        create?index?idx_bcd?on?tbl_test(b,?c,?d);
        insert?into?tbl_test?values?(4,3,1,1,'a');
        insert?into?tbl_test?values?(1,1,1,2,'d');
        insert?into?tbl_test?values?(8,8,7,8,'h');
        insert?into?tbl_test?values?(2,2,1,2,'g');
        insert?into?tbl_test?values?(5,2,2,5,'e');
        insert?into?tbl_test?values?(3,3,2,1,'c');
        insert?into?tbl_test?values?(7,4,0,5,'b');
        insert?into?tbl_test?values?(6,5,2,4,'f');

        ?那么執(zhí)行 select * from tbl_test where b >= 2 and b < 7 and c > 0 and d != 2 and e != 'a';? 在提取時,會將 Where?條件拆分為?Index Key(First Key & Last Key)、Index Filter 與 Table Filter。

        1、Index Key

        用于確定 SQL 查詢在索引中的連續(xù)范圍(起始點 + 終止點)的查詢條件,被稱之為Index Key;由于一個范圍,至少包含一個起始條件與一個終止條件,因此 Index Key 也被拆分為 Index First Key 和 Index Last Key,分別用于定位索引查找的起始點以終止點

            Index First Key

        用于確定索引查詢范圍的起始點;提取規(guī)則:從索引的第一個鍵值開始,檢查其在 where 條件中是否存在,若存在并且條件是 =、>=,則將對應(yīng)的條件加入Index First Key之中,繼續(xù)讀取索引的下一個鍵值,使用同樣的提取規(guī)則;若存在并且條件是 >,則將對應(yīng)的條件加入 Index First Key 中,同時終止 Index First Key 的提??;若不存在,同樣終止 Index First Key 的提取

        針對 SQL:select * from tbl_test where b >= 2 and b < 7 and c > 0 and d != 2 and e != 'a',應(yīng)用這個提取規(guī)則,提取出來的 Index First Key 為?b?>=?2, c?>?0?,由于 c 的條件為 >,提取結(jié)束

            Index Last Key

        用于確定索引查詢范圍的終止點,與 Index First Key 正好相反;提取規(guī)則:從索引的第一個鍵值開始,檢查其在 where 條件中是否存在,若存在并且條件是 =、<=,則將對應(yīng)條件加入到 Index Last Key 中,繼續(xù)提取索引的下一個鍵值,使用同樣的提取規(guī)則;若存在并且條件是 < ,則將條件加入到 Index Last Key 中,同時終止提?。蝗舨淮嬖?,同樣終止Index Last Key的提取

        針對 SQL:select * from tbl_test where b >= 2 and b < 7 and c > 0 and d != 2 and e != 'a',應(yīng)用這個提取規(guī)則,提取出來的 Index Last Key為?b?<?7?,由于是 < 符號,提取結(jié)束

        2、Index Filter

        在完成 Index Key 的提取之后,我們根據(jù) where 條件固定了索引的查詢范圍,那么是不是在范圍內(nèi)的每一個索引項都滿足 WHERE 條件了 ?很明顯?4,0,5?,?2,1,2?均屬于范圍中,但是又均不滿足SQL 的查詢條件

            所以 Index Filter 用于索引范圍確定后,確定 SQL 中還有哪些條件可以使用索引來過濾;提取規(guī)則:從索引列的第一列開始,檢查其在 where 條件中是否存在,若存在并且 where 條件僅為 =,則跳過第一列繼續(xù)檢查索引下一列,下一索引列采取與索引第一列同樣的提取規(guī)則;若 where 條件為 >=、>、<、<= 其中的幾種,則跳過索引第一列,將其余 where 條件中索引相關(guān)列全部加入到 Index Filter 之中;若索引第一列的 where 條件包含 =、>=、>、<、<= 之外的條件,則將此條件以及其余 where 條件中索引相關(guān)列全部加入到 Index Filter 之中;若第一列不包含查詢條件,則將所有索引相關(guān)條件均加入到 Index Filter之中

        針對 SQL:select * from tbl_test where b >= 2 and b < 7 and c > 0 and d != 2 and e != 'a',應(yīng)用這個提取規(guī)則,提取出來的 Index Filter 為?c?>?0?and?d?!=?2?,因為索引第一列只包含 >=、< 兩個條件,因此第一列跳過,將余下的 c、d 兩列加入到 Index Filter 中,提取結(jié)束

        3、Table Filter

        這個就比較簡單了,where 中不能被索引過濾的條件都歸為此中;提取規(guī)則:所有不屬于索引列的查詢條件,均歸為 Table Filter 之中

        針對 SQL:select * from tbl_test where b >= 2 and b < 7 and c > 0 and d != 2 and e != 'a',應(yīng)用這個提取規(guī)則,那么 Table Filter 就為??e?!=?'a'?

        ?

        在5.6 之前,是不分 Table Filter 與 Index Filter 的,這兩個條件都直接分配到 Server 層進行篩選。篩選過程是先根據(jù) Index Key 的條件先在引擎層進行初步篩選,然后得到對應(yīng)的主鍵值進行回表查詢得到初篩的行記錄,傳入 Server 層進行后續(xù)的篩選,在 Server 層的篩選因為沒有用到索引所以會進行全表掃描。而索引下推的優(yōu)化就是將 Index Filter 的條件下推到引擎層,在使用? Index First Key 與 Index Last Key 進行篩選時,就帶上 Index Filter 的條件再次篩選,以此來過濾掉不符合條件的記錄對應(yīng)的主鍵值,減少回表的次數(shù),同時發(fā)給 Server 層的記錄也會更少,全表掃描篩選的效率也會變高。下面是未使用索引下推和使用索引下推的示意圖。

        ?從上面的分析來看,查詢的流程圖大致可以用下面這張圖來概括

        ?

        ?這里要注意的是如果在一開始沒有用到索引,會依次將磁盤上的數(shù)據(jù)頁讀取到緩沖池中進行查詢。

        source:?https://www.cnblogs.com/mengxinJ/p/14045520.html

        推薦閱讀:

        完全整理 | 365篇高質(zhì)技術(shù)文章目錄整理

        算法之美 : 棧和隊列

        主宰這個世界的10大算法

        徹底理解cookie、session、token

        淺談什么是遞歸算法

        專注服務(wù)器后臺技術(shù)棧知識總結(jié)分享

        歡迎關(guān)注交流共同進步

        瀏覽 24
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            免费黄色电影在线观看| 免费成人视频在线观看| 女人久久| 波多野结衣视频一区| 香蕉在线播放| 91鸡巴| 久久久福利视频| 水果派解说av| 日日干网| 日韩黄色免费视频| 亚洲成人三区| 五月中文字幕| 日本A片免费| 丰满少妇一级片| 亚洲高清在线播放| 亚洲成人无码av| 亚洲色图欧美| 五月天久久久久久| 国产精品电影| 大鸡吧视频在线观看| 一级黄色录像视频| 黄网站欧美内射| 中文无码在线观看| 三级片无码在线播放| 亚洲成人免费观看| 亚洲热在线视频| 日本色情网| 精品蜜桃一区二区三区| 中文字幕第6页| 超碰人人网| 爱搞视频| 黄片91| 麻豆精品| 91免费看| 手机在线观看av| 69av网站| 午夜精品在线观看| 亚洲最大三级片| 成人在线视频播放| 亚洲欧美国产毛片在线| 晚上碰视频| 91伊人久热精品| 麻豆91久久久| 一级操逼视频| 精品99视频| 日韩欧美国产精品综合嫩V| 亚洲精品黄色电影| 日韩精品一区二区三免费视频 | av天天操| 巨い巨乳の少妇あジed2k | 中文在线不卡| 亚洲日韩中文字幕无码| 黄色一级大片| 肏屄在线视频| 黄片免费看视频| 亚洲无码AV一区二区| 久久久久女人精品毛片九一| 成人视频123| 无码人妻一区二区一牛影视| 无码精品视频在线观看| 免费18禁网站| 地表最强网红八月未央道具大秀| 欧美偷拍一区二区| 中文免费高清在线观看视频| 午夜福利无码视频| 日韩一级特黄A片免费观| 91人妻人人澡人人澡人人精品| 国产精品久久久久久精| P站免费版-永久免费的福利视频平台 | 一卡二卡久久| Av天堂图片在线| 人妻少妇视频| 中文av字幕| 黄片在线免费观看视频| 日韩在线视频免费播放| 好吊顶亚洲AV大香蕉色色| 在线观看亚| 九九re| 国产美女做爱| 影音先锋成人视频| 国产熟女一区二区视频网站| 日韩视频免费在线观看| 四虎高清无码| 亚洲一区在线免费观看| 午夜乱论| 国内精品一区二区三区| 国产成人精品无码| 日本黄色视频网| 欧美香蕉在线| 国产精品成人3p一区二区三区| 日韩欧美综合一区| 男女精品一区| 国产一级美女操逼视频免费播放| 无码少妇| 午夜操| 日本欧美在线| 国产伊人大香蕉| 五月开心激情网| 波多野结衣日韩| 国产高潮白浆喷| 免费网站观看www在线观| 日本爱爱免费播放视频| 成人AV在线资源| 久久中文无码| 国产精品色情A级毛片| 亚洲精品一区中文字幕乱码| 亚洲性爱AV网站| 久久久久久久久久国产精品免费观看-百度| 久久精品一区二区三区四区五区 | 久久久无码精品亚洲| 伊人网大香| 丁香五月激情小说| 91精品国产三级| 九九碰九九爱97超碰| 蜜桃网站在线观看| 2025国产成人精品一区| 波多野结衣在线网站| 午夜黄色小视频| 色综合天天综合| 一级黄色毛片视频| 在线免费观看视频黄| 各种BBwBBwBBwBBw| 久久蜜桃视频| www免费视频在线观看播放| 18禁污网站| 久热九九| 人妻AV无码| 青青草精品在线视频| 日韩欧美成人在线视频| 欧美激情影院| 九九九在线视频| 中文字幕高清无码视频| 99久久99久久久精品棕色圆 | 色婷婷一级A片AAA毛片| 亚洲av在线免费观看| 亚洲中文字幕免费| 99热都是精品| H片在线播放| 在线无码人妻| 麻豆乱码国产一区二区三区| 高清无码视频网站| 777AV| 国产又爽又黄免费视频免费观看| 97福利| 国产av资源| 色AV高清| 精品黄片| 日韩人妻无码一区二区三区七区 | 99热在线观看免费精品| 色色播播| 人人澡人人澡人人| 三级片小说| 久久少妇视频| 91人妻中文字幕在线精品| 亚洲综合色网| 国产一区二区三区18| 中文字幕在线看成人电影| 欧美亚洲成人精品| 国产精品无码久久久久成人app| 中文字幕日本欧美| 亚洲综合伊人无码| 伊人色色色| 51成人精品午夜福利| 亚洲成人h| 亚洲国产视频一区| 国产精品一区二区在线观看 | 色丁香五月婷婷| 7799精品| 亚洲综合色婷婷| 久久天天| 波多野无码| 青春草在线免费观看| 2022天天干| 日韩v片| 中文字幕免费在线观看视频| 欧美三级一级| 奇米一区| 护士小雪的yin荡高日记H视频| 日韩人妻无码一区二区| 亚洲精品区| 成人片成人网久久蜜桃臀| 2026无码视频| AV女优天堂| 五月婷婷视频在线观看| 青青操视频在线| a√天堂中文在线8| 大黄网站在线观看| 大香蕉在线精品视频| 国产黄色自拍视频| 六月丁香欧美综合| 99久久久久久久久久| 亚洲黄视频| 91精品久久香蕉国产线看观看| 天堂一区二区| 亚洲国产97| 97免费在线视频| A级毛片视频| 欧美在线免费视频| 91丨国产丨熟女熟女| 九九热在线观看| 三级网站在线| 在线aⅴ| 在线高清无码视频| AV免费网址| 亚洲成人AV在线播放| 91爱爱视频| 男女日皮视频| 成人蜜臀AV| 亚洲天堂视频网站| 日韩特一级| 国产欧美成人| 欧美日韩国产一区二区三区| 日韩精品高清中文| 中文字幕无码精品三级在线欧美| 亚洲第一色婷婷| 亚洲国产精品二二三三区| 2018天天干天天操| 国产高清在线视频| 国产免费一区二区三区四区| av无码不卡| 小明看台湾成人永久免费视频网站 | 亚洲男人天堂| 久久亚洲Aⅴ成人无码国产丝袜| 日本一区中文字幕| 在线伊人| 人妻无码在线视频| 日韩一区二区三区在线观看| 亚洲精品天堂无码| 天堂中文在线播放| 在线中文字幕AV| 亚洲无码免费在线| 91视频在线观看网| 国产成人69免费看| 韩国三级HD中文字幕的背景音乐 | 国产丨熟女丨国产熟女视频| 网络自拍亚洲激情| 俺去也av| www.豆花视频成人版| 2017天天干| 午夜无码视频| 丁香五月婷婷综合网| 亚洲丝袜av| 特级西西人体WWWWW| 黄色一级录像| 不卡一二三区| 台湾精品一区二区三区| 波多野结衣一区二区三区在线观看| 中文字幕日韩人妻在线| 色999网址| 爱爱爱爱网| 91av免费在线观看| 在线一区二区三区四区| 亚洲人操逼| 在线黄色视频网站| 授乳奶水x88MAV| 嫩BBB嫩BBB嫩BBB| 亚洲AV综合色区无码国产播放| 亚洲AV秘无码不卡在线观看 | 日韩区在线| AV资源在线播放| 国产av一区二区三区| 99久久久久久久久久| 六月婷婷网| 国产午夜在线| 中文字幕首页| 大地影视官网第三页入口| 日批网站视频| 日日碰狠狠| 国产在线观看mv免费全集电视剧大全 | 免费无码又爽又黄又刺激网站| 在线黄片视频| 欧美专区一区| 四川少妇搡bbw搡bbbb| 国产三级av在线| 亚洲在线免费观看| 成人手机在线视频| 影音先锋av资源网站| 超碰麻豆| 人人爽网站| 开心五月激情网| 精品一区二区视频| 在线观看免费欧美操逼视频| 美国无码| 成人视频在线观看黄色18 | 亚洲AV一二三| 成人电影综合网| 北条麻妃91| 成人国产欧美日韩在线视频| 天天综合天天| 色五月天婷婷| 天天天天毛片| 午夜视频在线看| 免费黄色成人视频| 少妇高潮av久久久久久| 亚洲黄色电影在线| 亚洲av中文| 91丨PORNY丨在线中文| 人妻天天爽夜夜爽| 成人片网址| 成人视频高清无码| 环亚无码| 无码视频免费在线观看| 四虎午夜福利| 京东一热本色道久久爱| 青青草av| 亚洲国产视频一区| 97超碰在| 欧美黄色网视频| 欧美在线中文| 日韩一级免费视频| 91人妻一区二区三区| 午夜福利成人网站| 黃色一级一片免费播放| 超碰av电影| 91人人爱| youjizzcom日本| 亚洲狼人综合网| 国产三级片在线免费观看| 败火老熟女ThePorn视频| 亚洲成人AAAAA| 91插逼| 操逼网视频| 亚洲人成小说| 午夜福利无码视频| 真人一级片| 久久精品大香蕉| 久久亚洲Aⅴ成人无码国产丝袜| 中文不卡在线| 黄色成人18| 国产精品自产拍| 天天天天天天操| 日韩AV无码网站| 国产黄片免费视频| wwwav| 青娱乐国产av| 三级精品| 日韩AV无码专区亚洲AV紧身裤| 性爱视频免费| 天天射综合| 北条麻妃在线一区二区| 中文国产| 中文字幕婷婷五月天| 91网站免费看| 11孩岁女精品A片BBB| 成人无码免费看| 中文字幕一区二区三区四区五区| 亚洲成人大片| 中文字幕日韩在线观看| 日韩wuma| 亚洲成人免费在线观看| 成人av影院| 777.av| www.黄色| 色色色热| 高清一区二区三区| 伊人精品| 学生妹毛片| 91亚洲精品国产成人| 亚洲三级久久| 欧美性猛交XXXX乱大交| 欧美A片在线| 色999网址| 毛片资源| 黄片一区| 国产97在线视频| 欧美性爱小说| 久久国产精品精品国产色婷婷| 国产无码高潮在线| 奇米av在线| 欧美日韩一级视频| 天天射中文| 一区二区三区在线免费观看| 亚洲一区图片| 日本操逼电影| jizz在线观看免费视频| 91人妻无码精品蜜桃| 中文字幕无码一区二区| 黄色在线视频网站| 日韩三级在线免费观看| 午夜精品影院| 新超碰在线观看| 国产不卡视频| 中文字幕日韩一| 俺去俺来WWW色官方| 日本高清一区二区高清免费视频| 国产精品无码免费视频| 悠悠AV导航| 日产精品久久久久| 九九r在线精品观看视频| 国产操逼免费视频| 国产成人电影免费在线观看| 久久国产精品一区二区三区| 色丁香视频在线观看的| 伊人久久视频| 暴操美女网站| 国产高清无码一区二区| 五月丁香视频在线| 四虎成人精品无码永久在线的客服| 国产女人免费| 91久久精品视频| 日韩精彩视频| 日韩在线成人| 特级西西444www高清大胆免费看 | 婷婷五月天视频| 色婷婷久久综合| 波多野结衣一区二区| 国产成人精品一区| 日韩人妻无码一区二区三区中文| 久久在线免费视频| 亚洲国产成人自拍| 国产无码免费在线观看| 无码任你操| 在线色片| 国产av日韩av| 99久久九九| 久操青青| 亚洲av不卡| 做爰视频毛片蜜桃| 精品AV国产| 美女啪啪视频| 国产中文字幕在线免费观看 | 黑人一级| 三级AV在线观看| 亚洲骚货| 影音先锋男人资源网| 中文字幕在线观看辣文| 亚洲免费黄色视频| 亚洲精品成人无码熟妇在线| 俺去啦在线| 蝌蚪窝在线视频免费观看| 99国产在线观看| 18禁污网站| 亚洲AV在线看| 亚洲乱码精品久久久久..| 久久九九视频| 欧美大香蕉在线| 亚洲ww国产a大作| 国产又爽又黄A片免费观看| 91三级在线观看| 国产人成视频免费观看| 国产又色又爽又黄又免费| 久久久久亚洲AV无码成人片| 毛片一区二区三区| 亚洲AV无码成人精品区在线欢看| 九九热毛片在线观看| 国产嫩BBwBBw高潮| 亚欧美日韩| 成人精品免费| 成人美女视频| 蜜臀激情| 四川少妇BBBB槡BBBB槡| 免费看黄色毛片| 中文字幕在线观看一区| 国产成人无码AⅤ片免费播放| 免费无码一区二区三区四区五区| 国产h视频在线观看| 天天综合天天| 免费看日P视频| 视频一区二区三区在线观看| 久久撸在线视频| 婷婷日韩| 色资源站| 久久黄色成人视频| 欧美日韩精品在线观看| 一区二区三区四区在线看| 麻豆成人无码| 国产成人精品三级麻豆| 黄色内射视频| 18禁网站网址| 色日韩| 三级片亚洲无码| 国产色秘乱码一区二区三区| 一级欧美日韩| 国产高清a| 秋霞91| 好吊视频一区二区| 91AV在线免费观看| 中文无码日韩| 九九综合久久| 婷婷午夜精品久久久久久| 91av天堂| 国产成人精品三级麻豆| 欧美精产国品一二三区别| 欧美爱| 黄色小视频在线观看| 中文字幕黄色| 日韩性爱视频在线播放| 日本无码视频在线观看| 天天日天天操天天摸天天干天日射天天插 | 亚洲无码AV片| AAA一区二区三区| 日韩免费av| 中文字幕欧美视频| 动漫人物插画动漫人物的视频软件 | 一级黄片免费视频| 性感欧美美女| 91探花视频| 亚洲第一成人网址| 亚洲乱码国产乱码精品天美传媒| h片免费在线观看| 久久国产精品免费视频| 亚洲日本一区二区三区| 六月伊人| 久久精品亚洲无码| 午夜试看120秒体验区的特点 | 黄色片视频免费| gogogo免费高清在线偷拍| 免费激情网站| 精品视频无码| 欧美国产在线观看| 天堂成人在线视频| 欧美视频二区| 欧美国产视频| 91精品国产乱码久久久久| 丁香五月天婷婷| 东京热无码免费视频| 超碰97在线精品国产| 日本特黄一级| 一区二区高清| 亚洲免费观看高清完整版在va线| 夜操操| 久久无码免费| 国产福利在线播放| 青青操逼网| 五月婷婷综合激情| 五月丁香花婷婷| 暖暖爱视频免费| 久久精品99久久久久久| 国产第五页| 国产女人操逼视频| 91豆花视频| 欧美成人精品在线| 广州媚黑妇系列视频在线| 国外亚洲成AV人片在线观看| 日逼图| 成人小说一区二区三区| 久视频在线观看| 懂色一区二区三区免费| 国产一级二级三级| 91超碰免费| 国产亚洲成人综合| 蜜乳AV一区二区三区| 男女爱爱动态图| 欧美日韩日逼| 波多野结衣大战黑人| 天天日天天干天天爽| 国产三级片在线观看| 军人妓女院BD高清片在线播放| 国产一级a毛一级a毛视频在线网站) | 欧美日韩国产成人在线| 精品无码一区二区三区在线| 无码人妻丰满熟妇区毛片蜜桃麻豆 | 亚洲成人在线免费| 亚洲三级无码视频| 一区二区亚洲| 久久大| 色资源站| 中文精品在线| 欧美福利电影| 在线观看欧美日韩视频| 亲子乱AⅤ一区二区三区| 久久免费视频1| 麻豆传媒免费观看| 亚洲精品18在线观看| 正在播放吴梦梦淫行| 3D动漫啪啪精品一区二| 欧美亚洲中文字幕| 日韩无码不卡视频| 久草视频在线免费播放| 国产A级成人婬片1976| 亚洲操B| 91人人人| 久久久久久久97| 91热爆TS人妖系列| 福利视频中文字幕| 永久免费看片视频5355| 亚洲色情电影| 操屄免费视频| 射死你天天日| 99re66| 亚洲成人在线视频免费观看| 国产美女一级特黄大片| 综合伊人| 俺也去av| 激情五月天丁香| 污污污污污www网站免费观看| 日本无码精品| 日韩无码波多野结衣| 最近中文字幕在线视频| 欧美在线a| 俺来也俺就去www色情网| 亚洲高清无码视频在线| 91西安站街老熟女露脸| 精品一区二区三区四区五区六区七区八区九区 | 日韩中文无码字幕| 风间由美大荫蒂无码AV| 天天干狠狠| 亚洲国产黄片| 成年人在线视频| 91香蕉视频在线播放| 999免费视频| 日韩婬乱片A片AAA真人视频| 日韩无码视屏| 国产91无码精品秘入口| 在线观看中文字幕视频| 日韩激情无码视频精选| 日韩操逼视频| 亚洲性爱在线观看| V天堂在线| 日韩高清无码人妻| 99久久精品国产一区二区成人 | 亚洲高清无码在线免费观看| 人人妻人人要| 一本色道综合久久欧美日韩精品| 久久久精品在线| 91久久久久久久久久久| 好吊视频一区二区三区红桃视频you| 啪啪啪免费网站| 加勒比精品| 日本少妇高潮| 亚洲av免费在线| 国产精品无码ThePorn| 欧美成人大片| 蜜桃视频日韩| av一区二区在线观看| 山东乱子伦视频国产| 啪啪啪av| 亚洲免费精品视频| 久久一级片| 青青操在线观看| 91精品综合| 亚洲一区二区三区在线| 激情五月天丁香| 黄色一级免费看| 无码黄漫| 在线观看亚洲一区| 激情丁香五月婷婷| 欧美性爱AAA| 亚洲黄色视频在线免费观看| 亚洲色视频在线| 五月丁香花婷婷| 日韩无码人妻一区二区三区| 久久精品亚洲| 无码中文字幕在线观看| 青青草无码视频| 综合无码| 人妻体内射精一区二区| 91蝌蚪在线| 2014AV天堂网| 99成人视频| 熟睡侵犯の奶水授乳在线| 国产丝袜在线视频| 色色色色五月| 奇米色婷婷| 日本韩国高清无码| 好吊妞在线观看| 成人精品一区日本无码网站suv/ | 特级毛片片A片AAAAAA| 91在线| 日韩操B视频| 91秦先生在线播放| 久久久久久97| 精品无码久久久| 天天爽天天爽成人A片影院| 国产精品自拍三级| 国产av资源网| 97国产在线观看| 亚洲码成人| 国产99精品视频| 久热免费视频在线观看| 黄色免费无码| 五月激情六月婷婷| 日韩AV无码一区二区| 熟女熟妇人妻一区二区三区| 色综合久久88色综合| 一本色道久久综合无码人妻四虎 | 亚洲无码在线播放视频| 国产区一区| 中文字幕一区二区三区在线观看 | 欧美第五页| 久久免费视频1| 在线观看网址你懂的| 一区二区三区无码高清| 亚洲人成免费| 91人妻人人澡人人澡人人精品| 91九色首页| 美女黄色免费网站| caopor在线| 亚洲熟女少妇| 欧美成人黄色| 成人av天堂| 麻豆mdapp03.tⅴ| 高清无码在线观看18| 国产AV中文字幕| 伊人久久影院| 欧美三级网| 人人草人人干| 国产AV激情| 国产99热| 国产高清做爱| 麻豆91网站| a片视频免费观看| 伊人精品大香蕉| 91精品国产一区二区三区四区大 | 日本的黄色视频| 免费成人在线网站| 91操视频| 精品吃奶一区二区三区视频| 午夜爱爱免费视频| 蜜臀精品色无码蜜臀AV| 欧美亚洲视频在线观看| 免费视频99| 精品人妻一区二区三区阅读全文 | 99色在线| 人人人人人操| 欧一美一婬一伦一区二区三区自慰 | 国产黄色免费观看| 欧美亚洲激情| av无码在线播放| 人人艹人人摸| 中文字幕A片无码免费看| 99精品在线| 天天躁狠狠躁夜躁2024| 亚洲欧美精品AAAAAA片| 色哟哟视频在线观看| 亚洲成人精品一区| 成人777777免费视频色| 伊香蕉大综综综合| 最新国产精品| 中文字幕不卡无码| 97超碰在| 插菊综合网| 亚洲AⅤ| 久久午夜无码鲁片午夜精品男男| 久久6热| 2021狠狠操| 人人妻日日摸狠狠躁视频| AV在线四季综合网站| 午夜AV福利| 91久久爱| 337p大胆色噜噜噜噜噜| 亚洲中文AV| wwwA片| 成人精东影业JDAV3密友| 四虎在线观看视频| 亚洲欧美日本在线| 在线播放亚洲| 国产精品内射视频| 亚洲视频免费在线播放| 一级黄色片视频| 亚洲www.| 天天干天天插| 欧美精品午夜福利无码| 蜜乳AV一区二区三区| 亚洲欧美在线视频免费| 久久伊思人在| 精品成人视频| 黑人无码AV黑人天堂无码AV| 亚洲国产高清无码| 在线观看中文字幕| 久草视频在线资源| 日B视频网站| 亚洲制服中文字幕| 亚洲少妇无码| 久操人妻| 精品久久久久久久久久| a在线观看| 99精品视频北条麻妃国产版| 国产伦理一区| 91精彩视频在线观看| 精品国产久| 精品码一区二在线观看| 蜜桃免费视频| 懂色中国闺密偷情懂色AV| 久久精品国产AV一区二区三区| 人人爱人人操人人干| 成人福利视频在线观看| 日本三级韩三级99久久| av中文字幕在线播放| 肏屄视频在线观看| 人人爱人人插高清| 大肉大捧一进一出免费阅读| 老太婆擦BBBB撩BBBB| 999一区二区三区| 一本色道久久综合熟妇| 成人黄色免费视频| 欧美婷婷五月| 少妇人妻一区二区三区| 黄色永久网站| 亚洲成av人无码| 狠狠操狠狠| AAA激情| 91大神在线免费观看| 亚洲成人免费在线| 搡中国东北老女人视频| 国产精品久久久久久久久久王安宇 | 精品91在线视频| www.日本黄色视频| 欧美日韩一区在线| 女毛片| 波多野结衣网| 成人H在线| 中文字幕在线免费播放| 亚洲天堂综合网| 三级A片| 5252a我爱haose01我愿 | 免费在线观看黄色片| 欧美国产日韩在线| 免费黄色小视频| 精品多人P群无码视频| 一区二区无码av| 欧美性夜黄A片爽爽免费视频| 中文字幕AV在线观看| 丝袜内射| 伊人久久久久久久久久久| 亚洲天堂无码AV| 久久aa| 欧美激情一区二区| 69视频在线免费观看| 亚州视频在线观看| 看一级黄色片| 亚洲va国产va天堂va久久| 午夜成人福利视频在线观看 | 亚洲精品中文字幕成人片| 波多野在线视频| 国产精品大香蕉| 97爱爱视频| 91AV一区二区| 中文字幕久久人妻无码精品蜜桃| 黄色欧美视频| 久久久精品国产视频| 亚洲第一黄色视频| 天堂在线www| 久久黄色视频网站| 校园春色成人| 亚洲狼人综合网| 欧美亚洲中文| 激情丁香五月| 在线日韩一区二区| 亚洲日韩欧美中在线| 操逼在线免费观看| 日韩无码高清视频| 影音先锋91视频| 国产精品视频99| 伊人久久大香线蕉av一区| 亚洲第一中文字幕网| 免费观看黄片视频| 俺去俺来WWW色官方| 蜜桃av秘无码一区二区| www.在线播放| 亚洲91成人| 亚洲综合社区| 久操| 欧美三级视频在线| 四虎成人免费视频| 国产美女自慰网站| 天堂黄片| 操逼网五月天| 色婷婷Av| 欧美日韩中国操逼打炮| 11一12周岁女毛片| 日日日操| 青青草超碰| 久久久久亚洲AV成人片乱码| 河南熟妇搡BBBB搡BBBB| 影音先锋AV啪啪资源| 亚洲欧美精品AAAAAA片| 五月六月婷婷| 日韩无码视| 欧美一二三区黄色免费视屏| 大香蕉偷拍视频| 操片| 特黄视频| 亚洲毛片亚洲毛片亚洲毛片| 3344在线观看免费下载视频| 黄色伊人| 婷婷另类小说| 东方AV在线免费观看| 蜜桃免费视频| 久操B网| 亚洲欧美第一页| 内射视频在线观看| 毛片学生妹| 日韩不卡AV| 久草视频网站| 日本不卡在线观看| 亚洲国产无码在线观看| 人人摸人人艹| 午夜免费AV| 日木毛片| 国产成人99久久亚洲综合精品| 午夜亚洲AV永久无码精品麻豆| 国产成人亚洲综合AV婷婷| 大黑鸡巴视频| 黄色免费福利视频| 色视频在线观看免费| AV电影在线观看| 国产嫩草影院| 久久久黄色视频| 成人在线视频观看|