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

圖文回顧 Redo Log 相關知識

開發 前端
為了保證 redo日志 不丟失,會在磁盤中開辟一塊空間將日志保存起來。但是這樣會有一個問題,磁盤的讀寫性能非常的差。

 [[427107]]

1、如何提升 redo日志 的寫性能?

為了保證 redo日志 不丟失,會在磁盤中開辟一塊空間將日志保存起來。但是這樣會有一個問題,磁盤的讀寫性能非常的差。

所以 redo日志 和數據頁一樣,系統都是會分配一塊連續的內存,來提升讀寫性能;數據頁對應的是 buffer pool,而 redo日志 對應的是 log buffer。

buffer pool可以利用「innodb_buffer_pool_size」指定總大小,利用「innodb_buffer_pool_instances」指定實例數,但是必須size大于等于1G才生效。

log buffer 可利用「innodb_log_buffer_size」指定 log buffer 的大小;一片連續的內存空間會被劃分為N個512字節大小的block。

log file 可以利用「innodb_log_file_size」指定每個 log file 的大小,利用「innodb_log_files_in_group」指定一共多少個log file。

2、redo日志 何時寫入log buffer?

對底層頁面(可能是多個頁面)進行一次原子性訪問,等于一個MTR,即 Mini Transaction。一個 MTR對應一組 redo日志 。一個事務對應多個語句,一個語句對應多個個MTR,一個MTR對應一組redo日志,即多個 redo日志 。

在MTR結束后,會將一組 redo日志 寫入到log buffer中。

詳情可看下圖: 

3、log buffer 中的 redo日志 何時刷盤?

  • 當 log buffer 已經被寫入約一半左右,下次再寫入 redo日志 時,需將 log buffer 的 redo日志 刷到磁盤文件中。
  • 當事務結束時,需先將 log buffer 中,被修改的緩存頁對應的 redo日志 刷回磁盤中。
  • 后臺線程刷,大概每隔一秒刷一次 log buffer 中的 redo日志 到磁盤中。
  • 執行checkpoint。
  • 正常關閉服務器。

4、我們都知道每次寫入 redo日志 ,都是以組為單位,那么我們怎么知道哪些是一組?

  • 在該組中的最后一條 redo日志 后邊加上一條特殊類型的 redo日志 ,該類型名稱為「MLOG_MULTI_REC_END」,type字段對應的十進制數字為31,該類型的 redo日志 結構很簡單,只有一個type字段。

5、如何知道下一次redo日志改寫到log buffer的哪個位置?

  • buf_free全局變量,指向log buffer中下個寫入的位置。

6、如何知道下次從log buffer的哪個位置開始刷入磁盤?

buf_next_to_write全局變量,指向log buffer中下個刷回磁盤的位置。

7、如何定位 log buffer 中的 redo日志 對應哪些被修改的數據頁;在被修改的數據頁中,如何定位到對應的是哪些 redo日志 ?

  • 修改的緩存頁找到對應的 redo日志
    • 當 MTR 結束時,會將被修改過的數據頁對應的數據塊放入 flush鏈表 的表頭中,并且給兩個參數賦值,分別是 old_modification 和 new_modification:old_m 賦值是 MTR 開始前的 lsn 值,而 new_m 賦值是 MTR 結束時的 lsn 值。
    • 如果一個 MTR 修改的數據頁對應的控制塊本來就在 flush鏈表 中,則不調整數據頁對應的數據塊的位置,只是修改 new_modification 的值,old_modification還 是保持第一次進入 flush鏈表 時 lsn 的值。
    • 就是說,在 flush鏈表 中,數據塊是根據第一次修改的時間進行倒序排列的。
    • 首先,出場一個變量,叫lsn,全稱:log sequence number,日志序列號。它記錄的是,redo日志 的總字節數,初始值為8704。當系統啟動,初始化log buffer 時,lsn 值為 8704+12(一個log block header)=8716
    • 接著,log buffer 是由多個block組成的(可以理解為buffer pull的緩存頁),block由三部分組成,log block header(12個字節)、log block body、log block trailer(4個字節)。
    • 當第一個 redo日志 組,如「mt_1」準備被寫入,并且一個block能容納,此時lsn為 8704+12(一個log block header)=8716,假設「mt_1」一共100字節,那么「mt_1」寫入后,lsn為8716+100=8816
    • 當第二個 redo日志 組,如「mt_2」準備被寫入,并且需要跨block才能容納,如跨一個(即包含一個log block header和一個log block trailer),開始寫入前lsn:8816,假設「mt_2」一共1000個字節,那么「mt_2」寫入后,lsn為8816+12(一個log header)+4(一個log tail)+1000=9832
    • lsn
    • flush和lsn
    • 通過上面,那么我們可以根據flush鏈表中,數據塊的 old_modification 和 new_modification 找到對應的一組 redo日志 ,因為通過 lsn 可以定位到對應 redo日志 在磁盤文件中的偏移量(這個下面會講解到)。
  • redo日志 找到對應的緩存頁面
    • redo日志 的通用結構是:type-spaceId ID-page Number-data,即我們可以根據 redo日志 的 space ID 和 page Number 即可找到對應的緩存頁。
    • 順帶一提:在 InnoDB 中,有一個哈希表,key為表空間號+頁號,value為緩存頁地址。這樣我們可以通過 space ID 和 page Number 快速定位到對應的緩存頁。

8、我們知道可以利用 lsn 知道有多少字節數的 redo日志 寫入到 log buffer 中,那么我們能有變量對應的知道有多少字節數的 redo日志 被刷入磁盤中嗎?

  • flushed_to_disk_lsn 全局變量,表示刷到磁盤的日志量。

9、lsn 和 log file 的偏移量怎么對得上么?

  • lsn 初始值是 8704,隨著 redo日志 的不斷寫入,lsn 不斷增大。而 innodb 中,是利用 block 這個結構來存儲 redo日志 (不管是 log buffer 還是 log file),而 block 包含三部分,上面已經提到。當 redo日志 不斷寫入,不斷占用 block 的空間,那么 lsn 會增加對應的字節數,當然了,除了body、也算 header 和 trailer。
  • log file 是由日志組組成,日志組最大設置100個文件數,每個日志文件也是由多個512字節的block鏡像組成,日志組第一個日志文件前4個block鏡像用于存儲重要信息、如checkpoint等、即前2048個字節不用于存儲 redo日志 ,即從2048個字節開始計算 redo日志 的存放量。
  • log file 的 log file header 中有一個「LOG_HEADER_START_LSN」屬性,標記本 redo日志 文件偏移量2048字節處對應的lsn值。

詳情可看下圖: 

10、log buffer 中的 redo日志 真的會在事務結束時立馬刷回到磁盤中嗎?

  • 默認是的,這里有一個參數控制:「innodb_flushing_log_at_trx_commit」,默認值是1
    • 0:事務提交,不會立馬刷到磁盤中,依賴后臺線程刷入,即如果此時MySQL或系統掛掉重啟,無法恢復臟頁
    • 1:事務提交,會立馬將log buffer的 redo日志 刷回磁盤中
    • 2:事務提交,會立馬將log buffer的 redo日志 刷到操作系統的緩存中,而不是刷到磁盤中;如果此時MySQL掛掉了,重啟后不會影響恢復臟頁,而如果是系統掛掉,就無力回天了。

11、log file 都是循環使用,即可以覆蓋,那么怎么判斷是否可以覆蓋?

  • log file 中可被覆蓋,那么首要條件就是 redo日志 對應的臟頁已經被刷到磁盤中。
  • innodb 有個全局變量:checkpoint_lsn,它記錄的是可被覆蓋的 redo日志量。初始值就是lsn的初始值,8704。
    • 當有臟頁被刷到磁盤時,首先在flus鏈表中拿到最舊的緩存頁,即需要拿到鏈表尾部的控制塊,然后拿到 old_modification 的值,然后將這個值賦值給 checkpoint_lsn,因為只要是小于 flush 鏈表中最舊的控制塊的 old_modification 的 lsn,就代表可以被覆蓋,畢竟對應的臟頁已經被刷到磁盤中了。
    • 接著,將根據當前的 checkpoint_lsn 獲取對應日志文件組的偏移量,記錄為 checkpoint_offset,checkpoint_no 也需要加1,最后將三個信息記錄在日志文件組的 checkpoint1 或 checkpoint2(checkpoint_no為奇數存1,否則存2)。
    • 上面兩步稱為執行一次checkpoint。
    • 什么是 checkpoint?
  • 我們只需要從日志文件組中的 checkpoint1 和 checkpoint2 拿到信息,然后對比 checkpoint_no 看哪個是最新的,接著拿到checkpoint_lsn,那么 lsn 小于 checkpoint_lsn 的日志都可以被覆蓋。

12、系統崩潰重啟,如何利用 redo日志 進行恢復?

  • redo日志 進行崩潰恢復主要是利用上面提到的 checkpoint_lsn,因為 checkpoint_lsn 表示可以覆蓋的日志量,則表示 checkpoint_lsn 之前的 redo日志 對應的臟頁都已經被刷回到磁盤中。
  • 首先從 redo 日志組中拿到 checkpoint1 和 checkpoint2,接著判斷誰的 checkpoint_no 大,大的就是最新的一次 checkpoint 執行。
  • 接著拿到對應的 checkpoint_offset,那么 checkpoint_offset 后的 redo日志 都需要掃描一遍,然后根據 redo日志 的內容,對數據頁進行恢復。

13、恢復是掃描一個 redo日志 ,就進行一次恢復嗎?

  • 問題:
    • 因為根據 redo日志 恢復數據頁的變更,是直接更新磁盤中的數據頁;掃描一個 redo日志 ,就進行一次恢復,如果存在多個 redo日志 記錄同一個數據頁的變更,并且不是連續的,那么會導致多次隨機IO,性能會非常的差。
  • 解決:
    • 所以會有一個哈希表,key為 space ID + page Number,value 為數據頁地址。掃描 redo日志 時,會將同一個 space ID + page Number 的 redo日志 都放在同一個槽下。
    • 接著遍歷哈希表,執行每一個 space ID + page Number 對應所有的 redo日志 。
  • 好處:
    • 避免了多次的隨機IO,提升恢復的速度。
    • 按順序根據 redo日志 進行恢復,避免出現恢復的順序問題。

詳情可看下圖:

14、恢復時,如何知道什么時候結束?

  • 首先,我們知道,在日志組里,有多個block鏡像,然后 redo日志 刷盤,是按順序填入每個block的,只有前一個block填滿了,才接著填下一個
  • 接著,每個 block 的大小都是 512 個字節,包括 log block header、log block body 和 log block trailer。在block的頁面結構中,log block header 頭部有一個「LOG_BLOCK_HDR_DATA_LEN」的屬性,該屬性值記錄了當前block里使用了多少字節的空間。對于被填滿的block來說,該值永遠為512。
  • 最后,所以只管往后面一直掃,直到 log block header 中 「LOG_BLOCK_HDR_DATA_LEN」屬性不是512的 block,那么就是恢復的終點了。

15、如何兼容臟頁已經已經刷回磁盤,但是 redo日志 沒有刷回磁盤的場景?

  • 場景復現:
    • 當我們提交事務時,會根據參數「innodb_flush_at_trx_commit」來做下一步操作,如果是0或者2,那么此時的日志并沒有刷回到磁盤中,而是留在log buffer中或操作系統緩存中。
    • 接著,如果有后臺線程將 LRU 鏈表或 flush 鏈表的某些臟頁刷回磁盤中,刷回后;但是此時對應的 redo日志 還停留在上面提到的兩個地方,如果服務器宕機,那么對應的 redo日志 就會丟失了。
    • 因為刷 LRU 鏈表、flush 鏈表和刷 redo日志 的后臺線程,往往都是不同的線程,無法知道對應的 redo日志 是否已經刷回去。
  • 兼容:
    • 每個數據頁都有一個稱之為 File Header 的部分,在 File Header 里有一個稱之為 FIL_PAGE_LSN 的屬性,該屬性記載了最近一次修改頁面時對應的 lsn 值(其實就是頁面控制塊中的 newest_modification 值)。
    • 如果在做了某次 checkpoint 之后有臟頁被刷新到磁盤中,那么該頁對應的 FIL_PAGE_LSN 代表的 lsn 值肯定大于 checkpoint_lsn 的值,凡是符合這種情況的頁面就不需要重復執行 lsn 值小于 FIL_PAGE_LSN 的 redo日志 了,

 

責任編輯:武曉燕 來源: 不送花的程序猿
相關推薦

2024-06-11 00:00:02

MySQL數據庫系統

2021-07-28 08:32:03

MySQLRedo存儲

2025-01-20 08:20:00

redo logMySQL數據庫

2010-01-06 09:30:51

Oracle Redo

2021-05-28 11:18:50

MySQLbin logredo log

2021-01-26 13:47:08

MySQL存儲數據

2020-08-20 12:10:42

MySQL日志數據庫

2024-05-28 00:10:00

JavaMySQL數據庫

2025-01-15 13:19:09

MySQL日志事務

2024-05-30 08:03:17

2023-11-23 13:17:39

MySQL?數據庫

2022-03-25 13:42:15

Log4j漏洞網絡安全

2025-06-06 07:02:43

2024-03-14 14:18:58

MySQL業務設計事務

2021-02-09 10:07:23

面試MySQL存儲

2023-05-29 08:01:15

重啟二進制日志

2019-05-06 15:27:48

Oracle數據庫數據

2025-10-09 02:22:00

MySQLMVCC庫存數量

2010-01-25 13:50:41

Android輸出Lo

2009-09-14 09:49:07

CCNA認證CCNA
點贊
收藏

51CTO技術棧公眾號

91在线免费看网站| 欧美高清视频在线| 99sesese| 日韩成人伦理| 久久亚洲综合色| 成人精品福利视频| 国产成人无码精品| 欧美一区二区三区高清视频| 欧美一区二区三区在线| 18禁网站免费无遮挡无码中文| 国产特黄在线| 国产99久久精品| 日本三级韩国三级久久| 婷婷在线精品视频| 国产欧美亚洲精品a| 欧美一区二区福利在线| 成年人免费大片| 91吃瓜在线观看| 国产精品久久福利| 欧美婷婷久久| 空姐吹箫视频大全| 精品在线免费视频| 国产成人福利网站| 国产无套粉嫩白浆内谢| 外国成人激情视频| 国产亚洲精品久久久久动| 久久久国产精品久久久| 国产成人精品一区二区三区在线 | 日本午夜一区二区| 国产做受高潮69| 成人涩涩小片视频日本| 国产一区二区三区四区大秀| 精品久久免费看| 日本一二三区在线| 日韩色淫视频| 色老头久久综合| 丰满爆乳一区二区三区| 日本aa在线| 综合av第一页| 一区二区三区四区欧美| 国产系列在线观看| 久久久99精品免费观看| 九色91视频| 日本黄色不卡视频| 成人成人成人在线视频| 97中文在线观看| 国产黄色美女视频| 国产一区二区不卡在线| 成人写真福利网| 国产精品丝袜黑色高跟鞋| 久久se精品一区精品二区| 国产精品盗摄久久久| 亚洲色成人www永久网站| 国产精品老牛| 81精品国产乱码久久久久久| 国产成人愉拍精品久久| 亚洲经典在线看| 97人洗澡人人免费公开视频碰碰碰| 欧美三级免费看| 欧美另类女人| 九九热这里只有在线精品视| 国产精品久久久久久久精| 久久精品亚洲人成影院 | 日韩精品视频无播放器在线看| av在线不卡顿| 亚洲小视频在线| x88av在线| 日本女优一区| 日日骚久久av| 欧美视频一区二区在线| 天天射综合网视频| 欧美久久久精品| 久草视频在线资源站| 亚洲视频福利| 57pao精品| 亚洲图片欧美日韩| 麻豆成人综合网| 亚洲在线观看视频| 天天操天天干天天干| 久久一区二区三区四区| 区一区二区三区中文字幕| av中文资源在线| 亚洲天堂av一区| 欧美又粗又长又爽做受| 国产美女高潮在线观看| 色综合久久久久综合体桃花网| 动漫av免费观看| 四虎永久精品在线| 欧美一区二区三区啪啪| 绯色av蜜臀vs少妇| 亚洲欧洲色图| 久久精品中文字幕电影| 国产无遮挡又黄又爽| 香蕉久久夜色精品| 91精品久久久久久久久久另类| 99热这里只有精品99| av亚洲精华国产精华精华| 欧美亚洲免费高清在线观看| 久久精品视频免费看| 香蕉乱码成人久久天堂爱免费| 国产男女激情视频| 精品麻豆剧传媒av国产九九九| 亚洲成人精品久久久| 日本成人免费在线观看| 精品1区2区3区4区| 国产精品青青在线观看爽香蕉| 亚洲精品福利网站| 日本一区二区三区视频视频| 男人天堂手机在线视频| 福利精品一区| 日韩精品视频在线播放| 粉嫩av性色av蜜臀av网站| 国产日韩视频| 2019国产精品视频| 成年人视频网站在线| 亚洲午夜精品在线| 小明看看成人免费视频| 欧美男男freegayvideosroom| 日韩视频永久免费观看| 国产一级片免费| 精品亚洲国内自在自线福利| 蜜桃成人免费视频| 亚洲精品白浆| 欧美久久免费观看| 特级西西www444人体聚色| 1024成人| 666精品在线| 中文日本在线观看| 色婷婷av一区二区| asian性开放少妇pics| 国产在线欧美| 亚洲自拍av在线| 日本免费中文字幕在线| 色婷婷精品大视频在线蜜桃视频| 成人做爰www看视频软件| 亚洲蜜桃视频| 成人免费午夜电影| 婷婷在线视频| 欧美亚洲动漫制服丝袜| 在线免费观看黄色小视频| 国产精品九九| 国产精品久久精品视| 91精品久久| 91精品国产综合久久久久| 自拍偷拍第9页| 男女男精品网站| 日韩精品不卡| 99re66热这里只有精品4| 亚洲久久久久久久久久久| 精品在线播放视频| 91蜜桃网址入口| 成人免费aaa| 亚洲bt欧美bt精品777| 2019中文在线观看| 精品三级久久久久久久电影聊斋| 黑人精品xxx一区一二区| yy1111111| 蜜桃久久av| 青娱乐一区二区| 成人a在线观看高清电影| 中文字幕av一区中文字幕天堂 | 国产日韩欧美三级| 免费国产一区二区| 亚洲mmav| www.国产一区| 成人av一区二区三区在线观看| 一区二区三区精品视频| 日韩精品人妻中文字幕有码 | 亚洲欧美日韩久久精品| 911av视频| 国产一区久久| 欧美日韩精品免费在线观看视频| 视频在线日韩| 久久精品99无色码中文字幕| 99热这里只有精品3| 亚洲第一久久影院| 泷泽萝拉在线播放| 久久精品国产77777蜜臀| 日本xxx免费| 乱中年女人伦av一区二区| 日本老师69xxx| av在线电影观看| 日韩午夜激情电影| 精品人妻无码一区二区性色| 国产精品天干天干在观线| 在线成人精品视频| 天堂精品中文字幕在线| 四虎影院一区二区| 欧美国产极品| 成人妇女免费播放久久久| 蜜臀av国内免费精品久久久夜夜| 精品调教chinesegay| 亚洲视频在线免费播放| 亚洲线精品一区二区三区八戒| 少妇按摩一区二区三区| 九九在线精品视频| 亚洲国产精品久久久久婷蜜芽| 日韩电影免费网站| 国产嫩草一区二区三区在线观看| 欧美不卡高清一区二区三区| 久久99久国产精品黄毛片入口| 你懂的在线观看| 日韩视频在线一区二区| 91porny九色| 亚洲第一在线综合网站| 刘亦菲国产毛片bd| av电影天堂一区二区在线观看| 午夜免费看毛片| 免费国产自线拍一欧美视频| 久久av喷吹av高潮av| 久久91精品| 国产精品久久亚洲| 99精品美女视频在线观看热舞| 欧美一级免费视频| 欧美伦理免费在线| 日韩视频精品在线| www 日韩| 亚洲免费电影一区| 天天色综合久久| 日韩美女视频在线| 国产精品久久久久久69| 91黄色小视频| 五月婷婷色丁香| 亚洲成av人片在www色猫咪| 国产97免费视频| 国产精品久久久久影院亚瑟| 精品成人av一区二区三区| 国产成人丝袜美腿| 一级片黄色免费| 免费的成人av| 另类小说第一页| 久久精品一区二区国产| 97成人在线免费视频| 欧美视频二区| 永久免费看av| 久久久9色精品国产一区二区三区| 日本在线观看一区二区三区| 午夜精品福利影院| 国产综合第一页| 加勒比久久高清| 国产视频一区二区不卡| 日韩欧美一级| 91九色露脸| 日本免费精品| 国产成人精品福利一区二区三区| 国产成年精品| 亚洲精品欧美日韩专区| 精品午夜av| 99久久精品免费看国产一区二区三区| 国产精品亚洲综合在线观看 | 风间由美性色一区二区三区四区 | 经典一区二区| 日本福利一区二区三区| 国产日产一区| 先锋在线资源一区二区三区| 日韩精品午夜| 中文字幕超清在线免费观看| 久久精品青草| 国产情侣第一页| 黄色成人av网站| 久久久999视频| 日韩影院在线观看| 最新av免费在线观看| 国产精品一二一区| 欧美激情一区二区三区p站| 成人av电影在线观看| 国产熟妇搡bbbb搡bbbb| 国产欧美日本一区二区三区| 亚洲欧洲综合网| 一区二区三区四区亚洲| 在线观看 中文字幕| 在线视频中文字幕一区二区| 中文字幕有码视频| 欧美一级欧美一级在线播放| 动漫av一区二区三区| 精品性高朝久久久久久久| 在线免费黄色| 欧美激情精品久久久久久免费印度| а√在线中文网新版地址在线| 国产精品吊钟奶在线| 色综合.com| 国产日韩欧美二区| 欧美日韩中文字幕一区二区三区| www亚洲国产| 亚洲美女啪啪| 亚欧美在线观看| 高清成人在线观看| 国产一级久久久久毛片精品| 亚洲少妇30p| 中文字幕第15页| 欧美一区二区三区视频在线观看| 无码国精品一区二区免费蜜桃| 一区二区三区久久精品| av网站免费在线观看| 国产91精品久久久久| 一区二区三区日本视频| 另类欧美小说| 欧美日韩国产在线一区| 好男人www社区| 丁香婷婷深情五月亚洲| 久久午夜精品视频| 亚洲成av人综合在线观看| 在线观看免费视频一区| 亚洲国产精品字幕| 九七久久人人| 国产精品黄色av| 日韩欧美影院| 99久久99久久精品| 奇米精品一区二区三区在线观看| xxxwww国产| 亚洲乱码国产乱码精品精的特点 | 日韩亚洲欧美精品| 激情综合亚洲| 免费高清视频在线观看| 久久久激情视频| 激情五月色婷婷| 日韩区在线观看| 色的视频在线免费看| 欧美在线一级视频| 成人三级毛片| 男女h黄动漫啪啪无遮挡软件| 久久av最新网址| 呦呦视频在线观看| 一区2区3区在线看| 国产av一区二区三区精品| 中文字幕在线看视频国产欧美| 都市激情亚洲综合| 激情视频一区二区| 狠狠色综合网| 中文写幕一区二区三区免费观成熟| 中文字幕精品一区二区精品绿巨人 | 久久人人99| 欧美伦理片在线看| 久久蜜桃一区二区| 91精品国产高清一区二区三密臀| 精品日韩一区二区三区 | 亚洲美女免费在线| 亚洲最大成人在线视频| 中文字幕欧美日韩va免费视频| 三级成人在线| 任我爽在线视频精品一| 免费日韩av片| 一区二区三区四区免费| 色综合一区二区| 巨骚激情综合| 国产精品久久综合av爱欲tv| 精品久久中文| 国产嫩草在线观看| 国产精品久久久久久久久久免费看| 懂色av中文字幕| 色妞在线综合亚洲欧美| 日韩三级成人| 最新黄色av网站| 国产福利一区二区| 国产中文字幕免费| 亚洲国产精品电影| 校园春色亚洲| 日韩三级电影网站| 日韩精品一卡二卡三卡四卡无卡| 香蕉视频久久久| 精品视频资源站| 精品欧美色视频网站在线观看| 91精品中文在线| 精品成人免费| 亚洲欧美色图视频| 欧美吻胸吃奶大尺度电影| 黄色成年人视频在线观看| 成人av影视在线| 欧美中文日韩| 一级特黄曰皮片视频| 宅男噜噜噜66一区二区66| 天天色天天射天天综合网| 精品国产一区二区三区麻豆小说 | 免费在线观看日韩av| 偷拍亚洲欧洲综合| 国产在线视频网站| 成人a视频在线观看| 亚洲啪啪91| 国产农村妇女精品一区| 日韩视频一区二区三区在线播放| 成人黄色动漫| 一本色道久久综合亚洲精品婷婷 | 91精品国产品国语在线不卡| 国产精品蜜臀| 先锋影音一区二区三区| 国产+成+人+亚洲欧洲自线| 日韩中文字幕在线观看视频| 中文字幕亚洲天堂| 911精品国产| 国产区二区三区| 亚洲一二三四在线观看| 国产在线一二三区| 成人在线视频网址| 日本色综合中文字幕| 久久婷婷国产麻豆91| 一区二区欧美日韩视频| 风间由美一区二区av101| 国产aaaaa毛片| 亚洲成人午夜影院| 国内精品久久久久国产|