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

面試官:你說對MySQL事務(wù)很熟?那我問你10個問題

數(shù)據(jù)庫 MySQL
學(xué)習(xí)關(guān)系型數(shù)據(jù)庫MySQL是很好的切入點,大部分人學(xué)習(xí)和工作中用慣了CRUD,對面試官刨根問底的靈魂拷問你還能對答如流嗎?我們有必要了解一些更深層次的數(shù)據(jù)庫基礎(chǔ)原理。

  學(xué)習(xí)關(guān)系型數(shù)據(jù)庫MySQL是很好的切入點,大部分人學(xué)習(xí)和工作中用慣了CRUD,對面試官刨根問底的靈魂拷問你還能對答如流嗎?我們有必要了解一些更深層次的數(shù)據(jù)庫基礎(chǔ)原理。

整理了面試中,關(guān)于MySQL事務(wù)和存儲引擎10個FAQ(Frequently asked questions),你想知道的都在這里。

什么是事務(wù)?

事務(wù)就是「一組原子性的SQL查詢」,或者說一個獨立的工作單元。如果數(shù)據(jù)庫引擎能夠成功地對數(shù)據(jù)庫應(yīng)用該組查詢的全部語句,那么就執(zhí)行該組查詢。如果其中有任何一條語句因為崩潰或其他原因無法執(zhí)行,那么所有的語句都不會執(zhí)行。也就是說,事務(wù)內(nèi)的語句,要么全部執(zhí)行成功,要么全部執(zhí)行失敗。

事務(wù)控制語法知道嗎? 

  1. 1BEGIN 或 START TRANSACTION 顯式地開啟一個事務(wù);  
  2. 2COMMIT / COMMIT WORK二者是等價的。提交事務(wù),并使已對數(shù)據(jù)庫進(jìn)行的所有修改成為永久性的;  
  3. 3ROLLBACK / ROLLBACK WORK。回滾會結(jié)束用戶的事務(wù),并撤銷正在進(jìn)行的所有未提交的修改;  
  4. 4SAVEPOINT identifier 在事務(wù)中創(chuàng)建一個保存點,一個事務(wù)中可以有多個 SAVEPOINT;  
  5. 5RELEASE SAVEPOINT identifier 刪除一個事務(wù)的保存點;  
  6. 6ROLLBACK TO identifier 把事務(wù)回滾到標(biāo)記點;  
  7. 7SET TRANSACTION 用來設(shè)置事務(wù)的隔離級別。InnoDB 存儲引擎提供事務(wù)的隔離級別有READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ 和 SERIALIZABLE 

用通俗的語言說說你理解的事務(wù)

用銀行業(yè)務(wù)舉個栗子,用戶lemon有兩銀行卡,一張是招商銀行CMBC的工資卡,另一張是工商銀行ICBC的儲蓄卡,每月10號發(fā)工資都要把招行卡的100萬轉(zhuǎn)到建設(shè)銀行儲蓄卡賬戶。記住這里的銀行縮寫后面就是對應(yīng)的數(shù)據(jù)表名稱,你要記不住,我給你理一理。 

  1. 1招商銀行(CMBC):“存么?白癡!”  
  2. 2中國工商銀行(ICBC): “愛存不存!”  
  3. 3中國建設(shè)銀行(CCB): “存?存不?”  
  4. 4中國銀行(BC): “不存!”  
  5. 5中國農(nóng)業(yè)銀行(ABC): “啊,不存!”  
  6. 6民生銀行(CMSB):“存么?SB!"  
  7. 7興業(yè)銀行(CIB):“存一百。”  
  8. 8國家開發(fā)銀行(CDB):“存點吧!”  
  9. 9匯豐銀行(HSBC):“還是不存!” 

[[321632]]

這個轉(zhuǎn)賬的操作可以簡化抽成一個事務(wù),包含如下步驟:

  1.  查詢CMBC賬戶的余額是否大于100萬
  2.  從CMBC賬戶余額中減去100萬
  3.  在ICBC賬戶余額中增加100萬

以下語句對應(yīng)創(chuàng)建了一個轉(zhuǎn)賬事務(wù): 

  1. 1START TRANSACTION;  
  2. 2SELECT balance FROM CMBC WHERE username='lemon';  
  3. 3UPDATE CMBC SET balancebalance = balance - 1000000.00 WHERE username = 'lemon';  
  4. 4UPDATE ICBC SET balancebalance = balance + 1000000.00 WHERE username = 'lemon';  
  5. 5COMMIT; 

事務(wù)的ACID特性是什么?

ACID其實是事務(wù)特性的英文首字母縮寫,具體的含義是這樣的:

  •  原子性(atomicity)

    一個事務(wù)必須被視為一個不可分割的最小工作單元,整個事務(wù)中的所有操作要么全部提交成功,要么全部失敗回滾,對于一個事務(wù)來說,不可能只執(zhí)行其中的一部分操作。

  •  致性(consistency)

    數(shù)據(jù)庫總是從一個一致性的狀態(tài)轉(zhuǎn)換到另外一個一致性的狀態(tài)。在前面的例子中,一致性確保了,即使在執(zhí)行第三、四條語句之間時系統(tǒng)崩潰,CMBC賬戶中也不會損失100萬,不然lemon要哭死,因為事務(wù)最終沒有提交,所以事務(wù)中所做的修改也不會保存到數(shù)據(jù)庫中。

  •  隔離性(isolation)

    通常來說,一個事務(wù)所做的修改在最終提交以前,對其他事務(wù)是不可見的。在前面的例子中,當(dāng)執(zhí)行完第三條語句、第四條語句還未開始時,此時如果有其他人準(zhǔn)備給lemon的CMBC賬戶存錢,那他看到的CMBC賬戶里還是有100萬的。

  •  持久性(durability)

    一旦事務(wù)提交,則其所做的修改就會永久保存到數(shù)據(jù)庫中。此時即使系統(tǒng)崩潰,修改的數(shù)據(jù)也不會丟失。持久性是個有點模糊的概念,因為實際上持久性也分很多不同的級別。有些持久性策略能夠提供非常強的安全保障,而有些則未必。而且「不可能有能做到100%的持久性保證的策略」否則還需要備份做什么。

ACID

什么是臟讀、不可重復(fù)讀、幻讀

臟讀 

在事務(wù)A修改數(shù)據(jù)之后提交數(shù)據(jù)之前,這時另一個事務(wù)B來讀取數(shù)據(jù),如果不加控制,事務(wù)B讀取到A修改過數(shù)據(jù),之后A又對數(shù)據(jù)做了修改再提交,則B讀到的數(shù)據(jù)是臟數(shù)據(jù),此過程稱為臟讀Dirty Read。

臟讀

不可重復(fù)讀

一個事務(wù)內(nèi)在讀取某些數(shù)據(jù)后的某個時間,再次讀取以前讀過的數(shù)據(jù),卻發(fā)現(xiàn)其讀出的數(shù)據(jù)已經(jīng)發(fā)生了變更、或者某些記錄已經(jīng)被刪除了。

不可重復(fù)讀

幻讀

事務(wù)A在按查詢條件讀取某個范圍的記錄時,事務(wù)B又在該范圍內(nèi)插入了新的滿足條件的記錄,當(dāng)事務(wù)A再次按條件查詢記錄時,會產(chǎn)生新的滿足條件的記錄(幻行 Phantom Row)

幻讀

不可重復(fù)讀與幻讀有什么區(qū)別?

  •  不可重復(fù)讀的重點是修改:在同一事務(wù)中,同樣的條件,第一次讀的數(shù)據(jù)和第二次讀的「數(shù)據(jù)不一樣」。(因為中間有其他事務(wù)提交了修改)
  •  幻讀的重點在于新增或者刪除:在同一事務(wù)中,同樣的條件,第一次和第二次讀出來的「記錄數(shù)不一樣」。(因為中間有其他事務(wù)提交了插入/刪除)

四個隔離級別知道嗎?解決了什么問題

SQL實現(xiàn)了四個標(biāo)準(zhǔn)的隔離級別,每一種級別都規(guī)定了一個事務(wù)中所做的修改,哪些在事務(wù)內(nèi)和事務(wù)間是可見的,哪些是不可見的。低級別的隔離級一般支持更高的并發(fā)處理,并擁有更低的系統(tǒng)開銷。

隔離級別

各個隔離級別可以不同程度的解決臟讀、不可重復(fù)讀、幻讀。隔離級別各有所長,沒有完美的解決方案,脫離業(yè)務(wù)場景談具體實施都是耍流氓。

隔離級別對比

MySQL中哪些存儲引擎支持事務(wù)?

MySQL中InnoDB和NDB Cluster存儲引擎提供了事務(wù)處理能力,以及其他支持事務(wù)的第三引擎。

什么是自動提交?

MySQL默認(rèn)采用自動提交AUTOCOMMIT模式。也就是說,如果不是顯式地開始一個事務(wù),則每個查詢都被當(dāng)作一個事務(wù)執(zhí)行提交操作。

對于MyISAM或者內(nèi)存表這些事務(wù)型的表,修改AUTOCOMMIT不會有任何影響。對這類表來說,沒有COMMIT或者ROLLBACK的概念,也可以說是相當(dāng)于一直處于AUTOCOMMIT啟用的模式。

在事務(wù)中可以混合使用存儲引擎嗎?

盡量不要在同一個事務(wù)中使用多種存儲引擎,MySQL服務(wù)器層不管理事務(wù),事務(wù)是由下層的存儲引擎實現(xiàn)的。

如果在事務(wù)中混合使用了事務(wù)型和非事務(wù)型的表(例如InnoDB和MyISAM表),在正常提交的情況下不會有什么問題。

但如果該事務(wù)需要回滾,非事務(wù)型的表上的變更就無法撤銷,這會導(dǎo)致數(shù)據(jù)庫處于不一致的狀態(tài),這種情況很難修復(fù),事務(wù)的最終結(jié)果將無法確定。所以,為每張表選擇合適的存儲引擎非常重要。

MySQL存儲引擎類型有哪些?

最常用的存儲引擎是InnoDB引擎和MyISAM存儲引擎,InnoDB是MySQL的默認(rèn)事務(wù)引擎。

查看數(shù)據(jù)庫表當(dāng)前支持的引擎 : 

  1. 1show table status from 'your_db_name' where name='your_table_name';   
  2. 2查詢結(jié)果表中的`Engine`字段指示存儲引擎類型。 

InnoDB存儲引擎的特點和應(yīng)用場景?

InnoDB是MySQL的默認(rèn)「事務(wù)引擎」,被設(shè)置用來處理大量短期(short-lived)事務(wù),短期事務(wù)大部分情況是正常提交的,很少會回滾。

更多InnoDB事務(wù)模型相關(guān),參考MySQL官方手冊,這里貼一下鏈接:https://dev.mysql.com/doc/refman/5.7/en/innodb-transaction-model.html

歷史

現(xiàn)代MySQL版本中的InnoDB在歷史上叫InnoDB plugin,這個MySQL插件在2008年被開發(fā)出來,直到2010在Oracle收購了Sun公司后,發(fā)布的MySQL5.5才正式使用InnoDB plugin替代了舊版本的InnoDB,至此 「備胎」成功轉(zhuǎn)正成為MySQL的御用引擎而不再是插件,你看一個插件都這么努力。

[[321633]]

特點

采用多版本并發(fā)控制(MVCC,MultiVersion Concurrency Control)來支持高并發(fā)。并且實現(xiàn)了四個標(biāo)準(zhǔn)的隔離級別,通過間隙鎖next-key locking策略防止幻讀的出現(xiàn)。

引擎的表基于聚簇索引建立,聚簇索引對主鍵查詢有很高的性能。不過它的二級索引secondary index非主鍵索引中必須包含主鍵列,所以如果主鍵列很大的話,其他的所有索引都會很大。因此,若表上的索引較多的話,主鍵應(yīng)當(dāng)盡可能的小。另外InnoDB的存儲格式是平臺獨立。

InnoDB做了很多優(yōu)化,比如:磁盤讀取數(shù)據(jù)方式采用的可預(yù)測性預(yù)讀、自動在內(nèi)存中創(chuàng)建hash索引以加速讀操作的自適應(yīng)哈希索引(adaptive hash index),以及能夠加速插入操作的插入緩沖區(qū)(insert buffer)等。

InnoDB通過一些機制和工具支持真正的熱備份,MySQL的其他存儲引擎不支持熱備份,要獲取一致性視圖需要停止對所有表的寫入,而在讀寫混合場景中,停止寫入可能也意味著停止讀取。

MyISAM存儲引擎的特點和應(yīng)用場景?

MyISAM是MySQL 5.1及之前的版本的默認(rèn)的存儲引擎。MyISAM提供了大量的特性,包括全文索引、壓縮、空間函數(shù)(GIS)等,但MyISAM不「支持事務(wù)和行級鎖」,對于只讀數(shù)據(jù),或者表比較小、可以容忍修復(fù)操作,依然可以使用它。

特性

MyISAM「不支持行級鎖而是對整張表加鎖」。讀取時會對需要讀到的所有表加共享鎖,寫入時則對表加排它鎖。但在表有讀取操作的同時,也可以往表中插入新的記錄,這被稱為并發(fā)插入。

MyISAM表可以手工或者自動執(zhí)行檢查和修復(fù)操作。但是和事務(wù)恢復(fù)以及崩潰恢復(fù)不同,可能導(dǎo)致一些「數(shù)據(jù)丟失」,而且修復(fù)操作是非常慢的。

對于MyISAM表,即使是BLOB和TEXT等長字段,也可以基于其前500個字符創(chuàng)建索引,MyISAM也支持「全文索引」,這是一種基于分詞創(chuàng)建的索引,可以支持復(fù)雜的查詢。

如果指定了DELAY_KEY_WRITE選項,在每次修改執(zhí)行完成時,不會立即將修改的索引數(shù)據(jù)寫入磁盤,而是會寫到內(nèi)存中的鍵緩沖區(qū),只有在清理鍵緩沖區(qū)或者關(guān)閉表的時候才會將對應(yīng)的索引塊寫入磁盤。這種方式可以極大的提升寫入性能,但是在數(shù)據(jù)庫或者主機崩潰時會造成「索引損壞」,需要執(zhí)行修復(fù)操作。

InnoDB與MyISAM對比

說了這么多估計看一眼也沒記住,給你一張表,簡單羅列兩種引擎的主要區(qū)別,如下圖。

引擎對比

其他存儲引擎

MySQL還支持其他一些存儲引擎,比如memory引擎、NDB集群引擎、CSV引擎,由于這些引擎沒有上述InnoDB 和MyISAM 常用,這里不作介紹,感興趣可以去翻MySQL文檔了解。這里同樣給出官方鏈接:https://dev.mysql.com/doc/refman/5.7/en/storage-engines.html

引擎列表

再說兩句

這一篇是MySQL基礎(chǔ)篇,我力求用通俗易懂和圖表結(jié)合的形式給大家梳理這塊知識,越是基礎(chǔ)和底層的知識越容易被考察掌握程度,以上知識點都可能成為面試中的一個考察點,相信看完對MySQL事務(wù)和存儲引擎應(yīng)該有一個比較完整的理解。

最后,感謝各位的閱讀,文章的目的是分享對知識的理解,若文中出現(xiàn)明顯紕漏也歡迎指出,我們一起在探討中學(xué)習(xí)。 

 

責(zé)任編輯:龐桂玉 來源: 數(shù)據(jù)庫開發(fā)
相關(guān)推薦

2020-08-13 10:15:34

MySQL數(shù)據(jù)庫面試

2020-06-22 11:50:38

TCPIP協(xié)議

2020-06-17 21:22:56

Serverless面試官架構(gòu)

2021-06-30 07:19:36

React事件機制

2023-07-13 08:19:30

HaspMapRedis元素

2021-07-13 07:52:03

ReactHooks組件

2021-05-31 10:35:34

TCPWebSocket協(xié)議

2015-08-13 10:29:12

面試面試官

2025-06-17 08:35:00

2021-07-29 07:55:20

React Fiber架構(gòu)引擎

2021-07-12 08:35:24

組件應(yīng)用場景

2021-07-07 08:36:45

React應(yīng)用場景

2025-03-04 08:06:17

2024-09-03 07:58:46

2021-03-25 08:45:15

MySQL

2025-06-26 08:22:03

2023-06-07 15:29:33

MySQL事務(wù)面試

2024-09-24 10:28:22

2019-04-15 14:40:46

消息隊列Java編程

2021-06-10 07:51:07

Node.js循環(huán)機制
點贊
收藏

51CTO技術(shù)棧公眾號

亚洲欧美一区二区三区孕妇| 图片区亚洲欧美小说区| 五月婷婷久久综合| 欧美一卡2卡3卡4卡无卡免费观看水多多 | 中文在线а√天堂| 国产精品日产欧美久久久久| 99久久伊人精品影院| 国产高清视频免费在线观看| 精品国产欧美日韩一区二区三区| 久久先锋影音av鲁色资源网| 午夜精品久久久久久久男人的天堂 | 精品一区二区三区在线观看| 久久久久久久网站| 色噜噜噜噜噜噜| 好吊妞视频这里有精品| 亚洲综合在线观看视频| 成人欧美一区二区三区视频xxx| 成人观看免费视频| 精品国产中文字幕第一页 | 色午夜这里只有精品| 91人人澡人人爽| 国产成人精选| 欧美性猛交xxxx偷拍洗澡| 日本不卡二区| 天天av天天翘| 日本在线不卡视频| www高清在线视频日韩欧美| 噜噜噜在线视频| 91欧美极品| 欧美妇女性影城| 8x8x最新地址| 日韩成人亚洲| 日韩欧美一区二区三区久久| 久久久久久www| 中国av在线播放| 成人免费毛片片v| 日本成熟性欧美| 日本熟妇一区二区| 午夜精彩国产免费不卡不顿大片| 精品亚洲aⅴ在线观看| 一本色道久久亚洲综合精品蜜桃| av在线看片| 国产精品不卡在线观看| 超碰97在线人人| 国产三级第一页| 久久超碰97中文字幕| 久久久久久亚洲精品中文字幕 | 国产三级视频在线播放| 免费欧美日韩国产三级电影| 国产精品激情av电影在线观看| 一区二区三区影视| 先锋影音国产精品| 欧美一区二区三区四区高清| 亚洲综合激情视频| 成人免费91| 欧美一区二区三区婷婷月色| 国产麻花豆剧传媒精品mv在线| 搞黄网站在线观看| 亚洲免费高清视频在线| 青草网在线观看| segui88久久综合| 精品久久久久久中文字幕| 国产免费黄色一级片| www中文字幕在线观看| 亚洲v日本v欧美v久久精品| 欧美视频在线免费播放| 另类专区亚洲| 欧美精品在线观看一区二区| 亚洲熟妇国产熟妇肥婆| 在线天堂资源www在线污| 色av成人天堂桃色av| 亚洲最大综合网| 国产午夜久久av| 欧美精品日韩精品| 能看毛片的网站| 久久资源综合| 一本色道久久综合狠狠躁篇怎么玩| 中国免费黄色片| 国产99久久| 日韩一区二区福利| wwwww黄色| 欧美精选一区| 欧美亚洲免费电影| 在线观看日韩中文字幕| 日本大胆欧美人术艺术动态| 成人中心免费视频| 懂色av一区二区三区四区| 久久九九99视频| 路边理发店露脸熟妇泻火| 国产一二区在线| 午夜精品aaa| xx欧美撒尿嘘撒尿xx| 中文字幕一区日韩精品| 在线不卡国产精品| www.黄色在线| 韩国自拍一区| 国产精品一区二区三区毛片淫片| 在线视频精品免费| 国产精品白丝jk白祙喷水网站| 成人久久一区二区三区| 五月天婷婷在线观看| 国产精品久久久久久久久免费樱桃 | 盗摄牛牛av影视一区二区| 欧美xxxxxxxxx| 成人免费无遮挡无码黄漫视频| 蜜臀av免费一区二区三区| 美日韩精品视频免费看| 特级西西444www大胆免费看| 全国精品久久少妇| 精品欧美国产一区二区三区不卡| 午夜影院免费视频| 久久亚洲精华国产精华液 | 涩涩视频免费看| ...av二区三区久久精品| 国产免费一区二区三区视频| 日本免费精品| 久久综合久久88| 自拍偷拍色综合| 久久丝袜美腿综合| 毛片在线播放视频| 精品视频在线观看免费观看| 一区二区在线免费视频| 青草视频在线观看免费| 成人国产精品免费观看视频| 400部精品国偷自产在线观看| av在线加勒比| 日韩欧美另类在线| 麻豆精品国产免费| 秋霞成人午夜伦在线观看| 欧美极品色图| 26uuu亚洲电影| 日韩av在线免费播放| 天天操天天射天天爽| 国产成人免费在线视频| 欧美高清视频一区二区三区在线观看 | 国产网站在线看| 欧美专区在线| 久久精品一二三区| 黄视频网站在线观看| 欧美成人r级一区二区三区| 麻豆明星ai换脸视频| 国产在线精品一区二区夜色 | 久久动漫网址| 欧美精品福利在线| 亚洲精品国产suv一区| 亚洲在线观看免费| 动漫美女无遮挡免费| 亚洲青涩在线| 久久久久久久久久久久久久一区| 免费黄色在线网站| 91精品国产一区二区三区蜜臀| 成人影视免费观看| 老司机精品导航| 亚洲精品一区二区三区四区五区| 17videosex性欧美| 91精品婷婷国产综合久久| 手机在线免费看片| 国产成人精品网址| 中文视频一区视频二区视频三区| 亚洲精品一区| 国产午夜精品一区二区三区 | 又大又长粗又爽又黄少妇视频| 欧美理论在线播放| 国产精品视频在线观看| 日韩一二三四| 欧洲一区在线电影| 亚洲区一区二区三| 国产毛片精品视频| 久久亚洲精品无码va白人极品| 久久久久久久性潮| 久久国产精品影视| 欧美一区二区在线观看视频| 欧美日韩亚洲国产一区| 国产 xxxx| 国产综合久久| 久久综合伊人77777麻豆| 国产第一页在线| 亚洲跨种族黑人xxx| 亚洲黄色一区二区| 中文字幕av免费专区久久| 人妻体体内射精一区二区| 一区二区三区四区在线观看国产日韩| 国产精品一区二区三| 国产三级视频在线播放线观看| 同产精品九九九| 亚洲天堂av中文字幕| 国产999精品久久久久久绿帽| 免费看日本黄色| 亚洲伊人春色| 国产va免费精品高清在线观看| 四虎成人免费在线| 欧美日本在线一区| 日韩精品一区二区亚洲av性色| 蜜乳av一区二区三区| 一级特黄妇女高潮| 精品国产网站| 国产一区二区视频在线免费观看| freexxx性亚洲精品| 最好看的2019年中文视频| 黄色av中文字幕| 欧美日韩高清在线| www.色小姐com| 国产喷白浆一区二区三区| 任你躁av一区二区三区| 美腿丝袜在线亚洲一区| 一本一道久久a久久精品综合| 午夜精品久久久久久毛片| 2020国产精品视频| 精品精品导航| 日韩精品视频在线免费观看| 一区二区三区在线观看av| 亚洲码国产岛国毛片在线| 日本黄色大片在线观看| 另类中文字幕网| 欧美精品在欧美一区二区| 999精品一区| 日韩欧美国产二区| 欧一区二区三区| 91精品久久久久久久久久入口 | 天天干天天舔天天射| 欧美顶级少妇做爰| 中文字幕精品在线观看| 亚洲精选免费视频| 欧美性生交大片| 欧美激情综合在线| 欧美黄色激情视频| 久久久国产综合精品女国产盗摄| 91丝袜超薄交口足| 久久99久久久久久久久久久| 手机在线看福利| 男人的j进女人的j一区| 91网址在线播放| 日韩 欧美一区二区三区| 久久99国产精品一区| 97精品一区二区| 一区在线电影| 日韩最新在线| 91精品视频免费观看| 久久影视精品| 国产深夜精品福利| 精品国产亚洲一区二区三区大结局| 午夜精品久久久久久久男人的天堂 | 国产真人真事毛片| 亚洲国产精品一区二区久久恐怖片 | 视频二区在线播放| 免费在线观看视频一区| 天天爽天天爽夜夜爽| 麻豆高清免费国产一区| 日本不卡一区二区在线观看| 久久精品国产免费看久久精品| 免费看黄在线看| 国产欧美成人| 欧美一级片中文字幕| 日本欧洲一区二区| 欧美成年人视频在线观看| 卡一卡二国产精品 | 久久精品网址| 亚洲成色www.777999| 精品一区在线看| 国产男女无遮挡猛进猛出| 成人免费看视频| 日本japanese极品少妇| 粉嫩aⅴ一区二区三区四区| 在线观看亚洲免费视频| 91麻豆免费看片| 成人免费视频入口| 久久久精品黄色| 免费黄色三级网站| 久久久久99精品一区| 一本在线免费视频| 一区二区免费看| 黄色一级片免费在线观看| 欧美三片在线视频观看| av高清一区二区| 日韩成人xxxx| 秋霞a级毛片在线看| 久久999免费视频| 日韩pacopacomama| 91香蕉国产在线观看| 欧美韩国日本| 国产三级精品在线不卡| 这里视频有精品| 茄子视频成人在线观看| 婷婷综合亚洲| 欧美日韩亚洲一| 国产亚洲毛片在线| 色www免费视频| av中文字幕亚洲| 黑人狂躁日本娇小| 岛国精品视频在线播放| 久久久久久久久久久影院| 这里只有精品视频在线观看| 欧美日韩国产中文字幕在线| 亚洲成人免费网站| 香蕉视频在线免费看| 97色在线播放视频| 成人在线精品| 日韩免费三级| 中文精品视频| 欧美日韩一区二区区| 国产成人精品综合在线观看 | 久久久久久久久97| 91黄色免费网站| 丰满熟妇人妻中文字幕| 亚洲国产成人av在线| 免费av网站观看| 久久九九免费视频| 深夜成人福利| 国内外成人免费视频| 欧美一区影院| 亚洲一区日韩精品| 久久久夜色精品亚洲| 黄色激情视频在线观看| 91精品国产91久久久久久一区二区 | 亚洲韩国日本中文字幕| 污网站在线免费看| 国产欧美中文字幕| 成人在线免费观看网站| 天天干天天色天天爽| 蜜臀av性久久久久蜜臀aⅴ| 国产传媒第一页| 天天影视涩香欲综合网| 国精产品乱码一区一区三区四区| 日韩国产在线播放| 精精国产xxxx视频在线中文版| 欧美最猛黑人xxxx黑人猛叫黄| 日本另类视频| 日韩欧美精品一区二区| 老妇喷水一区二区三区| 国产亚洲色婷婷久久| 国产精品视频麻豆| 久久久久精彩视频| 在线播放日韩专区| 精品日韩视频| 亚洲人成影视在线观看| 日韩成人av影视| 日韩视频在线观看免费视频| 日本精品视频一区二区| 可以直接在线观看的av| 日本欧美精品在线| 九九热线有精品视频99| 国产成人亚洲精品无码h在线| 国产精品18久久久久久vr| 黄色片在线观看网站| 欧美一区二区久久久| 免费电影网站在线视频观看福利| 国产精品美女在线观看| 欧美一区2区| 亚洲激情在线看| 亚洲精品欧美在线| 亚洲毛片在线播放| 18久久久久久| 国产影视一区| 三级在线免费看| 综合激情成人伊人| 无码视频一区二区三区| 一本大道亚洲视频| 国产激情精品一区二区三区| 好吊色视频988gao在线观看| 成人天堂资源www在线| 在线观看 亚洲| 色综合伊人色综合网站| 欧洲大片精品免费永久看nba| 亚洲欧美丝袜| 国产一区二区久久| 免费一级suv好看的国产网站 | 欧美丰满少妇xxxx| 黑人久久a级毛片免费观看| 欧美激情国产精品日韩| 国产精品理论在线观看| 精品国产va久久久久久久| 国内精品久久久久久影视8| 51精品国产| 日韩精品一区二区三区四 | 国产美女视频免费看| 亚洲一区二区三区四区的| 日本在线一二三| 91视频国产一区| 国产日韩欧美一区二区三区在线观看| 亚洲视频天天射| 91福利区一区二区三区| a视频在线免费看| 欧美日韩国产综合在线| 国内精品伊人久久久久av一坑| fc2ppv在线播放| 亚洲精品国产精品国自产在线| 国精产品一区一区三区mba下载| 91手机在线播放| 久久精品成人| 欧美成人国产精品高潮| 亚洲欧美国产一本综合首页| 国产一区 二区| 99蜜桃臀久久久欧美精品网站| 国产亚洲一区二区三区在线观看| 日韩中文字幕高清| 欧美日本高清一区| 日韩精品久久| 新91视频在线观看| 日韩免费成人网| 国产极品一区|