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

明明在InnoDB執行了delete,為啥數據刪了個寂寞?

數據庫 其他數據庫
我們知道InnoDB存儲引擎是支持MVCC的,即多版本控制,得益于MVCC,MySQL在事務里查詢數據的時候不需要加鎖,可以提供很好的并發性,同時提供可重復讀這個很重要的特性。那么它是怎么到的呢?

一、刪除并不是真正的刪除

熟悉MySQL InnoDB存儲引擎的同學都應該知道,當我們執行delete的時候,數據并沒有被真正的刪除,只是對應數據的刪除標識deleteMark被打開了,這樣每次執行查詢的時候,如果發現數據存在但是deleteMark是開啟的話,那么依然返回空,因為這個細節,所以經常會出現“我明明刪除了數據,為什么空間沒釋放”的現象。

15M  7  6 18:46 user_info.ibd #刪除前
15M 10 4 16:47 user_info.ibd #刪除后

二、為什么不直接刪除,而是打個標記

我們知道InnoDB存儲引擎是支持MVCC的,即多版本控制,得益于MVCC,MySQL在事務里查詢數據的時候不需要加鎖,可以提供很好的并發性,同時提供可重復讀這個很重要的特性。那么它是怎么到的呢?答案是undo log,可以簡單的理解為,每次更新數據的時候將更新前的數據先寫入undo log中,這樣當需要回滾的時候,只需要順著undo log找到歷史數據即可。undo log與原始數據之間是用指針鏈接起來的,即每條數據都有個回滾指針指向undo log。

如果InnoDB在刪除數據的時候,真的是把數據從磁盤上擦除,那么這時候:

  • 別的事務通過undo log是無法找到原始數據。
  • 可重復讀這個特性會被破壞。

三、只是打個標記的話,豈不是很浪費空間

MySQL里面有個purge線程,它的工作中有一項任務就是專門檢查這些有deleteMark的數據,當有deleteMark的數據如果沒有被其他事務引用時,那么會被標記成可復用,因為葉子節點數據是有序的原因,這樣當下次有同樣位置的數據插入時,可以直接復用這塊磁盤空間。當整個頁都可以復用的時候,也不會把它還回去,會把可復用的頁留下來,當下次需要新頁時可以直接使用,從而減少頻繁的頁申請。

四、基于頁的存儲方式

我們知道MySQL數據是存儲在磁盤上的,磁盤的速度想必大家都知道,特別是當發生隨機IO的時候。這里簡單解釋下什么叫IO,以機械磁盤為例,我們最終的數據都是落在磁盤的一個一個扇區上的,當一個扇區寫滿了,就得換下一個扇區,這時就要通過盤片的轉動找到目標扇區,這是物理運動。如果要寫入的下一個扇區和當前的扇區是緊挨著的,這叫順序IO,如果要寫入的扇區和當前的扇區中間隔了幾個扇區,這叫隨機IO,很明顯隨機IO需要更長的轉動時間。所以查詢一個數據的時候,減少IO是非常關鍵的,特別是隨機IO。

為了減少磁盤IO,MySQL采用B+樹的索引結構來組織數據,B+樹的特點是矮胖,一般樹的高度就代表了IO的次數,越矮的話,樹的高度越低,那么對應的IO次數就越少,還有一點需要知道的是數據最終都在葉子節點上,所以在B+樹上搜索的時候,一定是要檢索到最后一層葉子節點上,這是一種穩定性的表現。

1、行與頁

這里需要知道的是,我們最終通過B+樹檢索到的不是我們的目標行數據,而是目標行數據所在的頁,這個頁上有很多數據,都是索引序號相鄰的,當找到目標頁后,會把目標頁加載到內存中,然后通過二分法找到目標數據。

也許你會問,那搜索的開銷不僅僅是磁盤IO,還有在二分法查找的開銷。這里不可否認,但是我們一般忽略這部分開銷,因為cpu在內存里檢索的速度很快,并且一頁也就16k,數據并不多。

2、IO次數不一定等于樹的高度

前面我們說到樹的高度等于IO的次數,這其實不是很準確,我們知道樹的根節點一定是在內存里的,那么對于一顆高度為3的數據,只用2次IO即可,這其實可以理解,畢竟根節點只占用一頁的空間,一頁才16K,放在內存里綽綽有余。但有時候樹的第二層也可以放在內存里。

假設現在主鍵是bigint,bigint我們知道占用8個字節,對于一個索引來說除了類型本身占用空間之外,還有一個指針,這個指針占用6個字節,那么對于根節點來說它大概能存 16K/(8+6)B = 1170 個數據,每個數據都可以指向一頁(也就是它的下一層),這樣整個樹的第二層大概占用 1170*16K = 18M 的空間,這也不是一個很大的數字,對于機器的內存來說,幾乎也是滄海一粟,所以第二層往往也在內存里,所以最終在B+樹上檢索數據所消耗的IO應該比理論的要低。

通過上面我們知道檢索一條數據的快慢,主要受樹的高度影響的,這和你的數據表的大小并沒有太大的關系,現實中有人可能在數據表達到百萬級別的時就考慮分表,個人認為這有點低估B+樹的能力了。還是以bigint類型的主鍵索引為例,假設一行數據占用1K(理論上已經足夠大了),那么一頁可以存下 16K/1K=16 條數據,對于一顆高度為3的B+樹來說,它可以存下 1170*1170*16=21902400 的數據,將近2千萬,如果你的數據行占用的空間更小,就可以存下更多的數據,所以只是簡單的根據數據行數來判斷是否需要分表不是那么的合理。

五、可復用的空間一直沒有被利用咋辦

前面我們說到刪除的數據不會被真的刪除,只是打上個deleteMark的標識,然后會被復用,但是如果一直沒被復用,那么空間不就是白白的浪費了,更糟糕的是,如果刪除的很多數據空間都沒有被復用,就會造成頁空間存在大量的碎片,為了解決這種情況,MySQL內部有個叫頁合并的功能,這是什么意思呢?簡單理解就是頁A現在有很多可以被復用的空間,它的鄰居頁B也有很多可以復用的空間,此時頁A就可以和頁B合并,如果合并后能省出來一頁,那么多出來的一頁就可以被下次使用,從而達到頁最大利用的效果。

合并的關鍵需要當前頁的前一頁或者后一頁也有大量的碎片空間,這里為何要「大量」很關鍵,合并的動作可以簡單理解就是把別的頁的數據移動過來,如果兩個頁pageA和pageB都只有少量的可復用空間,那么合并后,即使pageA可以填滿,但是另一個頁Page也還是有碎片空間的,并且碎片更大,這時候數據移動的開銷可能要大于存儲的開銷,得不償失。

而且還會有個嚴重的問題,pageB可能會和pageC合并,那么pageC的碎片更大...,這樣的話似乎是個無底洞,導致很多頁都在移動數據。因此一個合理的合并條件很關鍵,InnoDB中何時合并受MERGE_THRESHOLD這個參數影響,它的默認值是50%,50%的意圖很明顯,兩個50%就可以省出一個頁。

我們看個例子,pageA已經有50%的數據被刪除了,它的鄰居pageB只使用了不到50%的數據,這時候會將pageB的數據移動到pageA上,那么整個pageB就是空頁了,可以提供給別的數據使用。這里需要知道的是除了刪除會觸發頁合并外,更新可能也會觸發頁合并。

六、有合并也有分裂

合并頁是提升頁的利用率的方式,但是有時候我們又不得不分裂頁,我們知道葉子節點的頁之間是用雙向鏈表串接起來的,并且頁與頁之間的數據是有序的。

以上圖為例,當我們要插入5這條數據,按道理應該嘗試放在pageA里面,但是pageA目前沒有足夠的空間來存放一條數據,于是嘗試找到pageA的相鄰頁pageB,但是此時很不幸的是pageB也沒有足夠的空間來存放一條數據,由于要求數據的連續性,數據5必須在數據4和數據6之間,那么只能新建一個頁,新建一個頁后,會嘗試從pageA中移動一部分數據到新的頁上,并且會重新組織頁與頁之間的關系,即在pageA和pageB之間會隔一道新頁pageC。

頁分裂會造成頁的利用率降低,造成頁分裂的原因有很多,比如:

  • 比如離散的插入,導致數據不連續。
  • 把記錄更新成一個更大記錄,導致空間不夠用。

還有一點需要知道的是:不管是頁的合并還是頁的分裂,都是相對耗時的操作,除了移動數據的開銷外,InnoDB也會在索引樹上加鎖。

七、手動重建表

頁的合并和分裂主要是在插入、刪除或更新的時候,并且正好滿足某些條件才發生的,那如果這些條件一直不滿足,碎片就無法得到清理,這時候往往會出現"我的表明明沒多少數據,為什么還占用這么大空間"這個現象,針對這個現象有人說重建索引,這個是對的,重建索引可以讓數據更加緊湊,頁的利用率達到更高。但是如何重建索引?第一時間你可能會想到先drop index然后add index,這個似乎不是那么準確。

如果要重建的索引是普通索引,使用這種方式還好,需要注意的是假如你的業務TPS很大,建議在業務低峰期執行,因為雖然MySQL支持online ddl,但是重建索引的過程還是很耗cpu和io資源的。

如果你要重建的是主鍵索引,那么問題來了,首先如果你的主鍵索引設置的是自增長,是不支持drop的。其次如果你的主鍵沒設置成自增長,直接drop也不是我們想象的那樣,我們知道普通索引除了記錄本身的索引字段外,還會記錄主鍵的值,如果drop是直接刪除索引,那么通過普通引將找不到對應的行記錄,所以InnoDB是要求必須有主鍵索引的,這時InnoDB會嘗試去表中找個唯一索引來當主鍵,如果沒有唯一索引,那就自動創建一個默認的主鍵索引rowid,當新的主鍵索引建立好之后,還要去修改相關的普通索引讓其存儲新的主鍵,但是如果按照這種方法來修改的話,開銷會很大,特別是普通索引很多的情況下,于是InnoDB干脆選擇重建表。對于緊接著執行的add index操作,同樣也會發生主鍵索引的變更,所以也會選擇重建表,最終可以發現在主鍵索引上的drop和add其實干了一樣的事情。

綜上所述,一般在你的表出現很多頁碎片的時候,建議使用:

alter table xx engine=InnoDB

這個命令可以重建我們這個表,但是前提是我們的表是獨占表空間的。基于MySQL的online ddl,這個過程它是不影響正常的讀寫的,它的過程如下:

  • 掃描原表主鍵索引的所有記錄
  • 生成新的b+樹記錄到臨時文件
  • 生成臨時文件的過程中,新的變更記錄到一個中轉日志row log中
  • 在臨時文件生成后,將期間row log的變更應用到新的臨時文件中
  • 然后替換臨時文件為當前文件

這里需要注意的是重建表的過程涉及到數據的copy,得保證磁盤有足夠的空間,至少是現在磁盤空間的1倍,如果磁盤空間不足,那么是不會重建成功的。

八、重建表不一定會收縮空間

在重建表的過程中,有一點需要知道:InnoDB不會讓重建后的頁充滿數據,會預留個「1/16」的空間,這個意圖很明顯,如果不預留,選擇占滿整個頁,這時候去更新一條需要更大空間的老數據,就會需要新的頁,寫入新的頁后,往往又會造成碎片,所以提前預留一點空間是有用的。

但是因為這個預留操作,某些情況下會導致重建后的表空間反而會變大。

  • 如果你的表本身就很緊湊,因為預留1/16會變大。
  • 在第一次重建表后,因為新的插入導致用掉了預留空間的一部分(這里需要注意的是預留空間沒用完,還剩一部分),但是沒有用到新的頁,所以整體的空間沒有變化,這時候如果再次重建表,就會因為要預留1/16,導致申請的新的頁,那么空間就會變大。
責任編輯:未麗燕 來源: 假裝懂編程
相關推薦

2021-04-08 09:49:49

MySQL索引數據庫

2021-08-26 16:55:26

耦合服務化架構

2020-07-21 09:05:47

CPU1號核寄存器

2018-08-27 07:29:34

InnoDBinsertselect

2018-08-23 09:10:01

數據庫MySQLInnoDB

2022-05-08 13:17:14

CPU內存中斷

2020-06-28 09:12:31

CPU網卡中斷

2022-03-07 10:54:34

內存Linux

2021-12-20 08:41:14

年終獎老板公司

2021-08-31 06:51:18

Babel前端開發

2010-04-06 09:58:13

Oracle dele

2010-04-26 16:23:52

Oracle dele

2021-10-07 09:06:48

DeletesqlSELECT

2010-04-27 11:43:41

Oracle dele

2025-03-28 08:30:00

PythonPandasaxis

2020-01-15 15:29:52

InnoDB數據硬盤

2021-06-28 07:13:35

SQL語句索引

2021-09-02 11:37:28

微軟操作系統Windows

2025-06-12 03:25:00

2019-08-01 14:12:49

Linuxrm命令lsof命令
點贊
收藏

51CTO技術棧公眾號

欧美精品第三页| 国产精品区一区二区三在线播放| 国产成人福利在线| 热久久久久久| 一区二区三区资源| 鲁片一区二区三区| 91免费视频播放| 亚洲激情另类| www.xxxx精品| 岛国精品资源网站| 97久久中文字幕| 欧美日韩性视频在线| 色中文字幕在线观看| 无码国产伦一区二区三区视频| 免费成人av在线播放| 97久久久久久| 911国产在线| 精品一区三区| 亚洲精品在线三区| 91高清国产视频| а√在线中文在线新版| 中文字幕在线不卡一区| 麻豆亚洲一区| 六月婷婷综合网| 久久成人久久爱| 日本伊人精品一区二区三区介绍| 欧美精品xxxxx| 欧美三级情趣内衣| 日韩电影网在线| 波多野结衣电影免费观看| 欧美日韩在线精品一区二区三区激情综合 | 国产精品激情自拍| 国产女同在线观看| 韩国亚洲精品| 欧美床上激情在线观看| 国产农村妇女精品一区| 国产精品三级| 亚洲精品资源美女情侣酒店| 在线免费看黄色片| 亚洲精品影片| 日韩免费高清av| 久久久福利影院| 欧美天堂一区| 欧美男女性生活在线直播观看| 午夜视频在线瓜伦| 天天综合av| 五月综合激情婷婷六月色窝| 一卡二卡三卡视频| 欧美寡妇性猛交xxx免费| 一区二区在线观看视频| 永久免费看av| 日本孕妇大胆孕交无码| 一个色妞综合视频在线观看| 国产片侵犯亲女视频播放| 99在线播放| 亚洲国产综合在线| 热99这里只有精品| 国产传媒在线| 欧美视频在线免费| 国产97色在线 | 日韩| 亚洲mmav| 欧美人成免费网站| 91热视频在线观看| 天堂久久av| 亚洲成人久久久| 成人在线电影网站| 免费毛片在线不卡| 在线亚洲男人天堂| 日本污视频网站| 天堂美国久久| 欧美国产第二页| 国产精品第9页| 久久午夜精品| 成人有码在线视频| 亚洲精品成人电影| 2023国产精品| 亚洲一区二区精品在线| 在线中文字幕第一页| 偷偷要91色婷婷| 少妇人妻互换不带套| 国产精品4hu.www| 欧美一区二区三区思思人| 99久久久无码国产精品性波多| 日本午夜精品| 中文字幕久久久av一区| 18岁成人毛片| 最新日韩欧美| 国产精品日韩av| av免费观看网址| 91在线一区二区三区| 亚洲成色www久久网站| 操你啦在线视频| 欧美日韩国产综合视频在线观看中文| 国产理论在线播放| 视频精品二区| 国产亚洲激情在线| 久草视频在线资源站| 日本中文在线一区| 成人片在线免费看| 国产高清一区在线观看| 亚洲精品免费电影| 国产视频在线视频| 亚洲国产欧美在线观看| 亚洲无限av看| 久久精品性爱视频| 美女视频网站久久| 久久综合久久久| a视频在线播放| 91久久精品一区二区三| 男人添女人荫蒂国产| 日韩成人精品一区| 91精品国产91久久久久久最新| 亚洲在线免费观看视频| 91一区二区在线| 无颜之月在线看| 久久久久久一区二区三区四区别墅| 亚洲风情亚aⅴ在线发布| 在线观看亚洲网站| 免费视频一区| 成人在线资源网址| 国产网站在线免费观看| 欧美亚洲自拍偷拍| aa片在线观看视频在线播放| 欧美va天堂在线| 国产一区香蕉久久| 丁香婷婷在线| 一本一道久久a久久精品| wwwww在线观看| 偷偷www综合久久久久久久| 国产精品电影在线观看| 日韩成人黄色| 婷婷综合另类小说色区| 成人做爰www看视频软件| 影音先锋成人在线电影| 国产欧美精品日韩精品| 成人h小游戏| 欧美亚洲日本国产| 久久久久久久久久久久| 美女黄网久久| 蜜桃传媒一区二区| 日本精品不卡| 亚洲精品一二区| 在线免费黄色av| 国产亚洲欧洲997久久综合 | 欧美mv日韩mv亚洲| 欧美国产日韩在线观看成人| 久久99日本精品| 亚洲一区高清| 亚洲人成777| 久久成人av网站| 国产成人久久精品77777综合| 亚洲欧美日韩久久精品| 欧美69精品久久久久久不卡| 欧美jjzz| 精品国产福利| 中文字幕一区久| 亚洲天堂成人在线| 最近中文字幕免费观看| 亚洲欧美综合色| 污污视频在线免费| 精品福利电影| 九九热久久66| 日韩在线观看不卡| 最近的2019中文字幕免费一页 | 亚洲第一精品电影| 日韩精品一区二区在线播放| 91亚洲男人天堂| 成人在线观看a| 欧美电影一区| 91观看网站| 成av人片在线观看www| 亚洲网址你懂得| 国产精品美女一区| 亚洲大片在线观看| 日韩中文字幕有码| 狠狠色综合播放一区二区| 少妇大叫太大太粗太爽了a片小说| 风间由美一区二区av101| 欧美专区在线观看| 精品国产丝袜高跟鞋| 精品久久久久一区| 国产一级一级国产| 亚洲情趣在线观看| 亚洲一区二区三区四区五区六区| 日韩va亚洲va欧美va久久| 中文字幕一区综合| 天堂俺去俺来也www久久婷婷| 国产精品免费小视频| 丝袜综合欧美| 亚洲欧美日韩爽爽影院| 国产日韩在线观看一区| 黑人巨大精品欧美一区二区一视频 | 欧美丰满少妇xxxxx| 亚洲欧美自偷自拍| 欧美剧情电影在线观看完整版免费励志电影 | 亚洲精品国产精品国| 色综合天天性综合| 久久久久久久久久网站| 久久久电影一区二区三区| 日本女人性视频| 视频一区视频二区中文| 国产中文字幕乱人伦在线观看| 欧美老女人另类| 国产精品日本一区二区| 日本亚洲欧洲无免费码在线| 2019亚洲日韩新视频| 国产精品扒开做爽爽爽的视频 | 成人午夜影院在线观看| 国产香蕉久久| 91精品国产亚洲| 国产黄色在线网站| 在线播放日韩av| 五月天婷婷在线播放| 日韩精品一区二区三区在线观看| 蜜臀尤物一区二区三区直播| 亚洲高清视频在线| 欧美xxxx黑人xyx性爽| 欧美国产日产图区| aaaaa级少妇高潮大片免费看| 国产成人免费视| 91插插插影院| 老司机精品视频在线| 熟女性饥渴一区二区三区| 亚洲性人人天天夜夜摸| 激情五月五月婷婷| 日韩欧美午夜| 日韩精品大片| 免费一区二区三区视频导航| 精品国产aⅴ麻豆| 成人高潮a毛片免费观看网站| 91免费欧美精品| 日韩亚洲国产免费| 国产精品日韩久久久久| 亚洲成人va| 国产精品r级在线| 原纱央莉成人av片| 欧美一级黄色网| 性国裸体高清亚洲| 97视频在线播放| 春色校园综合激情亚洲| 欧美激情国产日韩精品一区18| 菠萝蜜视频国产在线播放| 久久夜色精品国产亚洲aⅴ| 色网站免费在线观看| 色狠狠av一区二区三区香蕉蜜桃| 成年午夜在线| 中文字幕日韩欧美在线视频| av网页在线| www国产精品视频| 久久bbxx| 欧美激情精品久久久久久蜜臀| 欧美人与性动交α欧美精品济南到 | 日韩欧美一区二区视频在线播放 | 欧美成人午夜免费视在线看片| 超碰个人在线| 久久理论片午夜琪琪电影网| heyzo高清在线| 欧美一区第一页| 日日av拍夜夜添久久免费| 国产精品视频免费在线| 欧美成人一二区| 亚洲a区在线视频| 99国产精品免费网站| 久久久精品动漫| 久久99久久人婷婷精品综合| 婷婷亚洲婷婷综合色香五月| 欧美韩国日本在线观看| 成年在线观看视频| 亚洲经典三级| www日韩在线观看| 激情五月婷婷综合网| 91人妻一区二区| 久久久综合网站| 视频国产一区二区| 亚洲一级电影视频| 亚洲熟妇无码乱子av电影| 欧美日韩亚洲另类| 精品人妻av一区二区三区| 日韩精品久久久久久久玫瑰园| 91精品国产综合久久久久久豆腐| 久久夜色精品国产欧美乱| 末成年女av片一区二区下载| 国产精品一区二区三区毛片淫片| 人人爱人人干婷婷丁香亚洲| 看高清中日韩色视频| 欧美国产偷国产精品三区| 热99这里只有精品| 久久国产精品无码网站| 久久精品女同亚洲女同13| 欧美极品少妇xxxxⅹ高跟鞋 | 国产精品日本一区二区| 国产亚洲电影| 欧美日韩激情四射| 三级不卡在线观看| xxxx视频在线观看| 中文字幕不卡在线| 国产 欧美 日韩 在线| 欧美人与z0zoxxxx视频| 天堂a√中文在线| 久久亚洲影音av资源网| 欧美韩国亚洲| 高清视频在线观看一区| 视频在线不卡免费观看| 国产成人无码精品久久久性色| 激情综合网激情| 91精彩刺激对白露脸偷拍| 一区二区三区免费在线观看| 国产日韩在线免费观看| 亚洲国产精品yw在线观看| 黄色免费在线看| 国产999精品久久久| 第四色中文综合网| 波多野结衣激情| 秋霞电影网一区二区| 亚洲自拍偷拍一区二区 | 日韩一级片中文字幕| 欧美成人性福生活免费看| 五月香视频在线观看| 欧美在线视频免费观看| 超碰成人97| 水蜜桃在线免费观看| 麻豆成人综合网| 免费网站在线高清观看| 欧美日韩亚洲91| 无码国产精品96久久久久| 久久久久久久久爱| 久久的色偷偷| 日本a级片在线观看| 精品夜夜嗨av一区二区三区| 激情无码人妻又粗又大| 欧美怡红院视频| 国产视频第一区| 国产成+人+综合+亚洲欧美丁香花| 欧美三级电影在线| 农民人伦一区二区三区| 不卡在线观看av| 日本五十路女优| 亚洲精品国精品久久99热一 | 国产精品久久久久久久久久 | 91在线精品秘密一区二区| 激情综合网五月婷婷| 精品国产乱码久久久久久夜甘婷婷| 性欧美videoshd高清| 亚洲精品欧美日韩专区| 亚洲精品午夜av福利久久蜜桃| 日韩成人精品视频在线观看| 亚洲欧洲美洲综合色网| 91久久久久久久久久久久| 日韩视频欧美视频| 国产精品久久免费视频| 青草全福视在线| 国产成a人无v码亚洲福利| 精品深夜av无码一区二区老年| 欧美精品一区二区三区很污很色的| 人妖欧美1区| 国产九区一区在线| 亚洲伊人观看| 日本理论中文字幕| 欧美日韩电影在线| av网站在线看| 精品国产乱码久久久久久丨区2区 精品国产乱码久久久久久蜜柚 | 成人小视频在线看| 亚洲国产电影在线观看| 97caocao| 久久久久久久久久亚洲| 中文字幕亚洲影视| 一级黄色特级片| 亚洲欧美成aⅴ人在线观看| 好吊色在线观看| 全亚洲最色的网站在线观看| 日本不卡高清| 国产麻豆剧传媒精品国产| 欧美日韩国产色视频| 久草在线免费福利资源| 91在线色戒在线| 一本久道久久综合狠狠爱| 老司机福利在线观看| 精品精品国产高清a毛片牛牛| 最新欧美色图| 亚洲 欧洲 日韩| 99视频有精品| 亚洲天堂视频网| 久久久久亚洲精品| 精品国产一区二区三区四区| 日本少妇一区二区三区| 一本一道久久a久久精品| www在线免费观看视频| 久久久精品有限公司| 韩国欧美国产一区| av中文在线播放| 毛片精品免费在线观看| 在线观看欧美理论a影院| 日本中文字幕精品| 色老头久久综合| 调教一区二区| 西游记1978| 91小视频在线| 国产高清不卡视频| 国产精品一区二区三区久久久| 一本久道久久综合婷婷鲸鱼|