日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql change index_MySQL · 引擎特性 · Innodb change buffer介绍

發布時間:2023/12/10 数据库 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql change index_MySQL · 引擎特性 · Innodb change buffer介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

在前面幾期月報我們介紹了undo log、redo log以及InnoDB如何崩潰恢復來實現數據ACID的相關知識。本期我們介紹另外一種重要的數據變更日志,也就是InnoDB change buffer。 Change buffer的主要目的是將對二級索引的數據操作緩存下來,以此減少二級索引的隨機IO,并達到操作合并的效果。

在MySQL5.5之前的版本中,由于只支持緩存insert操作,所以最初叫做insert buffer,只是后來的版本中支持了更多的操作類型緩存,才改叫change buffer,這也是為什么代碼中有大量的ibuf前綴開頭的函數或變量。為了表達方面,本文也將change buffer縮寫為ibuf。

由于歷史上ibuf的數據格式曾發生過多次變化,本文討論的相關內容基于如下設定:

版本為5.5及之后的版本,不涉及舊版本的邏輯,innodb_change_buffering 設置為ALL,表示緩存所有操作。

ibuf btree

change buffer的物理上是一顆普通的btree,存儲在ibdata系統表空間中,根頁為ibdata的第4個page(FSP_IBUF_TREE_ROOT_PAGE_NO)。

一條ibuf 記錄大概包含如下列:

ibuf btree通過三列(space id, page no , counter)作為主鍵來唯一決定一條記錄,其中counter是一個遞增值,目的是為了維持不同操作的有序性,例如可以通過counter來保證在merge時執行如下序列時的循序和用戶操作順序是一致的:INSERT x, DELETE-MARK x, INSERT x。

在插入ibuf記錄前我們是不知道counter的值的,因此總是先將對應tuple的counter設置為0xFFFF,然后將cursor以模式PAGE_CUR_LE定位到小于等于(space id, page no, 0xFFFF)的位置,新記錄的counter為當前位置記錄counter值加1。

ibuf btree最大默認為buffer pool size的25%,當超過25%時,可能觸發用戶線程同步縮減ibuf btree。為何要將ibuf btree的大小和buffer pool大小相關聯呢 ? 一個比較重要的原因是防止ibuf本身占用過多的buffer pool資源。

ibuf bitmap

由于ibuf 緩存的操作都是針對某個具體page的,因此在緩存操作時必須保證該操作不會導致空page 或索引分裂。

針對第一種情況,即避免空page,主要是對purge線程而言,因為只有purge線程才會去真正的刪除二級索引上的物理記錄。在準備插入類型為IBUF_OP_DELETE的操作緩存時,會預估在apply完該page上所有的ibuf entry后還剩下多少記錄(ibuf_get_volume_buffered),如果只剩下一條記錄,則拒絕本次purge操作緩存,改走正常的讀入物理頁邏輯。

針對第二種情況,InnoDB通過一種特殊的page來維護每個數據頁的空閑空間大小,也就是ibuf bitmap page,該page存在于每個ibd文件中,具有固定的page no,其文件結構如下圖所示:

ibuf bitmap使用4個bit來描述一個page:

IBUF_BITMAP_FREE:使用2個bit來描述空閑空間大小,以16KB的page size為例,能表示的空閑空間范圍為0(0 bytes)、1(512 bytes)、2(1024 bytes)、3(2048 bytes)。很顯然,能夠緩存的二級索引記錄最大不可能超過2048字節。

由于只有INSERT操作才可能導致page記錄滿,因此只需要對IBUF_OP_INSERT類型的操作進行判斷:

ibuf_insert_low:

if (op == IBUF_OP_INSERT) {

ulint bits = ibuf_bitmap_page_get_bits(

bitmap_page, page_no, zip_size, IBUF_BITMAP_FREE,

&bitmap_mtr);

if (buffered + entry_size + page_dir_calc_reserved_space(1)

> ibuf_index_page_calc_free_from_bits(zip_size, bits)) {

/* Release the bitmap page latch early. */

ibuf_mtr_commit(&bitmap_mtr);

/* It may not fit */

do_merge = TRUE;

ibuf_get_merge_page_nos(FALSE,

btr_pcur_get_rec(&pcur), &mtr,

space_ids, space_versions,

page_nos, &n_stored);

goto fail_exit;

}

}

其中ibuf_bitmap_page_get_bits函數根據space id 和page no 獲取對應的bitmap page,找到空閑空間描述信息;如果本次插入操作可能超出限制,則從當前cursor位置附近開始,觸發一次異步的ibuf merge,目的是盡量將當前page的緩存操作做一次合并。

在正常的對物理頁的DML過程中,如果page內空間發生了變化,總是需要去更新對應的IBUF_BITMAP_FREE值。參考函數:btr_compress、btr_cur_optimistic_insert。

IBUF_BITMAP_BUFFERED:用于表示該page是否有操作緩存,在ibuf_insert_low函數中,準備插入ibuf btree前設置成true。二級索引物理頁讀入內存時會根據該標記位判斷是否需要進行ibuf merge操作。

IBUF_BITMAP_IBUF:表示該數據頁是否是ibuf btree的一部分,該標記位主要用于異步AIO讀操作。InnoDB專門為change buffer模塊分配了一個后臺AIO線程,如果page屬于change buffer的b樹,則使用該線程做異步讀,參考函數:ibuf_page_low

操作類型

InnoDB change buffer可以對三種類型的操作進行緩存:INSERT、DELETE-MARK 、DELETE操作,前兩種對應用戶線程操作,第三種則由purge操作觸發。

用戶可以通過參數innodb_change_buffering來控制緩存何種操作:

/** Allowed values of innodb_change_buffering */

static const char* innobase_change_buffering_values[IBUF_USE_COUNT] = {

"none", /* IBUF_USE_NONE */

"inserts", /* IBUF_USE_INSERT */

"deletes", /* IBUF_USE_DELETE_MARK */

"changes", /* IBUF_USE_INSERT_DELETE_MARK */

"purges", /* IBUF_USE_DELETE */

"all" /* IBUF_USE_ALL */

};

innodb_change_buffering默認值為all,表示緩存所有操作。注意由于在二級索引上的更新操作總是先delete-mark,再insert新記錄,因此update會產生兩條ibuf entry。

緩存條件

只有滿足一定條件時,操作才會被緩存,所有對ibuf操作的判斷,都從btr_cur_search_to_nth_level入口,該函數用于定位到btree上滿足條件的記錄,大概的判斷條件如下:

用戶設置了選項innodb_change_buffering;

只有葉子節點才會去考慮是否使用ibuf;

對于聚集索引,不可以緩存操作;

對于唯一二級索引(unique key),由于索引記錄具有唯一性,因此無法緩存插入操作,但可以緩存刪除操作;

表上沒有flush 操作,例如執行flush table for export時,不允許對表進行 ibuf 緩存 (通過dict_table_t::quiesce 進行標識)

參考函數:ibuf_should_try:

當滿足ibuf緩存條件時,會使用兩種模式去嘗試獲取數據頁:

BUF_GET_IF_IN_POOL: 如果數據頁在內存中,則獲取page并返回,否則返回NULL;

BUF_GET_IF_IN_POOL_OR_WATCH:如果數據頁在內存中,則獲取page并返回,否則為請求的page設置一個`sentinel`(buf_pool_watch_set),相當于標記這個page,表示這個page上的記錄正在被purge。(下一小節介紹)

前者是前臺用戶線程觸發,后者為purge線程在物理清除無效數據時觸發,如果數據已經在內存中了,則不進行緩存。隨后進入函數ibuf_insert,經過一系列的檢查后(不可產生空page 和索引分裂、未超出最大ibuf size限制)執行操作緩存。

purge操作緩存

對于purge操作,當page不存在于內存時設置的sentinel是什么鬼?它是如何設置的,什么時候會被清理掉,這幾個問題涉及到purge操作的緩存流程:

如何設置sentinel

當purge線程嘗試讀入page時,若數據頁不在buffer pool中,則調用函數buf_pool_watch_set,分為兩步:

Step1: 首先檢查page hash,如果存在于page hash中:1)若未被設置成sentinel (別的線程將數據頁讀入內存時會清理掉對應標記),返回數據頁;2)否則返回NULL;

Step2: 若page hash中不存在,則從buf_pool_t::watch數組中找到一個空閑的(狀態為BUF_BLOCK_POOL_WATCH)page控制結構體對象buf_page_t,將其狀態設置為BUF_BLOCK_ZIP_PAGE,初始化相關變量,并插入到page hash中。buf_pool_t::watch數組的大小為purge線程的個數,這意味著即使所有purge線程同時訪問同一個buffer pool instance,總會擁有一個空閑的watch數組對象。

判斷是否可以緩存purge操作

當設置sentinel并返回后,在決定緩存purge之前,需要去判斷是否有別的線程對同一條記錄緩存了新的操作,舉個簡單的例子:

Step 1: delete-mark X (sec index) //session 1

Step 2: insert X (clust index) //session 1

Step 3: delete X(sec index) //purge thread

Step 4: insert X (sec index) //session 1

如果二級索引頁在內存中,那么Step 3 和Step4必然是有序的,因為需要獲取block鎖才能進行數據變更操作。但數據頁不在內存時,就需要確保Step 4在Step 3之后執行。因此在緩存purge操作之前,需要根據當前要清理的記錄,找到對應的聚集索引記錄,并檢查相比當前purge線程的readview是否有新版本的聚集索引記錄(即有新的插入操作發生)。

如果檢查到有新的插入,則本次purge操作直接放棄。因為當符合一定條件時,Step 4的操作可以直接把Step1產生的記錄刪除標記清除掉,重用物理空間。

參考函數:row_purge_poss_sec:

但是注意上述檢查流程結束時,會在函數row_purge_poss_sec中將mtr提交掉,對應的聚集索引頁的Latch會被釋放掉,這意味著可能出現如下序列:

Step 1: delete-mark X;

Step 2: delete X,purge線程為其設置watch,并完成在函數row_purge_poss_sec中的檢查,準備插入ibuf

Step 3: insert X,索引頁不在內存,準備插入ibuf

在函數ibuf_insert中,針對IBUF_OP_INSERT和IBUF_OP_DELETE_MARK操作,會去檢查是否對應的二級索引頁被設置成sentinel(buf_page_get_also_watch),如果是的話,表明當前有一個pending的purge操作,目前的處理邏輯是放棄insert和delete-mark的緩存操作,轉而讀取物理頁。

綜上,如果purge操作先進入ibuf_insert,則對應二級索引頁的watch必然被設置,insert操作將放棄緩存,轉而嘗試讀入索引頁;如果insert先進入ibuf_insert,則purge操作的緩存放棄。

即使Purge線程完成一系列檢查,進入緩存階段,這時候用戶線程依舊可能會去讀入物理頁;有沒有可能導致purge操作丟失呢 ?答案是否定的!因為purge線程在緩存操作時先將cursor定位到ibuf btree上,對應的ibuf page已將加上latch;而用戶線程如果讀入物理頁,為了merge ibuf entry,也需要請求page latch;當purge線程在拿到latch后,會再檢查一次看看物理頁是否已讀入內存(buf_pool_watch_occurred),如果是的話,則放棄本次緩存。

何時清理sentinel

有兩種情況會清理sentinel:

第一種情況是purge操作完成緩存后(或者判斷無法進行purge緩存)進行清理;

第二種情況是從磁盤讀入文件塊的時候,會調用buf_page_init_for_read->buf_page_init初始化一個page對象。這時候會做一個判斷,如果將被讀入的page被設置為sentinel(在watch數組中被設置),則調用buf_pool_watch_remove將其從page hash中移除,對應bp->watch的數據元素被重置成空閑狀態。

ibuf merge

有以下幾種場景會觸發ibuf merge操作:

用戶線程選擇二級索引進行數據查詢,這時候必須要讀入二級索引頁,相應的ibuf entry需要merge到Page中。

當嘗試緩存插入操作時,如果預估page的空間不足,可能導致索引分裂,則定位到嘗試緩存的page no在ibuf btree中的位置,最多merge 8個(IBUF_MERGE_AREA) page,merge方式為異步,即發起異步讀索引頁請求。

參考函數:ibuf_insert_low —> ibuf_get_merge_page_nos_func

若當前ibuf tree size 超過ibuf->max_size + 10(IBUF_CONTRACT_DO_NOT_INSERT)時,執行一次同步的ibuf merge(ibuf_contract),merge的page no為隨機定位的cursor,最多一次merge 8個page,同時放棄本次緩存。

其中ibuf->max_size默認為25% * buffer pool size,百分比由參數innodb_change_buffer_max_size控制,可動態調整。

參考函數:ibuf_insert_low —> ibuf_contract

若本次插入ibuf操作可能產生ibuf btree索引分裂(BTR_MODIFY_TREE)時:

當前ibuf->size < ibuf->max_size, 不做處理;

當前ibuf->size >= ibuf->max_size + 5 (IBUF_CONTRACT_ON_INSERT_SYNC)時,執行一次同步ibuf merge,位置隨機;

當前Ibuf->size介于ibuf->max_size 和ibuf->max_size +5 之間時。執行一次異步ibuf merge,位置隨機。

參考函數:ibuf_insert_low —> ibuf_contract_after_insert

后臺master線程發起merge

master線程有三種工作狀態:

IDLE:實例處于空閑狀態,以100%的io capacity來作merge操作:

n_pages = PCT_IO(100);

相當于一次merge的page數等于innodb_io_capacity

參考函數:srv_master_do_idle_tasks

ACTIVE:實例處于活躍狀態,這時候會以如下算法計算需要merge的page數:

/* By default we do a batch of 5% of the io_capacity */

n_pages = PCT_IO(5);

mutex_enter(&ibuf_mutex);

/* If the ibuf->size is more than half the max_size

then we make more agreesive contraction.

+1 is to avoid division by zero. */

if (ibuf->size > ibuf->max_size / 2) {

ulint diff = ibuf->size - ibuf->max_size / 2;

n_pages += PCT_IO((diff * 100)

/ (ibuf->max_size + 1));

}

mutex_exit(&ibuf_mutex);

可見在系統active時,會以比較溫和的方式去做merge,如果當前ibuf btree size超過最大值的一半,則嘗試多做一些merge操作。

參考函數: srv_master_do_active_tasks

SHUTDOWN:當執行slow shutdown時,會強制做一次全部的ibuf merge

參考函數:srv_master_do_shutdown_tasks

對某個表執行flush table 操作時,會觸發對該表的強制ibuf merge,例如執行:

flush table tbname for export;

flush table tbname with read lock;

實際上強制ibuf merge主要是為flush for export準備的,當執行該命令后,為了保證能安全的將ibd拷貝到其他實例上, 需要對該表應用全部的ibuf 緩存。

參考函數:row_quiesce_table_start

“著名” bug

在change buffer的應用史上,最著名的bug要屬 bug#61104,其現象為當實例意外crash后,無法從崩潰中恢復,錯誤日志中報如下斷言:

InnoDB: Failing assertion: page_get_n_recs(page) > 1

最初官方花了很長的時間都沒有找到這個問題的root cause,只能加了一些代碼邏輯避免不斷crash重啟,讓用戶有機會登錄實例,重建二級索引。

后來Percona的開發人員Alexey Kopytov在bug#66819 提出了該問題的根本原因,指出ibuf entry的刪除和merge 并不是一個原子的操作(即處于兩個mtr事務中),當merge ibuf的mtr提交后crash,就可能在重啟時重復做ibuf merge。如果上次執行DELETE操作導致對應索引頁上記錄數只剩下一條,第二次apply時認為本次操作會產生空頁,從而導致斷言錯誤。

官方很快根據Alexey的意見做了修復,修復方式也比較簡單:

在第一個mtr里,merge ibuf entry 到二級索引頁,并標記刪除ibuf entry,提交mtr;

在第二個mtr里,執行真正的悲觀刪除ibuf entry;

在執行merge操作前,對于被delete mark的ibuf entry,不做merge操作。

具體的參考函數:ibuf_merge_or_delete_for_page 和 ibuf_delete_rec。

比較烏龍的是,我們發現第一次修復并沒有處理purge線程產生的delete緩存;我們將該發現公布到社區,很快得到了響應,并由上游快速fix掉了,因此完整的補丁分布在兩個版本中:

總結

以上是生活随笔為你收集整理的mysql change index_MySQL · 引擎特性 · Innodb change buffer介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

亚洲精品免费在线观看视频 | 久二影院| 色综合久久久久久久 | 国产麻豆精品免费视频 | 国内精品久久久久影院男同志 | 91免费高清 | 国产婷婷精品av在线 | 五月婷婷激情六月 | 五月香视频在线观看 | 久久人人爽人人人人片 | 国产一区二区三区四区在线 | 欧美日韩不卡一区二区 | 国产精品毛片久久久久久久久久99999999 | 久久在草| 精品国产伦一区二区三区观看方式 | 色视频国产直接看 | av理论电影 | 欧美日韩在线观看视频 | 日本乱码在线 | 色在线观看网站 | 免费合欢视频成人app | av一区在线| 欧美视频xxx | 日韩欧美在线中文字幕 | 人人狠狠综合久久亚洲婷 | 亚洲精品乱码久久久久久蜜桃动漫 | 欧美a级一区二区 | 91理论片午午伦夜理片久久 | 欧美精品久久久久久久久久白贞 | 日本最新高清不卡中文字幕 | 九九热久久免费视频 | 天天性天天草 | 欧美午夜寂寞影院 | 久久高清视频免费 | 最近中文字幕mv免费高清在线 | 久久国内视频 | 国产黄 | 久草精品视频 | 日韩精品网址 | 国产亚州精品视频 | 国产a精品 | 久久最新| 97视频资源 | 久久久三级视频 | 狠狠干夜夜操 | 日日日干 | 欧美日韩综合在线观看 | 97超碰免费在线 | 伊人婷婷在线 | 天天操福利视频 | 国产一区二区三区免费观看视频 | 97在线观看视频免费 | 草久电影 | 国产91aaa | 在线看国产一区 | 最新av中文字幕 | 五月婷婷开心中文字幕 | 欧美日韩中文在线视频 | 久久好看免费视频 | 天天操夜夜做 | 国产精品porn | 国产成人一区二区在线观看 | 成人a大片 | 99r精品视频在线观看 | 伊人成人久久 | 久久免费黄色 | 人人爽人人乐 | 精品久久免费 | 99re亚洲国产精品 | 国产成人精品一区二区三区网站观看 | 91精品国产综合久久婷婷香蕉 | 99综合电影在线视频 | 97在线播放视频 | 九九免费视频 | 精品美女国产在线 | 久久久精品国产一区二区 | 午夜黄色大片 | 中文字幕永久在线 | 久久亚洲专区 | av黄色在线 | 午夜视频在线瓜伦 | 国产系列在线观看 | 91精品色| 欧美性做爰猛烈叫床潮 | 日韩理论 | 精品国产一区二区三区不卡 | 色亚洲激情| 免费在线观看视频a | 探花视频网站 | 国产永久免费高清在线观看视频 | 99久久99久国产黄毛片 | 国产亚洲成av片在线观看 | 免费看黄色小说的网站 | 国产欧美久久久精品影院 | 激情综合色播五月 | 日韩三级av | 久色小说| 国产成人精品aaa | 天天干天天干天天干天天干天天干天天干 | 国产精品久久久久久久久久东京 | 中文字幕在线一区观看 | 国产又粗又猛又爽又黄的视频先 | 国产亚洲一区二区在线观看 | 欧美黑人xxxx猛性大交 | 亚洲国产精品500在线观看 | 蜜臀av夜夜澡人人爽人人 | 国产视频不卡 | 欧美色图视频一区 | 国产人在线成免费视频 | 三级动图 | 久草在线资源免费 | 99热手机在线 | 久久不射电影网 | 国产高清在线一区 | 在线一二区 | 欧美一区二区三区免费看 | 日日天天狠狠 | 亚洲国产中文字幕在线观看 | 丁香花在线视频观看免费 | 欧美日韩国产在线精品 | 日韩肉感妇bbwbbwbbw | 国产一级免费观看 | 国产精品久久久久9999 | 天天干天天玩天天操 | 草久久av | 四虎亚洲精品 | 97在线免费观看 | 91精品久久久久久久久久久久久 | 欧美91精品久久久久国产性生爱 | 国产黄影院色大全免费 | 免费福利小视频 | 亚洲精品国偷拍自产在线观看蜜桃 | 欧美一区二区三区在线视频观看 | 国产我不卡 | 视频在线一区二区三区 | 国产精品久久久999 国产91九色视频 | 中文字幕丰满人伦在线 | 成人avav| 99re8这里有精品热视频免费 | 国产成人精品一区二三区 | 国产高清在线视频 | 久久久国产一区二区三区 | 亚洲精品久久久久www | 久久亚洲精品电影 | 天天干夜夜操视频 | 黄色国产高清 | 久久婷婷激情 | 亚洲精品一区二区三区新线路 | 久久精品成人欧美大片古装 | 欧美黑吊大战白妞欧美 | 97热久久免费频精品99 | 黄色免费电影网站 | 国产精品一区二区免费 | 午夜国产福利在线 | 欧美人人| 九九热精品视频在线播放 | 日韩在线精品 | 人人超碰人人 | 精品伦理一区二区三区 | 中文字幕在线观看视频一区 | 天天做夜夜做 | 国产精品一区二区三区电影 | 天天色 天天 | 狠狠干在线播放 | 亚洲成av人片在线观看香蕉 | 国产成人精品一区二区三区福利 | 久久黄色免费观看 | 日日爱av | 欧美 日韩 性 | 免费的黄色av | 久久免费播放 | 99免费精品| 欧美网址在线观看 | 亚洲影视九九影院在线观看 | 午夜精品一区二区三区在线播放 | 亚洲免费精品视频 | 亚洲天堂自拍视频 | 中文字幕国产一区二区 | 国产99一区视频免费 | 国产激情久久久 | 久久99国产一区二区三区 | 日韩欧美一区二区三区在线观看 | 免费在线观看毛片网站 | 色在线网 | 国产成人精品综合久久久 | 一区二区三区高清在线 | 综合网五月天 | 久久免费国产精品1 | 人人舔人人射 | 五月天丁香 | 欧美国产不卡 | 毛片.com| 色婷婷激情 | 在线看片成人 | 久久在线观看视频 | 国产丝袜网站 | 狠狠网 | 97超碰色偷偷 | 中文字幕在线视频一区 | 韩日精品中文字幕 | 欧美午夜激情网 | 久草在线免费播放 | 国产高清综合 | 天天人人综合 | 欧美成人69av | 激情综合网五月 | 五月亚洲综合 | 国产精品久久久久永久免费看 | 精品国产一区二区三区日日嗨 | 日韩成片 | 欧美精品国产综合久久 | 青青草国产精品视频 | 丝袜美女视频网站 | 久久精品这里热有精品 | 亚洲1区 在线 | 天干啦夜天干天干在线线 | 激情欧美在线观看 | 国产真实在线 | 亚洲免费av在线播放 | 久久国产色 | 色综合天天 | 99久精品| 国产精品久久久久久久久久久杏吧 | 在线观看91精品视频 | 激情久久综合 | 亚洲国产日韩欧美 | 九草在线视频 | 黄色免费高清视频 | 亚洲一区二区视频在线 | 在线看av网址 | 五月婷婷色综合 | 成人免费色 | 四虎成人av| 欧美视频二区 | 久久久受www免费人成 | 免费看的黄色 | 91黄色影视| 国产精品97| 国产高清久久久久 | 国产精品中文字幕在线播放 | 91精品啪 | 国产亚洲成人网 | 在线观看免费成人av | 又大又硬又黄又爽视频在线观看 | 日本精油按摩3 | 二区三区毛片 | 中文字幕第一页在线 | 激情开心站 | 在线免费高清 | 免费黄色在线网站 | 中文字幕欲求不满 | 国产在线91在线电影 | 黄色三级在线观看 | 国产一区成人在线 | 天天干天天操av | 2023天天干 | 欧美片网站yy | 日韩视频一区二区 | 97超碰伊人 | 午夜手机电影 | av免费片 | 中文字幕 在线 一 二 | 9热精品| 国产精品久久久久久久久久免费看 | 激情婷婷色 | 中文字幕中文 | 日韩特级毛片 | 日韩二区在线 | .国产精品成人自产拍在线观看6 | 国产日韩一区在线 | www99精品 | 久久久久中文 | 久久精品电影网 | 丁香免费视频 | 久久精品国产一区二区 | 在线看国产日韩 | 欧美精品黑人性xxxx | 日韩精品资源 | 久久久久久久久久久电影 | 丁香久久综合 | 高清av网站 | 亚洲 欧美 日韩 综合 | 亚洲开心激情 | 欧美日韩高清在线观看 | 天天干 天天摸 天天操 | a视频免费看 | 亚州激情视频 | 99精品视频在线观看播放 | 日本中文字幕网站 | 又黄又爽又色无遮挡免费 | 综合久久久 | 国产一级在线观看视频 | 国产h片在线观看 | 国产精品久久毛片 | 看黄色91 | 99久久婷婷国产精品综合 | 国产 中文 日韩 欧美 | 99久久久久久久久久 | 国产一区二区三区在线免费观看 | 99精品一区 | 精品国产一二三 | 免费在线观看成年人视频 | 久久99最新地址 | 成人一区二区三区中文字幕 | 狠狠狠色丁香婷婷综合久久88 | 999在线观看视频 | 视频成人永久免费视频 | 正在播放亚洲精品 | 米奇四色影视 | 少妇bbbb揉bbbb日本 | 精品国产免费人成在线观看 | www天天干| 久久久久免费精品视频 | 狠狠狠色狠狠色综合 | 国产成免费视频 | 亚州精品在线视频 | 欧美日韩国产伦理 | 夜夜操网站 | 三级av在线| 天天操夜夜想 | 日韩av在线看 | 久香蕉 | www成人精品| 国产精品一区二区三区免费看 | 日本精品va在线观看 | 91视频在线国产 | 97精品国产一二三产区 | 精品久久网 | www.99久久.com | 97久久精品午夜一区二区 | 亚洲精品美女久久久久 | 国产精品久久久久免费观看 | 狠狠干天天操 | 国产第一页在线观看 | 久九视频| 日日夜夜天天久久 | 亚洲综合激情 | 日韩精品欧美专区 | 国产69精品久久app免费版 | 久久精品影视 | 免费99精品国产自在在线 | 97福利社| 亚洲91精品在线观看 | 黄色aaa级片 | 91精品推荐 | 麻豆免费视频 | 久久国语露脸国产精品电影 | 丁香婷婷成人 | 日本在线观看一区二区 | 久久精品免费电影 | 91大神一区二区三区 | 人人干干人人 | 国产一区观看 | 在线免费观看一区二区三区 | 国产精品中文 | 免费网站色 | 久久激情视频 久久 | 久久人人爽视频 | 欧美日韩3p | 亚洲欧美在线视频免费 | 国产精品无av码在线观看 | 国产视频日韩 | 国产精品久久久久久高潮 | av免费在线网站 | 成人av在线直播 | 久久精品视频4 | 中文字幕永久 | 在线看欧美 | 天天操操操操操 | 精品国产资源 | 青青河边草观看完整版高清 | 中文在线免费观看 | 国产高清视频免费在线观看 | 97视频免费 | 欧美激情精品久久久久 | 免费在线观看毛片网站 | 丁香 婷婷 激情 | 粉嫩一二三区 | 久久久久久免费视频 | 91干干干| 成人欧美日韩国产 | 精品免费国产一区二区三区四区 | 亚洲精品女 | 欧美analxxxx| 91c网站色版视频 | 亚洲手机天堂 | 国产一区二区在线免费视频 | 一区二区三区免费播放 | 国产精品v欧美精品 | 日韩欧美在线视频一区二区 | 99国产在线观看 | 色婷婷色 | 成年人黄色大片在线 | av福利免费| 亚洲精品免费在线 | 手机看国产毛片 | av在线免费观看不卡 | 久久综合五月天婷婷伊人 | 狠狠色噜噜狠狠狠狠 | 91最新视频 | 欧美最爽乱淫视频播放 | 久草网在线视频 | 狠狠插狠狠操 | 综合久久一本 | 怡春院av | 国产精品99久久免费黑人 | 日韩中文字幕免费在线播放 | 91成人精品在线 | 麻豆系列在线观看 | 91九色成人蝌蚪首页 | 四虎亚洲精品 | 激情综合网婷婷 | 在线观看视频一区二区 | av电影不卡在线 | 久久久精品福利视频 | av直接看 | 日韩欧美在线视频一区二区 | 国产网站在线免费观看 | 操操综合网 | 日韩精品欧美专区 | 九九热精品视频在线播放 | 国产人成看黄久久久久久久久 | 精品综合久久 | 白丝av在线 | 九九综合九九综合 | 国产视频资源 | 黄色亚洲片 | 亚洲成a人片在线观看网站口工 | 黄色网在线播放 | 久久综合婷婷综合 | 精品av在线播放 | 在线观看视频黄 | se婷婷| 五月天堂色 | 美女很黄免费网站 | 日韩电影中文字幕在线观看 | 亚洲另类视频在线观看 | 午夜性盈盈 | av天天在线观看 | wwxxxx日本| 成人黄色av免费在线观看 | 日本精品视频在线观看 | 婷婷久久一区二区三区 | 国产亚洲精品电影 | 日韩在线免费视频 | 香蕉影院在线观看 | 超碰夜夜 | 国产精品自拍在线 | 欧美激情精品久久久久久变态 | 日韩a在线| 91资源在线播放 | 国产精品久久久久久一区二区三区 | 偷拍福利视频一区二区三区 | 欧美日比视频 | 亚洲欧美视频在线播放 | 最新av电影网站 | 久久久久一区二区三区四区 | 天天干天天操天天操 | av在线播放中文字幕 | 亚洲精色 | 精品久久久久久久久久久院品网 | www黄免费 | 99精品国产福利在线观看免费 | 日韩欧美在线观看一区二区 | 一二区精品 | 国产一区二区三区免费观看视频 | 少妇高潮流白浆在线观看 | 五月天综合网站 | 天天射天天爱天天干 | 欧美激情综合五月色丁香 | 97在线观看免费高清 | 日韩久久精品一区二区 | 日本成人黄色片 | 欧美男同视频网站 | 日韩在线视频观看 | 91手机电视 | 亚洲黄色av网址 | 涩av在线 | 中文一区二区三区在线观看 | 中文在线a∨在线 | 欧美成人69av | 国产在线观看高清视频 | 中文欧美字幕免费 | 国产视频2 | 亚洲午夜精品久久久 | 岛国av在线不卡 | 亚洲天堂激情 | 91桃色国产在线播放 | 久草在线久草在线2 | 国产色黄网站 | 婷婷丁香色 | 日日夜日日干 | 国产在线精品二区 | 日本aaa在线观看 | 色爱区综合激月婷婷 | 亚洲黄色高清 | 欧美综合在线视频 | 免费视频一二三区 | 日本在线视频网址 | 久久69精品 | 欧美日韩国产在线观看 | 欧美国产日韩在线观看 | av不卡免费在线观看 | 久久久久免费看 | www.五月激情.com | 手机在线永久免费观看av片 | 操操日日 | 色婷婷亚洲 | 国产黄色特级片 | 日韩欧美在线播放 | 国产视频在 | 久久8精品 | 99色免费 | 在线色视频小说 | 亚洲人成影院在线 | 午夜久久久精品 | 在线播放视频一区 | 久草在线免费色站 | 一本一本久久a久久精品综合 | 久久久免费播放 | 97视频在线观看成人 | 中文字幕av免费观看 | 婷婷综合久久 | 国偷自产视频一区二区久 | 国产精品一区二区久久国产 | 韩日精品在线观看 | 9i看片成人免费看片 | 欧美a级片网站 | av免费观看在线 | 91精品视频免费在线观看 | www.狠狠色| 一区二区影院 | 成人av免费 | 在线看黄色av | 国产视频在线免费观看 | 国产精品99在线播放 | 精品久久国产精品 | 亚洲精品久久久蜜桃直播 | www欧美xxxx| 91精品色 | 人人精久 | 日韩久久精品一区二区 | 久久精品久久久久 | 怡红院av久久久久久久 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 91丨九色丨高潮丰满 | 91综合在线| 国产精品久久久久久五月尺 | 日韩免费视频在线观看 | 欧美日韩视频在线播放 | 中文字幕在线观看视频一区 | 九九久久久久久久久激情 | 亚洲视频1| 麻豆传媒精品 | av中文字幕免费在线观看 | 国产精品情侣视频 | 久久福利剧场 | 精品国产精品一区二区夜夜嗨 | 免费a v在线 | 国产色中涩 | 国产特级毛片 | 欧美综合在线观看 | 午夜视频不卡 | 国内精品久久久久久中文字幕 | 福利一区二区在线 | 99热这里只有精品在线观看 | 不卡电影一区二区三区 | 在线观看av大片 | 黄色免费视频在线观看 | 国产明星视频三级a三级点| 成人久久久久久久久久 | 色网址99 | 久久不射网站 | 亚洲成aⅴ人片久久青草影院 | 国产手机在线视频 | 中文字幕免费观看视频 | 婷婷综合在线 | 久久不卡免费视频 | 国产亚洲在 | 在线国产中文 | 免费视频一级片 | 9999在线观看 | 欧美日韩在线精品一区二区 | 国产精品观看视频 | 91视频大全| 91精品国产乱码 | 97在线视频免费 | 国产精品6 | 在线亚洲天堂网 | 日韩在线视频网站 | 五月花激情 | 欧美大香线蕉线伊人久久 | 日韩中文在线观看 | 最近免费观看的电影完整版 | 毛片一区二区 | 欧美成人在线免费观看 | 国产成人a v电影 | 人人爽人人爽人人片av免 | 最新日韩在线观看 | 欧美日韩在线观看一区二区 | 成人一区不卡 | 国产精品不卡在线观看 | 日韩高清免费电影 | 天天操天天怕 | www.国产毛片 | 蜜臀久久99精品久久久久久网站 | 日韩精品一区二区久久 | 国产伦精品一区二区三区… | 久久韩国免费视频 | 久久久久久国产精品久久 | 九九热久久免费视频 | 国产999免费视频 | 国产一级不卡视频 | 亚洲国产字幕 | 日韩一区二区三区不卡 | 在线视频1卡二卡三卡 | 成人资源在线 | 成人性生交大片免费观看网站 | 天天综合久久 | 操操操天天操 | 亚洲 欧美日韩 国产 中文 | 国产又粗又硬又爽视频 | 丝袜足交在线 | 欧美色久| 三级av免费看 | 色婷婷a | 天天操天天色综合 | 久久婷亚洲五月一区天天躁 | 亚洲精品永久免费视频 | 麻豆国产露脸在线观看 | 久热香蕉视频 | 毛片一级免费一级 | 国产九九在线 | 国产一级片不卡 | 国产在线观看99 | 久久久久久久久久影视 | 怡红院成人在线 | 国产精品一区二区62 | 天天爽夜夜爽人人爽一区二区 | 免费视频一级片 | 亚洲夜夜网| 91久久精品一区二区二区 | 国产一级做a爱片久久毛片a | 国色天香在线 | 永久免费的啪啪网站免费观看浪潮 | 欧美性大战 | 丁香婷婷综合五月 | 亚洲资源一区 | 91精品在线看 | 国产精品久久久久久久久久不蜜月 | 国产精品成人免费一区久久羞羞 | www天天操 | 五月婷婷激情 | 日韩精品一区二区三区视频播放 | 91中文字幕视频 | 亚洲精品在线观看网站 | 婷婷色影院 | 日本精品视频网站 | 精品国产美女 | 伊人五月综合 | 就要干b | 国产亚洲精品bv在线观看 | 18做爰免费视频网站 | 精品人妖videos欧美人妖 | 91精品久久久久久久久 | 日日夜夜av| 国产成人1区 | av电影av在线| 国产老妇av| 婷婷色站| 久草视频免费 | 久久美女精品 | 精品国产一区二区三区久久影院 | 久艹在线免费观看 | 精品毛片一区二区免费看 | 久久 一区 | 亚洲电影一级黄 | 在线天堂中文在线资源网 | 黄色三级网站在线观看 | 欧美一性一交一乱 | 日韩av不卡在线观看 | 亚洲精品国偷拍自产在线观看蜜桃 | 国产精品乱码一区二三区 | 免费看亚洲毛片 | 国产黄色精品在线 | 久久不见久久见免费影院 | 77国产精品 | 久久精品国产一区二区三区 | 91视频 - 88av| 亚洲午夜精品久久久久久久久 | 亚洲开心激情 | 国产免费区 | 免费视频一二三 | 免费观看完整版无人区 | 亚洲另类视频在线观看 | 日韩有码在线观看视频 | 精品在线观看免费 | 超碰人人射 | 婷婷日| 激情综合色综合久久 | 久草在线观 | 久久综合九九 | 美女视频a美女大全免费下载蜜臀 | 91丨九色丨高潮 | www天天操| 欧美一区二区三区在线播放 | 久久久久久福利 | 韩国av免费看 | 毛片的网址 | 日韩精品你懂的 | 天天亚洲| 国产伦理一区 | 免费三级网 | av性网站| 中文字幕人成乱码在线观看 | 在线 日韩 av | 日韩综合一区二区 | 日韩在线视频网址 | 亚洲综合一区二区精品导航 | 欧美一区二区三区免费看 | 国产黄在线 | www99久久 | 亚洲香蕉在线观看 | 最新高清无码专区 | 一区中文字幕在线观看 | 超碰在线最新地址 | 日韩av视屏在线观看 | 国产精品久久久久毛片大屁完整版 | 超碰av在线免费观看 | 99热最新在线 | 亚洲三级毛片 | 亚洲综合欧美激情 | 狠狠干2018 | 四虎5151久久欧美毛片 | 99精品在线直播 | 中文一区在线 | 免费看国产一级片 | 久久精品视频中文字幕 | 成人黄色资源 | 国产视频不卡 | 欧美精品免费在线观看 | 中文字幕色网站 | 色噜噜噜噜 | 国产97免费 | 国产在线观看一 | 婷婷六月激情 | 亚洲国产手机在线 | 日韩欧美国产免费播放 | 91丨九色丨高潮丰满 | 天天操夜夜操国产精品 | 中文字幕高清在线播放 | 国产色久| 丝袜制服综合网 | 久久黄网站 | 久久天堂精品视频 | www.com黄| 在线中文字幕网站 | 精品在线播放 | 大荫蒂欧美视频另类xxxx | 国产精品11 | 九九九在线 | 久久一本综合 | 狠狠色狠狠综合久久 | 久草视频2| 日韩动漫免费观看高清完整版在线观看 | a视频免费在线观看 | 国产免费中文字幕 | 最近日韩中文字幕中文 | 久久精品日韩 | 国产91精品在线播放 | 日日夜精品 | 日韩免费视频一区二区 | 18久久久久| 欧美日韩国产精品一区二区三区 | 天天色天天射综合网 | 在线观看亚洲a | 色偷偷88888欧美精品久久 | 国产精品成人国产乱一区 | 一区中文字幕电影 | 深爱五月激情五月 | 97成人精品视频在线观看 | 五月天综合网站 | 狠狠干.com| 色偷偷av男人天堂 | 另类五月激情 | 欧美伦理电影一区二区 | 99电影456麻豆 | 黄色小说免费观看 | 国产分类视频 | av高清一区二区三区 | 四虎国产精品免费 | 少妇视频在线播放 | 欧美一二三区播放 | 丁香视频全集免费观看 | 日韩a欧美 | av电影免费 | 国产精品午夜免费福利视频 | 91自拍视频在线观看 | 91在线视频免费播放 | 日本成人中文字幕在线观看 | 国产成人精品一区二三区 | 成年人在线视频观看 | 一区二区三区免费 | 最新国产在线视频 | 国产精品美乳一区二区免费 | 国产一区在线免费观看 | 日日干日日色 | 亚洲毛片一区二区三区 | 97狠狠干| 日韩专区 在线 | 狠狠操狠狠干天天操 | 欧美成人亚洲成人 | 国产精品www| 久久99精品久久久久久三级 | 免费av一级电影 | 99色在线播放 | 久草在线在线精品观看 | 欧美在线a视频 | 最近中文字幕免费大全 | 99av在线视频 | 欧美日韩国产页 | 丝袜制服天堂 | 日韩专区视频 | www激情网 | 免费美女av| 成人黄色小说在线观看 | 色久综合| 最新日韩视频 | 欧美日韩免费观看一区=区三区 | 四虎在线免费 | 久久国产二区 | 黄色在线观看免费网站 | 国产在线不卡 | 欧美日韩在线视频一区 | 亚洲第一中文网 | 天堂av免费观看 | 中文字幕久久精品亚洲乱码 | 丁香国产视频 | 国内免费久久久久久久久久久 | 麻豆极品 | 奇米影视999 | 久久成人综合视频 | 亚洲精品在线一区二区 | 狠狠艹夜夜干 | 国产资源站 | 91毛片视频| 亚洲丝袜中文 | 性色av免费在线观看 | 在线不卡视频 | 99热99re6国产在线播放 | 丁香花在线视频观看免费 | 日韩深夜在线观看 | 久久久久成人精品亚洲国产 | 久草在在线视频 | 国产理论免费 | 免费能看的黄色片 | 欧洲一区精品 | 国产高清无线码2021 | 欧美日本不卡高清 | 久久久免费播放 | 亚洲欧美国产精品 | 日韩av电影中文字幕 | 日韩精品一区电影 | 亚洲国产精品日韩 | 国产视频二| 色视频网站在线 | 四虎在线永久免费观看 | 中文字幕在线中文 | 久久久久综合精品福利啪啪 | 免费观看的黄色片 | 国产96在线| 麻豆va一区二区三区久久浪 | 亚洲国产精品日韩 | 久热香蕉视频 | 毛片一级免费一级 | 久精品在线观看 | 亚洲日日夜夜 | 欧美91精品久久久久国产性生爱 | 九九九视频在线 | 久久伊人婷婷 | 中文字幕一区二区三区在线观看 | 久久婷五月| 久久在线视频在线 | 97国产精品亚洲精品 | 一区二区视频欧美 | 亚洲国产精品va在线 | 国产精品成人免费 | 99久久综合精品五月天 | 夜夜躁日日躁 | 成人在线免费观看网站 | www.午夜视频| 黄色在线观看污 | 亚洲成人黄色在线 | 亚洲欧洲一区二区在线观看 | 亚洲三级性片 | 99超碰在线播放 | 精品久久影院 | 福利在线看片 | 日韩理论在线观看 | 国产99视频在线观看 | 最近高清中文在线字幕在线观看 | 最近日本韩国中文字幕 | 国产乱老熟视频网88av | 欧洲亚洲女同hd | 国产在线a不卡 | 999久久国精品免费观看网站 | 一区二区三区四区五区在线 | 91c网站色版视频 | 国产精品 999 | 9999在线视频 | 国产99久久99热这里精品5 | 99免费看片| 麻花豆传媒mv在线观看网站 | 久久久久久久久久免费视频 | 国产精品久久久久免费观看 | 天堂网在线视频 | 伊色综合久久之综合久久 | 欧美一级性生活片 | 国产91学生| 国产成人精品一区二区三区在线 | 亚洲精品在线网站 | 丁香六月综合网 | 五月天亚洲综合小说网 | 日本丶国产丶欧美色综合 | 国产精品不卡在线观看 | 亚洲一区二区观看 | 亚洲国产精品推荐 | 久久久久在线 | 久久五月婷婷丁香 | 久久久久免费精品国产 | 97av在线视频 | 国产伦精品一区二区三区高清 | 免费看一级一片 | 99视频在线精品 | 国产色啪| 香蕉91视频| 麻豆va一区二区三区久久浪 | 麻豆国产露脸在线观看 | 男女拍拍免费视频 | 在线国产一区二区 | 91免费的视频在线播放 | 国产免费观看视频 | 国产精品手机在线观看 | 久久草网站 | 国产一区自拍视频 | 麻豆一精品传二传媒短视频 | 欧美日韩不卡一区二区三区 | 97理论电影 | av免费看电影 | 亚洲国产精品电影 | 美女久久久久久久 | 国产精品久久精品 | 最近2019中文免费高清视频观看www99 | 日日干天天操 | 欧美日韩中文国产一区发布 | 久黄色| 日本护士三级少妇三级999 | 2019中文字幕第一页 | 亚洲日日夜夜 | 在线小视频你懂得 | 一区二区视频在线观看免费 | 亚洲码国产日韩欧美高潮在线播放 | 亚洲香蕉视频 | 日韩av快播电影网 | 久久超碰免费 | 亚洲男模gay裸体gay | 国产精彩在线视频 | 国产高清视频在线播放一区 | 久草新在线| 97人人网 | 久久综合免费视频 | 欧美日韩精品电影 | 亚洲精品影视 | 波多野结衣视频一区 | 久久综合色播五月 | 中文资源在线观看 | 麻豆免费观看视频 | 国产99精品| 黄色大片视频网站 | 99久久久国产精品 | 91av视屏| 久久国产色 | 日韩高清免费无专码区 | 成人av日韩 | 亚洲精品国偷自产在线91正片 | 91久久精品一区二区二区 | 亚洲在线观看av | 日韩亚洲在线观看 | 91丨九色丨国产在线观看 | 久久亚洲影视 | 国产亚洲精品久久久久久大师 | 91av视频在线观看免费 | 久久97久久 | 日韩精品一区二区三区丰满 | 国产视频久久久久 | 色www精品视频在线观看 | 欧美另类xxx | 日韩av电影中文字幕 |