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

老司機也該掌握的MySQL優化指南

數據庫 MySQL
當MySQL單表記錄數過大時,增刪改查性能都會急劇下降,所以我們本文會提供一些優化參考,大家可以參考以下步驟來優化。

老司機也該掌握的MySQL優化指南

當MySQL單表記錄數過大時,增刪改查性能都會急劇下降,所以我們本文會提供一些優化參考,大家可以參考以下步驟來優化:

一、單表優化

除非單表數據未來會一直不斷上漲,否則不要一開始就考慮拆分,拆分會帶來邏輯、部署、運維的各種復雜度。一般以整型值為主的表在***以下,字符串為主的表在五百萬以下是沒有太大問題的,而事實上很多時候MySQL單表的性能依然有不少優化空間,甚至能正常支撐***以上的數據量。

1.字段

  •  盡量使用TINYINT、SMALLINT、MEDIUM_INT作為整數類型而非INT,如果非負則加上UNSIGNED;
  •  VARCHAR的長度只分配真正需要的空間;
  •  使用枚舉或整數代替字符串類型;
  •  盡量使用TIMESTAMP而非DATETIME;
  •  單表不要有太多字段,建議在20以內;
  •  避免使用字段,很難查詢優化且占用額外索引空間;
  •  用整型來存IP。

2.索引

  •  索引并不是越多越好,要根據查詢有針對性的創建,考慮在WHERE和ORDER BY命令上涉及的列建立索引,可根據EXPLAIN來查看是否用了索引還是全表掃描;
  •  應盡量避免在WHERE子句中對字段進行值判斷,否則將導致引擎放棄使用索引而進行全表掃描;
  •  值分布很***的字段不適合建索引,例如“性別”這種只有兩三個值的字段;
  •  字符字段只建前綴索引;
  •  字符字段***不要做主鍵;
  •  不用外鍵,由程序保證約束;
  •  盡量不用UNIQUE,由程序保證約束;
  •  使用多列索引時主意順序和查詢條件保持一致,同時刪除不必要的單列索引。

3.查詢SQL

  •  可通過開啟慢查詢日志來找出較慢的SQL;
  •  不做列運算:SELECT id WHERE age + 1 = 10,任何對列的操作都將導致表掃描,它包括數據庫教程函數、計算表達式等等,查詢時要盡可能將操作移至等號右邊;
  •  sql語句盡可能簡單:一條sql只能在一個cpu運算;大語句拆小語句,減少鎖時間;一條大sql可以堵死整個庫;
  •  不用SELECT *;
  •  OR改寫成IN:OR的效率是n級別,IN的效率是log(n)級別,IN的個數建議控制在200以內;
  •  不用函數和觸發器,在應用程序實現;
  •  避免%xxx式查詢;
  •  少用JOIN;
  •  使用同類型進行比較,比如用'123'和'123'比,123和123比;
  •  盡量避免在WHERE子句中使用!=或<>操作符,否則將引擎放棄使用索引而進行全表掃描;
  •  對于連續數值,使用BETWEEN不用IN:SELECT id FROM t WHERE num BETWEEN 1 AND 5;
  •  列表數據不要拿全表,要使用LIMIT來分頁,每頁數量也不要太大。

4.引擎

目前廣泛使用的是MyISAM和InnoDB兩種引擎:

MyISAM

MyISAM引擎是MySQL 5.1及之前版本的默認引擎,它的特點是:

  •  不支持行鎖,讀取時對需要讀到的所有表加鎖,寫入時則對表加排它鎖;
  •  不支持事務;
  •  不支持外鍵;
  •  不支持崩潰后的安全恢復;
  •  在表有讀取查詢的同時,支持往表中插入新紀錄;
  •  支持BLOB和TEXT的前500個字符索引,支持全文索引;
  •  支持延遲更新索引,極大提升寫入性能;
  •  對于不會進行修改的表,支持壓縮表,極大減少磁盤空間占用。

InnoDB

InnoDB在MySQL 5.5后成為默認索引,它的特點是:

  •  支持行鎖,采用MVCC來支持高并發;
  •  支持事務;
  •  支持外鍵;
  •  支持崩潰后的安全恢復;
  •  不支持全文索引。

ps: 據說InnoDB已經在MySQL 5.6.4支持全文索引了

總體來講,MyISAM適合SELECT密集型的表,而InnoDB適合INSERT和UPDATE密集型的表。

5.系統調優參數

可以使用下面幾個工具來做基準測試:

  •  sysbench:一個模塊化,跨平臺以及多線程的性能測試工具。

    https://github.com/akopytov/sysbench

  •  iibench-mysql:基于Java的MySQL / Percona / MariaDB 索引進行插入性能測試工具。

    https://github.com/tmcallaghan/iibench-mysql

  •  tpcc-mysql:Percona開發的TPC-C測試工具。

    https://github.com/Percona-Lab/tpcc-mysql

具體的調優參數內容較多,具體可參考官方文檔,這里介紹一些比較重要的參數:

  •  back_log:back_log值可以指出在MySQL暫時停止回答新請求之前的短時間內多少個請求可以被存在堆棧中。也就是說,如果MySQL的連接數據達到max_connections時,新來的請求將會被存在堆棧中,以等待某一連接釋放資源,該堆棧的數量即back_log,如果等待連接的數量超過back_log,將不被授予連接資源。可以從默認的50升至500。
  •  wait_timeout:數據庫連接閑置時間,閑置連接會占用內存資源。可以從默認的8小時減到半小時。
  •  max_user_connection:***連接數,默認為0無上限,***設一個合理上限。
  •  thread_concurrency:并發線程數,設為CPU核數的兩倍。
  •  skip_name_resolve:禁止對外部連接進行DNS解析,消除DNS解析時間,但需要所有遠程主機用IP訪問。
  •  key_buffer_size:索引塊的緩存大小,增加會提升索引處理速度,對MyISAM表性能影響***。對于內存4G左右,可設為256M或384M,通過查詢show status like 'key_read%',保證key_reads / key_read_requests在0.1%以下***。
  •  innodb_buffer_pool_size:緩存數據塊和索引塊,對InnoDB表性能影響***。通過查詢show status like 'Innodb_buffer_pool_read%',保證 (Innodb_buffer_pool_read_requests – Innodb_buffer_pool_reads) / Innodb_buffer_pool_read_requests越高越好。
  •  innodb_additional_mem_pool_size:InnoDB存儲引擎用來存放數據字典信息以及一些內部數據結構的內存空間大小,當數據庫對象非常多的時候,適當調整該參數的大小以確保所有數據都能存放在內存中提高訪問效率,當過小的時候,MySQL會記錄Warning信息到數據庫的錯誤日志中,這時就需要該調整這個參數大小。
  •  innodb_log_buffer_size:InnoDB存儲引擎的事務日志所使用的緩沖區,一般來說不建議超過32MB。
  •  query_cache_size:緩存MySQL中的ResultSet,也就是一條SQL語句執行的結果集,所以僅僅只能針對select語句。當某個表的數據有任何任何變化,都會導致所有引用了該表的select語句在Query Cache中的緩存數據失效。所以,當我們數據變化非常頻繁的情況下,使用Query Cache可能得不償失。根據***率(Qcache_hits/(Qcache_hits+Qcache_inserts)*100))進行調整,一般不建議太大,256MB可能已經差不多了,大型的配置型靜態數據可適當調大。可以通過命令show status like 'Qcache_%'查看目前系統Query catch使用大小。
  •  read_buffer_size:MySQL讀入緩沖區大小。對表進行順序掃描的請求將分配一個讀入緩沖區,MySQL會為它分配一段內存緩沖區。如果對表的順序掃描請求非常頻繁,可以通過增加該變量值以及內存緩沖區大小提高其性能。
  •  sort_buffer_size:MySQL執行排序使用的緩沖大小。如果想要增加ORDER BY的速度,首先看是否可以讓MySQL使用索引而不是額外的排序階段。如果不能,可以嘗試增加sort_buffer_size變量的大小。
  •  read_rnd_buffer_size:MySQL的隨機讀緩沖區大小。當按任意順序讀取行時(例如按照排序順序),將分配一個隨機讀緩存區。進行排序查詢時,MySQL會首先掃描一遍該緩沖,以避免磁盤搜索,提高查詢速度,如果需要排序大量數據,可適當調高該值。但MySQL會為每個客戶連接發放該緩沖空間,所以應盡量適當設置該值,以避免內存開銷過大。
  •  record_buffer:每個進行一個順序掃描的線程為其掃描的每張表分配這個大小的一個緩沖區。如果你做很多順序掃描,可能想要增加該值。
  •  thread_cache_size:保存當前沒有與連接關聯但是準備為后面新的連接服務的線程,可以快速響應連接的線程請求而無需創建新的。
  •  table_cache:類似于thread_cache _size,但用來緩存表文件,對InnoDB效果不大,主要用于MyISAM。

6.升級硬件

Scale up,這個不多說了,根據MySQL是CPU密集型還是I/O密集型,通過提升CPU和內存、使用SSD,都能顯著提升MySQL性能。

二、讀寫分離

也是目前常用的優化,從庫讀主庫寫,一般不要采用雙主或多主引入很多復雜性,盡量采用文中的其他方案來提高性能。同時目前很多拆分的解決方案同時也兼顧考慮了讀寫分離。

三、緩存

緩存可以發生在這些層次:

  •  MySQL內部:在系統調優參數介紹了相關設置;
  •  數據訪問層:比如MyBatis針對SQL語句做緩存,而Hibernate可以精確到單個記錄,這里緩存的對象主要是持久化對象Persistence Object;
  •  應用服務層:可以通過編程手段對緩存做到更精準的控制和更多的實現策略,這里緩存的對象是數據傳輸對象Data Transfer Object;
  •  Web層:針對web頁面做緩存;
  •  瀏覽器客戶端:用戶端的緩存。

可以根據實際情況在一個層次或多個層次結合加入緩存。這里重點介紹下服務層的緩存實現,目前主要有兩種方式:

  •  直寫式(Write Through):在數據寫入數據庫后,同時更新緩存,維持數據庫與緩存的一致性。這也是當前大多數應用緩存框架如Spring Cache的工作方式。這種實現非常簡單,同步好,但效率一般。
  •  回寫式(Write Back):當有數據要寫入數據庫時,只會更新緩存,然后異步批量的將緩存數據同步到數據庫上。這種實現比較復雜,需要較多的應用邏輯,同時可能會產生數據庫與緩存的不同步,但效率非常高。

四、表分區

MySQL在5.1版引入的分區是一種簡單的水平拆分,用戶需要在建表的時候加上分區參數,對應用是透明的無需修改代碼。

對用戶來說,分區表是一個獨立的邏輯表,但是底層由多個物理子表組成,實現分區的代碼實際上是通過對一組底層表的對象封裝,但對SQL層來說是一個完全封裝底層的黑盒子。MySQL實現分區的方式也意味著索引也是按照分區的子表定義,沒有全局索引。

用戶的SQL語句是需要針對分區表做優化,SQL條件中要帶上分區條件的列,從而使查詢定位到少量的分區上,否則就會掃描全部分區,可以通過EXPLAIN PARTITIONS來查看某條SQL語句會落在那些分區上,從而進行SQL優化,如下圖5條記錄落在兩個分區上: 

  1. mysql> explain partitions select count(1) from user_partition where id in (1,2,3,4,5);  
  2. +----+-------------+----------------+------------+-------+---------------+---------+---------+------+------+--------------------------+  
  3. | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | Extra |  
  4. | 1 | SIMPLE | user_partition | p1,p4 | range | PRIMARY | PRIMARY | 8 | | 5 | Using where; Using index |  
  5. 1 row in set (0.00 sec) 

分區的好處是:

  •  可以讓單表存儲更多的數據;
  •  分區表的數據更容易維護,可以通過清楚整個分區批量刪除大量數據,也可以增加新的分區來支持新插入的數據,另外,還可以對一個獨立分區進行優化、檢查、修復等操作;
  •  部分查詢能夠從查詢條件確定只落在少數分區上,速度會很快;
  •  分區表的數據還可以分布在不同的物理設備上,從而搞笑利用多個硬件設備;
  •  可以使用分區表賴避免某些特殊瓶頸,例如InnoDB單個索引的互斥訪問、ext3文件系統的inode鎖競爭;
  •  可以備份和恢復單個分區。

分區的限制和缺點:

  •  一個表最多只能有1024個分區;
  •  如果分區字段中有主鍵或者唯一索引的列,那么所有主鍵列和唯一索引列都必須包含進來;
  •  分區表無法使用外鍵約束;
  •  值會使分區過濾無效;
  •  所有分區必須使用相同的存儲引擎。

分區的類型:

  •  RANGE分區:基于屬于一個給定連續區間的列值,把多行分配給分區。
  •  LIST分區:類似于按RANGE分區,區別在于LIST分區是基于列值匹配一個離散值集合中的某個值來進行選擇。
  •  HASH分區:基于用戶定義的表達式的返回值來進行選擇的分區,該表達式使用將要插入到表中的這些行的列值進行計算。這個函數可以包含MySQL中有效的、產生非負整數值的任何表達式。
  •  KEY分區:類似于按HASH分區,區別在于KEY分區只支持計算一列或多列,且MySQL服務器提供其自身的哈希函數。必須有一列或多列包含整數值。

分區適合的場景有:

  •  最適合的場景數據的時間序列性比較強,則可以按時間來分區,如下所示: 
  1. CREATE TABLE members (  
  2. firstname VARCHAR(25) NOT ,  
  3. lastname VARCHAR(25) NOT ,  
  4. username VARCHAR(16) NOT ,  
  5. email VARCHAR(35),  
  6. joined DATE NOT  
  7. )PARTITION BY RANGE( YEAR(joined) ) (  
  8. PARTITION p0 VALUES LESS THAN (1960),  
  9. PARTITION p1 VALUES LESS THAN (1970),  
  10. PARTITION p2 VALUES LESS THAN (1980),  
  11. PARTITION p3 VALUES LESS THAN (1990),  
  12. PARTITION p4 VALUES LESS THAN MAXVALUE  
  13. ); 

查詢時加上時間范圍條件效率會非常高,同時對于不需要的歷史數據能很容的批量刪除。

  •  如果數據有明顯的熱點,而且除了這部分數據,其他數據很少被訪問到,那么可以將熱點數據單獨放在一個分區,讓這個分區的數據能夠有機會都緩存在內存中,查詢時只訪問一個很小的分區表,能夠有效使用索引和緩存。

另外MySQL有一種早期的簡單的分區實現 - 合并表(merge table),限制較多且缺乏優化,不建議使用,應該用新的分區機制來替代。

五、垂直拆分

垂直分庫是根據數據庫里面的數據表的相關性進行拆分,比如:一個數據庫里面既存在用戶數據,又存在訂單數據,那么垂直拆分可以把用戶數據放到用戶庫、把訂單數據放到訂單庫。

垂直分表是對數據表進行垂直拆分的一種方式,常見的是把一個多字段的大表按常用字段和非常用字段進行拆分,每個表里面的數據記錄數一般情況下是相同的,只是字段不一樣,使用主鍵關聯。

比如原始的用戶表是:

垂直拆分后是:

垂直拆分的優點是:

  •  可以使得行數據變小,一個數據塊(Block)就能存放更多的數據,在查詢時就會減少I/O次數(每次查詢時讀取的Block 就少);
  •  可以達到***化利用Cache的目的,具體在垂直拆分的時候可以將不常變的字段放一起,將經常改變的放一起;
  •  數據維護簡單。

缺點是:

  •  主鍵出現冗余,需要管理冗余列;
  •  會引起表連接JOIN操作(增加CPU開銷)可以通過在業務服務器上進行join來減少數據庫壓力;
  •  依然存在單表數據量過大的問題(需要水平拆分)。
  •  事務處理復雜。

六、水平拆分

1.概述

水平拆分是通過某種策略將數據分片來存儲,分庫內分表和分庫兩部分,每片數據會分散到不同的MySQL表或庫,達到分布式的效果,能夠支持非常大的數據量。前面的表分區本質上也是一種特殊的庫內分表。

庫內分表,僅僅是單純的解決了單一表數據過大的問題,由于沒有把表的數據分布到不同的機器上,因此對于減輕MySQL服務器的壓力來說,并沒有太大的作用,大家還是競爭同一個物理機上的IO、CPU、網絡,這個就要通過分庫來解決。

前面垂直拆分的用戶表如果進行水平拆分,結果是:

實際情況中往往會是垂直拆分和水平拆分的結合,即將Users_A_M和Users_N_Z再拆成Users和UserExtras,這樣一共四張表。

水平拆分的優點是:

  •  不存在單庫大數據和高并發的性能瓶頸;
  •  應用端改造較少;
  •  提高了系統的穩定性和負載能力。

缺點是:

  •  分片事務一致性難以解決;
  •  跨節點Join性能差,邏輯復雜;
  •  數據多次擴展難度跟維護量極大。

2.分片原則

  •  能不分就不分,參考單表優化;
  •  分片數量盡量少,分片盡量均勻分布在多個數據結點上,因為一個查詢SQL跨分片越多,則總體性能越差,雖然要好于所有數據在一個分片的結果,只在必要的時候進行擴容,增加分片數量;
  •  分片規則需要慎重選擇做好提前規劃,分片規則的選擇,需要考慮數據的增長模式,數據的訪問模式,分片關聯性問題,以及分片擴容問題,最近的分片策略為范圍分片,枚舉分片,一致性Hash分片,這幾種分片都有利于擴容;
  •  盡量不要在一個事務中的SQL跨越多個分片,分布式事務一直是個不好處理的問題;
  •  查詢條件盡量優化,盡量避免Select * 的方式,大量數據結果集下,會消耗大量帶寬和CPU資源,查詢盡量避免返回大量結果集,并且盡量為頻繁使用的查詢語句建立索引;
  •  通過數據冗余和表分區賴降低跨庫Join的可能。

這里特別強調一下分片規則的選擇問題,如果某個表的數據有明顯的時間特征,比如訂單、交易記錄等,則他們通常比較合適用時間范圍分片,因為具有時效性的數據,我們往往關注其近期的數據,查詢條件中往往帶有時間字段進行過濾,比較好的方案是,當前活躍的數據,采用跨度比較短的時間段進行分片,而歷史性的數據,則采用比較長的跨度存儲。

總體上來說,分片的選擇是取決于最頻繁的查詢SQL的條件,因為不帶任何Where語句的查詢SQL,會遍歷所有的分片,性能相對最差,因此這種SQL越多,對系統的影響越大,所以我們要盡量避免這種SQL的產生。

3.解決方案

由于水平拆分牽涉的邏輯比較復雜,當前也有了不少比較成熟的解決方案。這些方案分為兩大類:客戶端架構和代理架構。

客戶端架構

通過修改數據訪問層,如JDBC、Data Source、MyBatis,通過配置來管理多個數據源,直連數據庫,并在模塊內完成數據的分片整合,一般以Jar包的方式呈現。

這是一個客戶端架構的例子:

可以看到分片的實現是和應用服務器在一起的,通過修改Spring JDBC層來實現。

客戶端架構的優點是:

  •  應用直連數據庫,降低外圍系統依賴所帶來的宕機風險;
  •  集成成本低,無需額外運維的組件。

缺點是:

  •  限于只能在數據庫訪問層上做文章,擴展性一般,對于比較復雜的系統可能會力不從心;
  •  將分片邏輯的壓力放在應用服務器上,造成額外風險。

代理架構

通過獨立的中間件來統一管理所有數據源和數據分片整合,后端數據庫集群對前端應用程序透明,需要獨立部署和運維代理組件。

這是一個代理架構的例子:

代理組件為了分流和防止單點,一般以集群形式存在,同時可能需要Zookeeper之類的服務組件來管理。

代理架構的優點是:

  •  能夠處理非常復雜的需求,不受數據庫訪問層原來實現的限制,擴展性強;
  •  對于應用服務器透明且沒有增加任何額外負載。

缺點是:

  •  需部署和運維獨立的代理中間件,成本高;
  •  應用需經過代理來連接數據庫,網絡上多了一跳,性能有損失且有額外風險。

目前來說,業界還是有很多的方案可供選擇,但應該如何進行選擇?我認為,可以按以下思路來考慮:

  •  確定是使用代理架構還是客戶端架構。中小型規模或是比較簡單的場景傾向于選擇客戶端架構,復雜場景或大規模系統傾向選擇代理架構。
  •  具體功能是否滿足,比如需要跨節點ORDER BY,那么支持該功能的優先考慮。
  •  不考慮一年內沒有更新的產品,說明開發停滯,甚至無人維護和技術支持。
  •  ***按大公司→社區→小公司→個人這樣的出品方順序來選擇。
  •  選擇口碑較好的,比如github星數、使用者數量質量和使用者反饋。
  •  開源的優先,往往項目有特殊需求可能需要改動源代碼。 
責任編輯:龐桂玉 來源: 今日頭條
相關推薦

2018-10-09 09:42:27

MySQL優化單表

2018-11-28 09:38:34

微服務架構API

2021-01-22 13:54:26

運維架構技術

2018-03-09 10:34:48

顯卡參數超頻

2018-10-26 09:22:57

微服務架構應用開發

2017-09-19 09:19:16

程序員開發方向

2017-10-18 13:28:27

語言Python開發錯誤

2018-06-13 09:45:11

人工智能

2018-03-07 10:50:46

MySQL分布式存儲

2017-09-20 09:06:20

程序員網站后端服務

2020-11-23 11:40:35

MySQSQL數據庫

2024-06-04 09:48:14

自動駕駛模型

2017-05-24 10:58:28

linux系統技巧

2020-11-09 14:15:23

代碼菜鳥老司機

2016-05-12 15:34:04

云計算

2019-07-18 14:17:25

運維命令網絡

2018-02-06 09:47:32

windows系統優化系統卡頓

2019-11-04 11:50:35

人工智能機器學習技術

2018-03-14 10:44:34

數據庫MySQLMGR

2020-03-09 10:21:12

Java集合類 Guava
點贊
收藏

51CTO技術棧公眾號

亚洲成a人片77777在线播放 | 久久av一区| 日韩精品欧美国产精品忘忧草| 中文字幕日本最新乱码视频| 高清性色生活片在线观看| 麻豆中文一区二区| 久久精品中文字幕免费mv| 美女扒开腿免费视频| 原纱央莉成人av片| 亚洲免费电影在线| 久久亚洲国产精品日日av夜夜| 在线观看毛片视频| 1024成人| 久久久av一区| 实拍女处破www免费看| 免费看日产一区二区三区| 精品久久久久久久久久久久久久 | 大片免费播放在线视频| 国产精选一区二区三区| 国产91在线播放精品91| 国产亚洲精品久久久久久打不开| 青青草原综合久久大伊人精品| 精品99一区二区三区| 中文字幕久久av| 成人午夜视屏| 午夜a成v人精品| 玖玖精品在线视频| www.中文字幕久久久| 99re8在线精品视频免费播放| 成人黄色短视频在线观看| 成人免费看片98欧美| 欧美va天堂在线| 少妇激情综合网| a级在线免费观看| 国产精品欧美大片| 欧美一级日韩免费不卡| 99sesese| 日韩制服一区| 色综合色综合色综合| 每日在线观看av| 中中文字幕av在线| 国产精品色婷婷久久58| 欧美午夜免费| 无码精品人妻一区二区| 国产成人亚洲综合a∨婷婷| 成人日韩av在线| 91精品视频免费在线观看| 日本成人在线视频网站| 国产不卡视频在线| 免费看污视频的网站| 久久精品男女| 日本三级久久久| 欧美一区免费看| 久久精品123| 国产精品高潮呻吟久久av野狼| 日韩一级在线视频| 天堂精品中文字幕在线| 国产精品r级在线| 国产精品乱码一区二区视频| 天堂在线亚洲视频| 国产精品久久久久久影视 | www.综合网.com| 亚洲福利视频一区| 国内外成人免费激情视频| 成人亚洲欧美| 欧美色图在线观看| 999这里有精品| 日韩精品一区二区三区中文 | 国产欧美日韩中文字幕在线| 在线免费观看视频网站| 激情国产一区二区| 99国产超薄肉色丝袜交足的后果| 亚洲xxxx天美| 91丨九色porny丨蝌蚪| 日本一区高清不卡| 免费av网站在线看| 亚洲制服丝袜av| 99精品人妻少妇一区二区| 免费亚洲电影| 欧美日韩黄色一区二区| 性生交大片免费看l| 欧美人妖视频| 最新中文字幕亚洲| 麻豆一区产品精品蜜桃的特点| 99视频精品| 国产精品久久久久久久久久免费| 国产欧美日韩综合精品一区二区三区 | 国产精品久久久久久久久免费樱桃| 欧美h视频在线观看| 91九色美女在线视频| 91福利社在线观看| 亚洲精品一二三四| 国产成人黄色| 久久99精品视频一区97| 中文字幕视频网| 国产麻豆视频一区二区| 免费在线成人av电影| 欧美尤物美女在线| 精品国产福利视频| 亚洲第一区第二区第三区| 久久久伦理片| 久久精品久久久久电影| 国产又黄又猛又粗又爽| 国内久久婷婷综合| 欧美国产视频在线观看| 羞羞的网站在线观看| 一本大道久久精品懂色aⅴ| 宇都宫紫苑在线播放| 九九热精品视频在线观看| 成年人精品视频| jizz国产在线| 99精品久久只有精品| 日本一本草久p| 成人在线免费av| 日韩成人在线视频观看| 久久国产美女视频| 蜜臀av亚洲一区中文字幕| 久久波多野结衣| 日本在线观看大片免费视频| 欧美日韩一区精品| 精品久久久久久中文字幕人妻最新| 欧美极品一区二区三区| 国产精品一区二区电影| 美国一级片在线免费观看视频| 亚洲一线二线三线视频| 99视频在线观看视频| 成人免费在线播放| 国产97色在线| 欧美中文在线| 日韩欧美a级成人黄色| 师生出轨h灌满了1v1| 久久精品欧美一区| 国产欧美精品在线播放| 国产在线色视频| 色综合久久88色综合天天免费| 久久久久亚洲AV成人网人人小说| 91精品国产福利在线观看麻豆| 国产精品最新在线观看| 69av亚洲| 欧美乱妇23p| 日本视频在线免费| 麻豆成人在线观看| 亚洲精品第一区二区三区| 秋霞国产精品| 正在播放欧美一区| 国产一级片一区二区| 中文字幕 久热精品 视频在线 | 日韩成人在线电影| 日韩中文第一页| 亚洲影视一区二区| 国产精品美女久久久久aⅴ国产馆| 黑森林精品导航| 久久视频在线| 91久久综合亚洲鲁鲁五月天| 欧美三级黄网| 91精品视频网| 欧美日韩一级大片| 国产91丝袜在线观看| 福利视频一区二区三区四区| 国产美女撒尿一区二区| 91产国在线观看动作片喷水| 天天色棕合合合合合合合| 激情懂色av一区av二区av| 成人片黄网站色大片免费毛片| 免播放器亚洲| 亚洲欧美日本国产有色| 中文字幕日韩亚洲| 久久久久久久97| 亚洲色欧美另类| 色播五月激情综合网| 美国一级黄色录像| 国产伦精品一区二区三区在线观看| 好吊色视频988gao在线观看| 国产精品videossex| 国产91|九色| 97人人在线| 日韩美女在线视频| 好看的av在线| 国产精品卡一卡二卡三| 最新国产精品自拍| 久久人人精品| 一区二区三区四区五区视频| 日韩成人在线观看视频| 青青草原成人在线视频| 日本在线观看免费| 91精品国产一区二区三区| 日产精品久久久久| 国产精品青草综合久久久久99| 精品人妻无码中文字幕18禁| 国产日韩1区| eeuss中文| 天堂一区二区三区四区| 成人午夜黄色影院| 涩涩网在线视频| 精品国产欧美一区二区三区成人| 蜜臀av免费在线观看| 欧美亚日韩国产aⅴ精品中极品| 欧美又粗又大又长| 久久精品免费在线观看| av电影在线播放| 麻豆91在线播放| 日韩小视频在线播放| 日韩在线不卡| 久久久久se| 亚洲午夜免费| 国产美女直播视频一区| 国产精品25p| 欧美成人在线免费| 色哟哟免费在线观看| 日韩高清人体午夜| www.超碰在线.com| 欧美丝袜第三区| 超碰中文字幕在线| 亚洲一区日韩精品中文字幕| 制服丨自拍丨欧美丨动漫丨| 91玉足脚交白嫩脚丫在线播放| 韩国一区二区在线播放| 日韩电影在线观看网站| 熟女少妇在线视频播放| 欧美日韩1区2区3区| 伊人久久大香线蕉av一区| 五月天亚洲色图| 国产三级精品在线不卡| 亚洲成人黄色| 91免费视频网站| 青青国产精品| 国产精品视频自拍| 成人自拍av| 清纯唯美亚洲综合| 国产h片在线观看| 久久久女女女女999久久| 黄色在线播放网站| 色妞欧美日韩在线| av在线免费一区| 一区二区国产精品视频| 国产综合在线观看| 亚洲欧美综合v| 国产区视频在线| 亚洲欧美国产日韩天堂区| 色呦呦免费观看| 亚洲福利视频在线| 日本免费一区视频| 亚洲激情视频网| 少妇荡乳情欲办公室456视频| 日韩女优av电影在线观看| 国产区精品在线| 欧美一级欧美三级| 亚洲va天堂va欧美ⅴa在线| 日韩情涩欧美日韩视频| 亚洲精品久久久久久久久久久久久久 | 巨人精品**| 国产在线一区二区三区四区| 欧美激情网址| 欧美裸体网站| 日本高清免费电影一区| 亚洲欧洲日夜超级视频| 99视频精品全国免费| 欧美h视频在线观看| 欧美在线国产| 久草视频国产在线| 国产日韩高清一区二区三区在线| 国产xxxxx在线观看| 天堂成人免费av电影一区| 超碰av在线免费观看| 蜜桃精品视频在线| 超碰91在线播放| 成+人+亚洲+综合天堂| 亚洲国产精品自拍视频| 国产亚洲欧洲997久久综合 | 五月六月丁香婷婷| 国产成人av网站| 动漫精品一区二区三区| 国产精品久线在线观看| www.色小姐com| 黑丝美女久久久| 亚洲无码精品在线观看| 欧美一卡2卡3卡4卡| 天堂成人在线观看| 在线精品国产欧美| 日本大片在线播放| 国产成人综合亚洲| 日韩欧美中文字幕一区二区三区| 精品国产日本| 欧美成人精品一区二区三区在线看| av中文字幕av| 亚久久调教视频| 亚洲综合av在线播放| eeuss影院一区二区三区| 少妇精品无码一区二区免费视频| 亚洲素人一区二区| 青青草免费观看视频| 欧美精品视频www在线观看| 性一交一乱一透一a级| 国产亚洲欧美视频| 欧美videossex| 国产欧美精品日韩| 欧美a一欧美| 免费看污污视频| 秋霞午夜av一区二区三区| 无码国产69精品久久久久网站 | 日本在线免费观看| 777色狠狠一区二区三区| 色婷婷在线视频| 久久精品中文字幕| 欧美精品资源| 精品国产_亚洲人成在线| 我不卡神马影院| 国产一级不卡毛片| 99免费精品在线| 91视频免费在线看| 欧美美女bb生活片| 免费资源在线观看| 97婷婷涩涩精品一区| 色妞ww精品视频7777| 亚洲精品国产精品国自产观看| 日韩午夜一区| 成人做爰69片免费| 亚洲精品国产高清久久伦理二区| 国产一级精品毛片| 亚洲另类激情图| 97人人在线视频| 成人18视频| 欧美国产91| 日本 片 成人 在线| 91麻豆国产精品久久| 久久久久久久久久久97| 777午夜精品免费视频| 在线观看二区| 精品一区二区三区中文字幕在线| 欧美综合第一页| 高清一区二区三区| 国产玉足脚交久久欧美| 国产一区二区三区不卡在线观看| 亚洲精品91在线| 色欧美片视频在线观看在线视频| 亚州精品国产精品乱码不99按摩| 九九热这里只有在线精品视| 91成人在线网站| 中文字幕一区二区三区有限公司| 久久激情五月激情| a一级免费视频| 欧美日韩午夜在线| 亚洲成人三级| 成人a在线视频| 亚洲精品97| 国产探花一区二区三区| 一区二区三区波多野结衣在线观看| 亚洲天堂网在线观看视频| 中文字幕日韩高清| 国产美女久久| 最新欧美日韩亚洲| 国产一区二区三区黄视频| 亚洲一级生活片| 欧美不卡123| 国产高清视频色在线www| 九色91国产| 丝瓜av网站精品一区二区 | 精品中文字幕一区二区三区av| 欧美日韩一区二区在线免费观看| 久久精品视频在线免费观看| 亚洲精品国产欧美在线观看| 自拍亚洲一区欧美另类| 99久久这里有精品| 天堂8在线天堂资源bt| 99热99精品| 天天天天天天天干| 久久亚洲国产精品| 91精品国产自产精品男人的天堂| 欧美激情视频免费看| 久久久精品黄色| 国产精品无码久久av| 欧美大片在线看| 日韩精品免费一区二区夜夜嗨 | 中文字幕日韩精品有码视频| 日韩美香港a一级毛片| 国产又粗又长又爽视频| av在线不卡电影| 国产精品51麻豆cm传媒 | 日韩伦理在线一区| 亚洲成人自拍视频| 国产很黄免费观看久久| 国产成人亚洲精品自产在线| 国产午夜精品一区二区三区| 成人在线视频区| 少妇高潮喷水久久久久久久久久| 国产精品麻豆网站| 国产成人手机在线| 国产不卡av在线免费观看| 综合激情网站| 91中文字幕永久在线| 欧美一区二区三区在线观看视频| 黄色软件视频在线观看| 亚洲v欧美v另类v综合v日韩v| 国产成人综合在线观看| 黄色片中文字幕| 九九热在线精品视频| 欧美美女视频| 中国极品少妇xxxx| 欧美日本一区二区| 综合毛片免费视频|