黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術(shù)文章
文章詳情頁

21條最佳MySQL性能優(yōu)化

瀏覽:8日期:2023-10-16 17:59:30
1. 為查詢緩存優(yōu)化你的查詢

大多數(shù)的MySQL服務器都開啟了查詢緩存。這是提高性最有效的方法之一,而且這是被MySQL的數(shù)據(jù)庫引擎處理的。當有很多相同的查詢被執(zhí)行了多次的時候,這些查詢結(jié)果會被放到一個緩存中,這樣,后續(xù)的相同的查詢就不用操作表而直接訪問緩存結(jié)果了。

這里最主要的問題是,對于程序員來說,這個事情是很容易被忽略的。因為,我們某些查詢語句會讓MySQL不使用緩存。請看下面的示例:

// 查詢緩存不開啟$r = mysql_query("SELECT username FROM user WHERE signup_date >= CURDATE()");// 開啟查詢緩存$today = date("Y-m-d");$r = mysql_query("SELECT username FROM user WHERE signup_date >= ’$today’");

上面兩條SQL語句的差別就是 CURDATE() ,MySQL的查詢緩存對這個函數(shù)不起作用。所以,像 NOW() 和 RAND() 或是其它的諸如此類的SQL函數(shù)都不會開啟查詢緩存,因為這些函數(shù)的返回是會不定的易變的。所以,你所需要的就是用一個變量來代替MySQL的函數(shù),從而開啟緩存。

2. EXPLAIN 你的 SELECT 查詢

使用 EXPLAIN 關(guān)鍵字可以讓你知道MySQL是如何處理你的SQL語句的。這可以幫你分析你的查詢語句或是表結(jié)構(gòu)的性能瓶頸。

EXPLAIN 的查詢結(jié)果還會告訴你你的索引主鍵被如何利用的,你的數(shù)據(jù)表是如何被搜索和排序的……等等,等等。

挑一個你的SELECT語句(推薦挑選那個最復雜的,有多表聯(lián)接的),把關(guān)鍵字EXPLAIN加到前面。你可以使用phpmyadmin來做這個事。然后,你會看到一張表格。下面的這個示例中,我們忘記加上了group_id索引,并且有表聯(lián)接:

21條最佳MySQL性能優(yōu)化

當我們?yōu)?group_id 字段加上索引后:

21條最佳MySQL性能優(yōu)化

我們可以看到,前一個結(jié)果顯示搜索了 7883 行,而后一個只是搜索了兩個表的 9 和 16 行。查看rows列可以讓我們找到潛在的性能問題。

3. 當只要一行數(shù)據(jù)時使用 LIMIT 1

當你查詢表的有些時候,你已經(jīng)知道結(jié)果只會有一條結(jié)果,但因為你可能需要去fetch游標,或是你也許會去檢查返回的記錄數(shù)。

在這種情況下,加上 LIMIT 1 可以增加性能。這樣一樣,MySQL數(shù)據(jù)庫引擎會在找到一條數(shù)據(jù)后停止搜索,而不是繼續(xù)往后查少下一條符合記錄的數(shù)據(jù)。

下面的示例,只是為了找一下是否有“中國”的用戶,很明顯,后面的會比前面的更有效率。(請注意,第一條中是Select *,第二條是Select 1)

// 沒有效率的:$r = mysql_query("SELECT * FROM user WHERE country = ’China’");if (mysql_num_rows($r) > 0) {// ...}// 有效率的:$r = mysql_query("SELECT 1 FROM user WHERE country = ’China’ LIMIT 1");if (mysql_num_rows($r) > 0) {// ...}4. 為搜索字段建索引

索引并不一定就是給主鍵或是唯一的字段。如果在你的表中,有某個字段你總要會經(jīng)常用來做搜索,那么,請為其建立索引吧。

21條最佳MySQL性能優(yōu)化

從上圖你可以看到那個搜索字串 “last_name LIKE ‘a%’”,一個是建了索引,一個是沒有索引,性能差了4倍左右。

另外,你應該也需要知道什么樣的搜索是不能使用正常的索引的。例如,當你需要在一篇大的文章中搜索一個詞時,如: “WHERE post_content LIKE ‘%apple%’”,索引可能是沒有意義的。你可能需要使用MySQL全文索引 或是自己做一個索引(比如說:搜索關(guān)鍵詞或是Tag什么的)

5. 在Join表的時候使用相當類型的例,并將其索引

如果你的應用程序有很多 JOIN 查詢,你應該確認兩個表中Join的字段是被建過索引的。這樣,MySQL內(nèi)部會啟動為你優(yōu)化Join的SQL語句的機制。

而且,這些被用來Join的字段,應該是相同的類型的。例如:如果你要把 DECIMAL 字段和一個 INT 字段Join在一起,MySQL就無法使用它們的索引。對于那些STRING類型,還需要有相同的字符集才行。(兩個表的字符集有可能不一樣)

// 在state中查找company$r = mysql_query("SELECT company_name FROM usersLEFT JOIN companies ON (users.state = companies.state)WHERE users.id = $user_id");// 兩個 state 字段應該是被建過索引的,而且應該是相當?shù)念愋停嗤淖址?. 千萬不要 ORDER BY RAND()

想打亂返回的數(shù)據(jù)行?隨機挑一個數(shù)據(jù)?真不知道誰發(fā)明了這種用法,但很多新手很喜歡這樣用。但你確不了解這樣做有多么可怕的性能問題。

如果你真的想把返回的數(shù)據(jù)行打亂了,你有N種方法可以達到這個目的。這樣使用只讓你的數(shù)據(jù)庫的性能呈指數(shù)級的下降。這里的問題是:MySQL會不得不去執(zhí)行RAND()函數(shù)(很耗CPU時間),而且這是為了每一行記錄去記行,然后再對其排序。就算是你用了Limit 1也無濟于事(因為要排序)

下面的示例是隨機挑一條記錄

// 千萬不要這樣做:$r = mysql_query("SELECT username FROM user ORDER BY RAND() LIMIT 1");// 這要會更好:$r = mysql_query("SELECT count(*) FROM user");$d = mysql_fetch_row($r);$rand = mt_rand(0,$d[0] - 1);$r = mysql_query("SELECT username FROM user LIMIT $rand, 1");7. 避免 SELECT *

從數(shù)據(jù)庫里讀出越多的數(shù)據(jù),那么查詢就會變得越慢。并且,如果你的數(shù)據(jù)庫服務器和WEB服務器是兩臺獨立的服務器的話,這還會增加網(wǎng)絡傳輸?shù)呢撦d。

所以,你應該養(yǎng)成一個需要什么就取什么的好的習慣。

// 不推薦$r = mysql_query("SELECT * FROM user WHERE user_id = 1");$d = mysql_fetch_assoc($r);echo "Welcome {$d[’username’]}";// 推薦$r = mysql_query("SELECT username FROM user WHERE user_id = 1");$d = mysql_fetch_assoc($r);echo "Welcome {$d[’username’]}";8. 永遠為每張表設置一個ID

我們應該為數(shù)據(jù)庫里的每張表都設置一個ID做為其主鍵,而且最好的是一個INT型的(推薦使用UNSIGNED),并設置上自動增加的AUTO_INCREMENT標志。

就算是你 users 表有一個主鍵叫 “email”的字段,你也別讓它成為主鍵。使用 VARCHAR 類型來當主鍵會使用得性能下降。另外,在你的程序中,你應該使用表的ID來構(gòu)造你的數(shù)據(jù)結(jié)構(gòu)。

而且,在MySQL數(shù)據(jù)引擎下,還有一些操作需要使用主鍵,在這些情況下,主鍵的性能和設置變得非常重要,比如,集群,分區(qū)……

在這里,只有一個情況是例外,那就是“關(guān)聯(lián)表”的“外鍵”,也就是說,這個表的主鍵,通過若干個別的表的主鍵構(gòu)成。我們把這個情況叫做“外鍵”。比如:有一個“學生表”有學生的ID,有一個“課程表”有課程ID,那么,“成績表”就是“關(guān)聯(lián)表”了,其關(guān)聯(lián)了學生表和課程表,在成績表中,學生ID和課程ID叫“外鍵”其共同組成主鍵。

9. 使用 ENUM 而不是 VARCHAR

ENUM 類型是非常快和緊湊的。在實際上,其保存的是 TINYINT,但其外表上顯示為字符串。這樣一來,用這個字段來做一些選項列表變得相當?shù)耐昝馈?/p>

如果你有一個字段,比如“性別”,“國家”,“民族”,“狀態(tài)”或“部門”,你知道這些字段的取值是有限而且固定的,那么,你應該使用 ENUM 而不是 VARCHAR。

MySQL也有一個“建議”(見第十條)告訴你怎么去重新組織你的表結(jié)構(gòu)。當你有一個 VARCHAR 字段時,這個建議會告訴你把其改成 ENUM 類型。使用 PROCEDURE ANALYSE() 你可以得到相關(guān)的建議。

10. 從 PROCEDURE ANALYSE() 取得建議

PROCEDURE ANALYSE() 會讓 MySQL 幫你去分析你的字段和其實際的數(shù)據(jù),并會給你一些有用的建議。只有表中有實際的數(shù)據(jù),這些建議才會變得有用,因為要做一些大的決定是需要有數(shù)據(jù)作為基礎(chǔ)的。

例如,如果你創(chuàng)建了一個 INT 字段作為你的主鍵,然而并沒有太多的數(shù)據(jù),那么,PROCEDURE ANALYSE()會建議你把這個字段的類型改成 MEDIUMINT 。或是你使用了一個 VARCHAR 字段,因為數(shù)據(jù)不多,你可能會得到一個讓你把它改成 ENUM 的建議。這些建議,都是可能因為數(shù)據(jù)不夠多,所以決策做得就不夠準。

在phpmyadmin里,你可以在查看表時,點擊 “Propose table structure” 來查看這些建議

21條最佳MySQL性能優(yōu)化

一定要注意,這些只是建議,只有當你的表里的數(shù)據(jù)越來越多時,這些建議才會變得準確。一定要記住,你才是最終做決定的人。

11. 盡可能的使用 NOT NULL

除非你有一個很特別的原因去使用 NULL 值,你應該總是讓你的字段保持 NOT NULL。這看起來好像有點爭議,請往下看。

首先,問問你自己“Empty”和“NULL”有多大的區(qū)別(如果是INT,那就是0和NULL)?如果你覺得它們之間沒有什么區(qū)別,那么你就不要使用NULL。(你知道嗎?在 Oracle 里,NULL 和 Empty 的字符串是一樣的!)

不要以為 NULL 不需要空間,其需要額外的空間,并且,在你進行比較的時候,你的程序會更復雜。 當然,這里并不是說你就不能使用NULL了,現(xiàn)實情況是很復雜的,依然會有些情況下,你需要使用NULL值。

下面摘自MySQL自己的文檔:

“NULL columns require additional space in the row to record whether their values are NULL. For MyISAM tables, each NULL column takes one bit extra, rounded up to the nearest byte.”

12. Prepared Statements

Prepared Statements很像存儲過程,是一種運行在后臺的SQL語句集合,我們可以從使用 prepared statements 獲得很多好處,無論是性能問題還是安全問題。

Prepared Statements 可以檢查一些你綁定好的變量,這樣可以保護你的程序不會受到“SQL注入式”攻擊。當然,你也可以手動地檢查你的這些變量,然而,手動的檢查容易出問題,而且很經(jīng)常會被程序員忘了。當我們使用一些framework或是ORM的時候,這樣的問題會好一些。

在性能方面,當一個相同的查詢被使用多次的時候,這會為你帶來可觀的性能優(yōu)勢。你可以給這些Prepared Statements定義一些參數(shù),而MySQL只會解析一次。

雖然最新版本的MySQL在傳輸Prepared Statements是使用二進制形勢,所以這會使得網(wǎng)絡傳輸非常有效率。

當然,也有一些情況下,我們需要避免使用Prepared Statements,因為其不支持查詢緩存。但據(jù)說版本5.1后支持了。

在PHP中要使用prepared statements,你可以查看其使用手冊:mysqli 擴展 或是使用數(shù)據(jù)庫抽象層,如: PDO.

// 創(chuàng)建 prepared statementif ($stmt = $mysqli->prepare("SELECT username FROM user WHERE state=?")) {// 綁定參數(shù) $stmt->bind_param("s", $state);// 執(zhí)行 $stmt->execute();// 綁定結(jié)果 $stmt->bind_result($username);// 移動游標 $stmt->fetch(); printf("%s is from %sn", $username, $state); $stmt->close();}13. 無緩沖的查詢

正常的情況下,當你在當你在你的腳本中執(zhí)行一個SQL語句的時候,你的程序會停在那里直到?jīng)]這個SQL語句返回,然后你的程序再往下繼續(xù)執(zhí)行。你可以使用無緩沖查詢來改變這個行為。

關(guān)于這個事情,在PHP的文檔中有一個非常不錯的說明: mysql_unbuffered_query() 函數(shù):

“mysql_unbuffered_query() sends the SQL query query to MySQL without automatically fetching and buffering the result rows as mysql_query() does. This saves a considerable amount of memory with SQL queries that produce large result sets, and you can start working on the result set immediately after the first row has been retrieved as you don’t have to wait until the complete SQL query has been performed.”

上面那句話翻譯過來是說,mysql_unbuffered_query() 發(fā)送一個SQL語句到MySQL而并不像mysql_query()一樣去自動fethch和緩存結(jié)果。這會相當節(jié)約很多可觀的內(nèi)存,尤其是那些會產(chǎn)生大量結(jié)果的查詢語句,并且,你不需要等到所有的結(jié)果都返回,只需要第一行數(shù)據(jù)返回的時候,你就可以開始馬上開始工作于查詢結(jié)果了。

然而,這會有一些限制。因為你要么把所有行都讀走,或是你要在進行下一次的查詢前調(diào)用 mysql_free_result() 清除結(jié)果。而且, mysql_num_rows() 或 mysql_data_seek() 將無法使用。所以,是否使用無緩沖的查詢你需要仔細考慮。

14. 把IP地址存成 UNSIGNED INT

很多程序員都會創(chuàng)建一個 VARCHAR(15) 字段來存放字符串形式的IP而不是整形的IP。如果你用整形來存放,只需要4個字節(jié),并且你可以有定長的字段。而且,這會為你帶來查詢上的優(yōu)勢,尤其是當你需要使用這樣的WHERE條件:IP between ip1 and ip2。

我們必需要使用UNSIGNED INT,因為 IP地址會使用整個32位的無符號整形。

而你的查詢,你可以使用 INET_ATON() 來把一個字符串IP轉(zhuǎn)成一個整形,并使用 INET_NTOA() 把一個整形轉(zhuǎn)成一個字符串IP。在PHP中,也有這樣的函數(shù) ip2long() 和 long2ip()。

$r = "UPDATE users SET ip = INET_ATON(’{$_SERVER[’REMOTE_ADDR’]}’) WHERE user_id = $user_id";15. 固定長度的表會更快

如果表中的所有字段都是“固定長度”的,整個表會被認為是 “static” 或 “fixed-length”。 例如,表中沒有如下類型的字段: VARCHAR,TEXT,BLOB。只要你包括了其中一個這些字段,那么這個表就不是“固定長度靜態(tài)表”了,這樣,MySQL 引擎會用另一種方法來處理。

固定長度的表會提高性能,因為MySQL搜尋得會更快一些,因為這些固定的長度是很容易計算下一個數(shù)據(jù)的偏移量的,所以讀取的自然也會很快。而如果字段不是定長的,那么,每一次要找下一條的話,需要程序找到主鍵。

并且,固定長度的表也更容易被緩存和重建。不過,唯一的副作用是,固定長度的字段會浪費一些空間,因為定長的字段無論你用不用,他都是要分配那么多的空間。

使用“垂直分割”技術(shù)(見下一條),你可以分割你的表成為兩個一個是定長的,一個則是不定長的。

16. 垂直分割

“垂直分割”是一種把數(shù)據(jù)庫中的表按列變成幾張表的方法,這樣可以降低表的復雜度和字段的數(shù)目,從而達到優(yōu)化的目的。(以前,在銀行做過項目,見過一張表有100多個字段,很恐怖)

示例一:在Users表中有一個字段是家庭地址,這個字段是可選字段,相比起,而且你在數(shù)據(jù)庫操作的時候除了個人信息外,你并不需要經(jīng)常讀取或是改寫這個字段。那么,為什么不把他放到另外一張表中呢? 這樣會讓你的表有更好的性能,大家想想是不是,大量的時候,我對于用戶表來說,只有用戶ID,用戶名,口令,用戶角色等會被經(jīng)常使用。小一點的表總是會有好的性能。

示例二: 你有一個叫 “last_login” 的字段,它會在每次用戶登錄時被更新。但是,每次更新時會導致該表的查詢緩存被清空。所以,你可以把這個字段放到另一個表中,這樣就不會影響你對用戶ID,用戶名,用戶角色的不停地讀取了,因為查詢緩存會幫你增加很多性能。

另外,你需要注意的是,這些被分出去的字段所形成的表,你不會經(jīng)常性地去Join他們,不然的話,這樣的性能會比不分割時還要差,而且,會是極數(shù)級的下降。

17. 拆分大的 DELETE 或 INSERT 語句

如果你需要在一個在線的網(wǎng)站上去執(zhí)行一個大的 DELETE 或 INSERT 查詢,你需要非常小心,要避免你的操作讓你的整個網(wǎng)站停止相應。因為這兩個操作是會鎖表的,表一鎖住了,別的操作都進不來了。

Apache 會有很多的子進程或線程。所以,其工作起來相當有效率,而我們的服務器也不希望有太多的子進程,線程和數(shù)據(jù)庫鏈接,這是極大的占服務器資源的事情,尤其是內(nèi)存。

如果你把你的表鎖上一段時間,比如30秒鐘,那么對于一個有很高訪問量的站點來說,這30秒所積累的訪問進程/線程,數(shù)據(jù)庫鏈接,打開的文件數(shù),可能不僅僅會讓你泊WEB服務Crash,還可能會讓你的整臺服務器馬上掛了。

所以,如果你有一個大的處理,你定你一定把其拆分,使用 LIMIT 條件是一個好的方法。下面是一個示例:

while (1) { //每次只做1000條mysql_query("DELETE FROM logs WHERE log_date <= ’2009-11-01’ LIMIT 1000");if (mysql_affected_rows() == 0) {// 沒得可刪了,退出!break;}// 每次都要休息一會兒usleep(50000);}18. 越小的列會越快

對于大多數(shù)的數(shù)據(jù)庫引擎來說,硬盤操作可能是最重大的瓶頸。所以,把你的數(shù)據(jù)變得緊湊會對這種情況非常有幫助,因為這減少了對硬盤的訪問。

參看 MySQL 的文檔 Storage Requirements 查看所有的數(shù)據(jù)類型。

如果一個表只會有幾列罷了(比如說字典表,配置表),那么,我們就沒有理由使用 INT 來做主鍵,使用 MEDIUMINT, SMALLINT 或是更小的 TINYINT 會更經(jīng)濟一些。如果你不需要記錄時間,使用 DATE 要比 DATETIME 好得多。

當然,你也需要留夠足夠的擴展空間,不然,你日后來干這個事,你會死的很難看,參看Slashdot的例子(2009年11月06日),一個簡單的ALTER TABLE語句花了3個多小時,因為里面有一千六百萬條數(shù)據(jù)。

19. 選擇正確的存儲引擎

在 MySQL 中有兩個存儲引擎 MyISAM 和 InnoDB,每個引擎都有利有弊。酷殼以前文章《MySQL: InnoDB 還是 MyISAM?》討論和這個事情。

MyISAM 適合于一些需要大量查詢的應用,但其對于有大量寫操作并不是很好。甚至你只是需要update一個字段,整個表都會被鎖起來,而別的進程,就算是讀進程都無法操作直到讀操作完成。另外,MyISAM 對于 SELECT COUNT(*) 這類的計算是超快無比的。

InnoDB 的趨勢會是一個非常復雜的存儲引擎,對于一些小的應用,它會比 MyISAM 還慢。他是它支持“行鎖” ,于是在寫操作比較多的時候,會更優(yōu)秀。并且,他還支持更多的高級應用,比如:事務。

下面是MySQL的手冊

target=”_blank”MyISAM Storage EngineInnoDB Storage Engine20. 使用一個對象關(guān)系映射器(Object Relational Mapper)

使用 ORM (Object Relational Mapper),你能夠獲得可靠的性能增漲。一個ORM可以做的所有事情,也能被手動的編寫出來。但是,這需要一個高級專家。

ORM 的最重要的是“Lazy Loading”,也就是說,只有在需要的去取值的時候才會去真正的去做。但你也需要小心這種機制的副作用,因為這很有可能會因為要去創(chuàng)建很多很多小的查詢反而會降低性能。

ORM 還可以把你的SQL語句打包成一個事務,這會比單獨執(zhí)行他們快得多得多。

目前,個人最喜歡的PHP的ORM是:Doctrine。

21. 小心“永久鏈接”

“永久鏈接”的目的是用來減少重新創(chuàng)建MySQL鏈接的次數(shù)。當一個鏈接被創(chuàng)建了,它會永遠處在連接的狀態(tài),就算是數(shù)據(jù)庫操作已經(jīng)結(jié)束了。而且,自從我們的Apache開始重用它的子進程后——也就是說,下一次的HTTP請求會重用Apache的子進程,并重用相同的 MySQL 鏈接。

PHP手冊:mysql_pconnect()

在理論上來說,這聽起來非常的不錯。但是從個人經(jīng)驗(也是大多數(shù)人的)上來說,這個功能制造出來的麻煩事更多。因為,你只有有限的鏈接數(shù),內(nèi)存問題,文件句柄數(shù),等等。

而且,Apache 運行在極端并行的環(huán)境中,會創(chuàng)建很多很多的了進程。這就是為什么這種“永久鏈接”的機制工作地不好的原因。在你決定要使用“永久鏈接”之前,你需要好好地考慮一下你的整個系統(tǒng)的架構(gòu)。

文章:來源

相關(guān)文章:
主站蜘蛛池模板: 97国产最新 | 国产网红主播无码精品 | 国产精品人人爱一区二区白浆 | 不卡的在线视频 | 一卡二卡精品 | 日本一级一片免费视频 | 少妇下面好紧好多水真爽播放 | 久久中文字幕视频 | 最近日韩中文字幕 | 日韩av免费一区二区 | 日本丰满少妇裸体自慰 | 亚洲三级av| 国产精品99无码一区二区 | 日女tv| 亚洲视频一二 | 久草午夜 | 欧美乱淫| 久久不卡日韩美女 | 在线不卡日本 | 国产精品伦一区二区三级视频 | 天码中文字幕在线播放 | 色婷婷在线播放 | 国产婷婷色综合av蜜臀av | 色欲狠狠躁天天躁无码中文字幕 | 天堂久久综合 | av大片免费| 国产喷水1区2区3区咪咪爱av | 在线综合视频 | 成人在线国产 | 懂色av一区二区夜夜嗨 | 亚洲精品怡红院 | 酒店大战丝袜高跟鞋人妻 | 国产精品久免费的黄网站 | 爆乳熟妇一区二区三区 | 三级av网址 | 成年人视频在线观看免费 | 国产av亚洲精品ai换脸电影 | 午夜精品久久久久久久99水蜜桃 | 国产一区二区在线免费 | 欧美做爰一区二区三区 | 欧美成人性生活视频 | 青青草国产 | 国产精品入口66mio男同 | 成人av在线资源 | 深夜成人在线观看 | av黄色毛片 | 欧美性猛交xxxx乱大交 | 草草影院在线观看 | 五月婷婷深爱 | 国产九九 | 区一区二在线观看 | 久久av网站 | 日本少妇aa特黄毛片亚洲 | 中文字幕亚洲精品日韩 | 性色视频在线 | 午夜免费啪视频 | 国产乱码在线 | 亚洲处破女av日韩精品 | 久久久久久一区国产精品 | 我要看一级片 | 一级片视频播放 | 色五月丁香六月欧美综合 | 97伦伦午夜电影理伦片 | 男人的天堂手机在线 | www.色人阁.com | 四虎影视在线 | 大伊香蕉在线精品视频75 | 一级淫片a| 韩国bj大尺度vip福利网站 | 欧美一进一出抽搐大尺度视频 | 人妻被按摩到潮喷中文字幕 | 亚洲a成人片在线观看 | 成人免费看片入口 | 中出在线视频 | 一区二区三区在线观看视频 | 亚洲成人在线视频观看 | 亚洲一二三av | 999精品国产 | 欧美三级网 | 97人人做人人添人人爱 | 人人妻人人澡人人爽精品欧美 | 国产女同疯狂作爱系列 | 成人三级影院 | 免费亚洲精品 | 91小视频在线观看 | 草草视频在线观看 | 日日爽爽 | 中文字幕日本 | av图区| 国内视频一区二区三区 | 国产成人性色生活片 | 无码精品a∨在线观看中文 亚洲熟妇自偷自拍另欧美 无码少妇a片一区二区三区 | 日韩女优在线视频 | 天天舔天天射 | 久久国产精品久久久久久 | 女同理伦片在线观看禁男之园 | 国产三级精品三级在专区 | 国产在线精品一区二区高清不卡 | 成 人 黄 色视频免费播放 | 女同久久另类99精品国产 | 97免费在线观看视频 | 韩国三级hd中文字幕三义 | 又紧又大又爽精品一区二区 | 香蕉视频在线观看视频 | 巨大乳女人做爰视频在线看 | 亚洲视频一区二区在线观看 | 欧美一区在线看 | 日韩精品久久久久久久的张开腿让 | 亚洲加勒比久久88色综合 | 欧美专区在线视频 | 深夜成人在线观看 | 自拍亚洲国产 | 久久久久久久久久影院 | 91久久北条麻妃一区二区三区 | 国产91精品在线观看 | 黄色第一网站 | 欧美视频一区在线 | av免费观看久久 | 免费观看黄色小视频 | 久久久久夜夜夜精品国产 | 少妇放荡的呻吟干柴烈火视频 | 激情五月婷婷综合 | 亚洲成人精品一区二区三区 | 红杏成人免费视频 | 成人欧美一区二区三区1314 | 欲香欲色天天综合和网 | 欧美呦呦呦 | 极品少妇在线观看 | 国产精品免费一区 | 福利视频亚洲 | 特级毛片www| 蜜桃视频一区二区在线观看 | 97成人精品视频在线播放 | 精品国产欧美一区二区三区成人 | 天堂中文在线8最新版精品版软件 | 久久免费网 | 欧美精品一区二区免费 | 国产成人欧美 | 中国老女人内谢69xxxx | 黄视频网站在线看 | 性色网站 | 99精品久久久久久久婷婷 | 国产av永久无码天堂影院 | 在线观看一区二区三区视频 | 亚洲成a∨人片在线观看不卡 | 熟女少妇人妻中文字幕 | 亚洲乱码一区二区三区三上悠亚 | 人人妻人人澡人人爽国产一区 | 91九色丨porny丨朋友 | 妞干网欧美 | 男女裸体做爰爽爽全过程软件 | 国产av国片精品 | 玩弄japan白嫩少妇hd | 国产视频在线播放 | 日本免费人成视频播放 | 国产欧美视频一区二区 | 日本欧美一区二区三区在线播放 | 夜夜嗨av一区二区三区中文字幕 | 99久久人人爽亚洲精品美女 | 高清视频在线播放 | 欧美野外猛男的大粗鳮台湾同胞 | 第色| 日韩在线视频网址 | baoyu123成人免费看视频 | 欧美一区二区高清视频 | 久草在线视频新时代视频 | 日本在线免费观看 | 国产喷水1区2区3区咪咪爱av | 久久无码字幕中文久久无码 | 天堂久久综合 | 国产精品人成在线播放新网站 | 国产精品视频一区二区三区不卡 | 尤物视频在线免费观看 | 狠狠干性视频 | 多p混交群体交乱在线观看 多男一女一级淫片免费播放口 | 亚洲人成伊人成综合网久久久 | 69国产成人精品二区 | 欧美一级在线免费观看 | 精品自拍第一页 | 天天揉久久久久亚洲精品 | 国产精品久久免费观看spa | 大屁股肥熟女流白浆 | 国产三级全黄裸体 | 欧美精品久久久 | 国产婷婷色一区二区三区 | 亚洲h在线播放在线观看h | 无码国产精品一区二区免费虚拟vr | 九九午夜视频 | 久久久国产高清 | 最新国产在线视频 | 欧美日韩理论 | 亚洲娇小业余黑人巨大汇总 | 久久精品成人 | 欧美自偷自拍 | 午夜网址 | 男人的天堂av社区在线 | 国产特级毛片aaaaaa | 91成人黄色 | 全免费又大粗又黄又爽少妇片 | 激情五月综合色婷婷一区二区 | 全网免费在线播放视频入口 | 一二三四免费观看在线视频中文版 | aaa毛片视频 | 中文字幕亚洲精品无码 | 日韩一二三区在线观看 | 女同 另类 激情 重口 | 国产91在线观看 | 91精品国产91久久久久福利 | 亚洲女同女同女同女同女同69 | 9191久久| 日本猛少妇色xxxxx猛叫 | 国产午夜激情视频 | 国产成人综合久久精品免费 | а天堂中文在线官网 | 国产区精品视频 | chinese麻豆新拍video | 午夜国产精品视频 | 91爱爱爱爱 | 欧美一区二区公司 | 亚洲精品成人无限看 | 人人草网 | gav成人网免费免播放器播放 | 亚洲成aⅴ人片久青草影院 亚洲无av码一区二区三区 | 欧美一区二区三区久久综合 | 久久在线精品视频 | 51av在线视频 | 一级黄色片久久 | 日日夜夜综合 | 亚洲综合久 | 丰满少妇熟乱xxxxx视频 | 全国最大成人免费视频 | 中文字幕一区二区在线视频 | 精品人妻伦一二三区久久 | 中文无码伦av中文字幕 | 欧美亚洲视频在线观看 | 新婚夫妇白天啪啪自拍 | 国内国产精品天干天干 | 日本强伦姧人妻一区二区 | 久久久久久久久久久免费av | 国产在线视频第一页 | 亚洲精品一区二区国产精华液 | 久久免费视频在线观看 | 国产精品免费久久久久影院 | 亚洲国产日韩欧美 | 免费性网站 | 中文字幕日韩在线播放 | 亚洲视频在线一区 | 377p欧洲日本亚洲大胆 | 国产黑丝在线 | 亚洲一区二区国产 | 翘臀少妇后进一区二区 | 久草精品视频在线看网站免费 | 东京干手机福利视频 | 国语自产拍精品香蕉在线播放 | 免费成人国产 | 免费av观看 | 黄网在线观看免费网站 | 91在线看视频免费 | 国产日韩欧美不卡在线二区 | 日日碰狠狠丁香久燥 | 成人毛片18女人毛片 | 国产成人三级在线观看视频 | 欧美一级在线看 | 香蕉视频黄色片 | 日韩一区二区三区射精 | 天天干天天骑 | 久久精品无码观看tv | 18深夜在线观看免费视频 | 五月天中文字幕mv在线 | 国产人妻精品一区二区三区 | 国产在线播放91 | 亚洲成年人在线观看 | 国产丝袜视频 | 在哪里可以看毛片 | 超碰在线伊人 | 成人在线视频免费看 | 久久精品嫩草影院 | 97免费人妻在线视频 | 激情成人av | 精品久久久久中文字幕日本 | 色婷婷婷 | 国产精品久久久久久久久果冻传媒 | 亚洲色图日韩 | 俺来也俺来啦awww官网 | 天堂在线中文在线 | 欧美成人午夜77777 | 黄色特级视频 | 精品一区二区三区中文字幕 | 波多野结衣av在线播放 | 国产成人午夜片在线观看高清观看 | 国产极品尤物 | 91张津瑜 午夜在线播放 | 久久久久久久久久久久久久久久久久久 | 国内视频一区二区三区 | 99热在线精品观看 | 四季av一区二区凹凸精品 | 久久午夜精品视频 | 亚洲老女人| 久久精品中文字幕 | 亚洲男人天堂2024 | 草草影院第一页 | 伊人影院视频 | 男男啪啪激烈高潮cc漫画免费 | 91免费视频黄 | 精品无码国产自产拍在线观看蜜 | 第一章婶婶的性事 | 国产美女在线精品免费观看 | 丰满人妻精品国产99aⅴ | 久久久久久99av无码免费网站 | 久久亚洲欧美日韩精品专区 | 中文字幕av一区二区 | 亚洲va国产va天堂va久久 | 黄色日本视频 | 国产精品久久久久久久久久久久午夜片 | 香蕉伊蕉伊中文视频在线 | 性做爰视频免费播放大全 | 国产露脸无套对白在线播放 | 亚洲一区久久 | 欧美在线视频二区 | 裸体黄色片| av午夜久久蜜桃传媒软件 | 嫩模写真一区二区三区三州 | 日韩久久精品一区二区三区 | 国产一区二区三区四区五区六区 | 日本女人黄色 | 激情五月综合网 | 日日干夜夜艹 | 免费一级做a爰片性视频 | 国产精品涩涩屋www在线观看 | 少妇小芸h系列小说 | 午夜中出 | 亚洲精品www久久久久久广东 | 女女les互磨高潮国产精品 | 久久九九色 | 精品久久欧美熟妇www | 欧美性生活网 | 韩国午夜理伦三级2020苹果 | 国产日韩欧美在线观看 | 男人午夜影院 | 国产免费爽爽视频 | 欧美国产日韩久久mv | 久久久久女人精品毛片九一 | 伊人九九九有限公司 | 亚洲人成人伊人成综合网无码 | 天美麻花果冻视频大全英文版 | 欧美一区亚洲一区 | 69av在线播放 | 少妇愉情理仑片高潮日本 | 污污的视频网站在线观看 | 激情亚洲天堂 | 伊人激情 | 日本黄网站色大片免费观看 | 又大又紧又粉嫩18p少妇 | 亚洲精品国产精品国自产在线 | 天海翼精品久久中文字幕 | 黄色片子一级 | 大肉大捧一进一出好爽视色大师 | 成人国产精品免费观看动漫 | 性欧美高清come | 免费av入口| 在线综合亚洲欧美网站 | 日本a√在线观看 | 99国产欧美精品久久久蜜芽 | 天天干天天色 | 久久毛片视频 | av毛片大全 | 色丁香久久 | 亚洲精品亚洲人成人网 | 少妇搡bbbb爽毛片无 | 人人妻人人妻人人人人妻 | 精品国产乱码久久久久久蜜臀 | 日本国产忘忧草一区在线 | 欧美性在线观看 | 黄瓜视频在线观看污 | 亚洲人成电影网站色 | 久久第一页 | 欧美色图校园春色 | www浪潮avcom| 香蕉av一区 | 精品国产91久久久久 | 毛片内射-百度 | 欧美精品一区二区三区久久久 | 亚洲日本va在线视频观看 | 老女人丨91丨九色 | 国产乱子伦一区二区三区四区五区 | 欧美成人天堂 | 性欧美视频| 欧美午夜精品久久久久久人妖 | 亚洲国产精品久久青草无码 | 色天天干 | 天天久久| 国产99久久久国产精品免费看 | 久久av无码精品人妻出轨 | 精品夜夜澡人妻无码av | 欧美日国产| 一级黄在线观看 | 日本不卡在线 | 黄色日批 | 天天操夜夜操视频 | 中文字幕永久视频 | 国产一区二区视频播放 | 国产午夜精品一区二区三区在线观看 | 中文字幕丝袜第1页 | 欧美日韩在线一区 | 欧美黄色免费看 | 一本色综合亚洲精品蜜桃冫 | 韩国成人免费视频 | 成人xx视频| 插入综合网 | 欧美成人在线视频 | 亚洲精品美女在线观看 | 色妞欧美| 久久五十路 | 亚洲日韩精品一区二区三区 | 深夜福利亚洲 | 久久午夜精品视频 | 中文字幕在线亚洲日韩6页 av无码精品一区二区三区 | 桥本有菜aⅴ一区二区三区 桥本有菜免费av一区二区三区 | 国产寡妇亲子伦一区二区 | 中文人妻熟女乱又乱精品 | www豆豆成人网com | 久久这里只有精品首页 | 精品国偷自产国产一区 | 在线观看日韩一区二区 | jzzijzzij日本成熟少 | 国产精欧美一区二区三区久久久 | 大白屁股一区二区视频 | 中字幕人妻一区二区三区 | 免费观看一区二区三区 | 人妻 日韩 欧美 综合 制服 | 九九九九热精品免费视频点播观看 | 精品国产三级a∨在线 | 青青草手机视频 | 韩国不卡av| 亚洲字幕在线观看 | 一本一道久久a久久综合蜜桃 | 欧美精品99久久 | 五月婷婷国产 | 91精品一区二区中文字幕 | 日本伊人精品一区二区三区 | 男性影院| 真人做爰免费毛片视频 | av观看免费在线 | 亚洲三级网站 | 人人妻人人澡人人爽精品日本 | 日韩精品久久久肉伦网站 | 爆操欧美美女 | а√天堂资源官网在线资源 | 91精品一久久香蕉国产线看观看新通道出现 | 最近日本免费观看高清视频 | 中文字幕一区二区三区精华液 | 国产精品太长太粗太大视频 | 欧美亚洲日本国产黑白配 | 国产网站入口 | 成人国产福利a无限看 | 丝袜美腿一区二区三区动态图 | 成人夜色视频网站在线观看 | 亚洲乱码国产乱码精品精98午夜 | 污网站免费观看 | 欧美大肚乱孕交hd孕妇 | 青青草手机在线 | 岛国裸体写真hd在线 | 国产av永久无码天堂影院 | 亚洲s码欧洲m码吹潮 | 中文久久久久 | av手机天堂网 | 国产麻豆91欧美一区二区 | 在线观看午夜视频 | av中文字幕在线免费观看 | 美美女高清毛片视频免费观看 | 日本丰满大乳hd | 免费av大片 | 美女诱惑一区二区 | 91久久国产涩涩涩涩涩涩 | 精品在线观看免费 | av无码免费一区二区三区 | 久久久婷婷五月亚洲97号色 | 日韩精品一区二区三区免费视频 | 草草在线观看 | 日本爱爱免费视频 | 日本黄色录相 | 狠狠97人人婷婷五月 | 成人深夜小视频 | 自拍99 | 免费色片网站 | 91精品啪啪 | 欧美 日韩 亚洲 在线 | 大桥久未无码吹潮在线观看 | 女人夜夜春高潮爽a∨片传媒 | 99久久精品免费看国产小宝寻花 | 91社区在线高清 | 午夜寂寞影视在线观看 | 日韩av片免费观看 | 97国产精品| 91亚洲狠狠婷婷综合久久久 | 激情综合色五月丁香六月亚洲 | 欧美一级免费看 | 国产精品久久国产精品99 | 三级在线视频 | www男人的天堂 | 午夜亚洲国产 | 日韩一区二区三区视频 | 衣服被扒开强摸双乳18禁网站 | 日韩激情一区 | 国产人妖ts重口系列网站观看 | 天天躁夜夜躁天干天干2022 | 欧美午夜精品久久久久久人妖 | 少妇人妻偷人精品一区二区 | 欧美日韩在线视频一区二区三区 | 国产黄色大全 | 欧美日韩中文一区 | 精品人伦一区二区三区蜜桃免费 | 久久99国产综合精品 | 日韩美女一区二区三区 | 中文字幕免费一区二区 | 欧美人与牲动交xxxx | 亚洲天堂一级 | 中国亚洲女人69内射少妇 | www久久99| 4hu最新网址 | 精品国产va久久久久久久 | 蜜臀一区二区三区精品免费视频 | 日本亚洲精品色婷婷在线影院 | 奇米影视7777久久精品 | а天堂中文官网 | 亚洲一区综合 | 性xxxx摔跤视频 | 欧美人与动物xxxxz0oz | 婷婷综合久久中文字幕蜜桃三电影 | 日本大香伊一区二区三区 | 国产理论一区二区三区 | 都市激情中文字幕 | 国产在线一区二区三区 | 黄色av成人 | 国产乱妇乱子视频在播放 | 久久国产精99精产国高潮 | 97在线国产视频 | 又欲又肉又黄高h1v1 | 欧美黑人性暴力猛交喷水 | 一二三四观看视频社区在线 | 国产一区二区三区免费观看视频 | 亚精区在二线三线区别99 | 国产极品视频 | 青青草狠狠爱 | 嫩草一线产区和二线产区 | 99久热在线精品视频成人一区 | 日韩亚洲制服丝袜中文字幕 | 国产激情精品一区二区三区 | 夜夜涩 | 亚洲精品专区 | 麻豆精品一区综合av在线 | 综合久久中文字幕 | 4399午夜理伦免费播放大全 | 亚洲欧美中文日韩在线v日本 | 久久久成人毛片无码 | 一本色道亚洲精品aⅴ | 蜜桃视频韩日免费播放 | 人人爱夜夜爽日日做蜜桃 | 久久久亚洲天堂 | 国产亚洲精品岁国产微拍精品 | 成人在线综合 | 日本无遮羞调教屁股视频网站 | 亚洲国产成人精品女人久久久 | 久久aⅴ免费观看 | 亚洲爱婷婷色婷婷五月 | 国产不卡一区 | 男人j进入女人j内部免费网站 | 成人免费无码大片a毛片抽搐 | 五月中文字幕 | 亚洲老妈激情一区二区三区 | 日一本二本三本在线2021 | 公车乳尖揉捏酥软呻吟 | 亚洲成av人片久久 | 蜜桃91麻豆精品一二三区 | 亚洲成a人片在线 | 91插插插永久免费 | 成人福利在线播放 | 天天躁日日躁狠狠躁伊人 | 国产又爽又粗又猛的视频 | 又爽又色禁片1000视频免费看 | 精品久久久久久久久久岛国gif | 成年人拍拍视频 | 一区二区三区91 | 亚洲欧美大片 | 久久成人小视频 | 爆乳女仆高潮在线观看 | 国产亚洲精品精品精品 | 日本成人午夜视频 | 黄色av不卡 | 亚洲午夜激情 | 欧美一区二区三区爽爽爽 | 成人精品水蜜桃 | 国产成人精品综合 | 能在线看的av | 国产视频九色蝌蚪 | 床戏做爰无遮挡摸亲胸小说 | 国产精品国产免费无码专区不卡 | 久久久久精彩视频 | 伊人久久大香线蕉av一区二区 | 久久久久久国产 | 国产一区二区三区四区五区密私 | 一本色道久久综合亚洲精品不 | 免费国产黄色网址 | 成熟丰满熟妇av无码区 | 草草在线影院 | 亚洲精品理论电影在线观看 | 日韩黄网| 好看的黄色网址 | 香蕉视频性 | 搡女人真爽免费午夜网站 | 国产精品伦 | 国产精品高潮呻吟久久aⅴ码 | 久草网视频 | 粉嫩av国产一区二区三区 | 国产综合精品一区二区三区 |