亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數(shù)據(jù)庫 > PostgreSQL > 正文

PostgreSQL教程(十四):數(shù)據(jù)庫維護(hù)

2020-01-31 15:22:23
字體:
供稿:網(wǎng)友

一、恢復(fù)磁盤空間:

    在PostgreSQL中,使用delete和update語句刪除或更新的數(shù)據(jù)行并沒有被實際刪除,而只是在舊版本數(shù)據(jù)行的物理地址上將該行的狀態(tài)置為已刪除或已過期。因此當(dāng)數(shù)據(jù)表中的數(shù)據(jù)變化極為頻繁時,那么在一段時間之后該表所占用的空間將會變得很大,然而數(shù)據(jù)量卻可能變化不大。要解決該問題,需要定期對數(shù)據(jù)變化頻繁的數(shù)據(jù)表執(zhí)行VACUUM操作。

    VACUUM命令存在兩種形式,VACUUM和VACUUM FULL,它們之間的區(qū)別見如下表格:

  無VACUUM VACUUM VACUUM FULL
刪除大量數(shù)據(jù)之后 只是將刪除數(shù)據(jù)的狀態(tài)置為已刪除,該空間不能記錄被重新使用。 如果刪除的記錄位于表的末端,其所占用的空間將會被物理釋放并歸還操作系統(tǒng)。如果不是末端數(shù)據(jù),該命令會將指定表或索引中被刪除數(shù)據(jù)所占用空間重新置為可用狀態(tài),那么在今后有新數(shù)據(jù)插入時,將優(yōu)先使用該空間,直到所有被重用的空間用完時,再考慮使用新增的磁盤頁面。 不論被刪除的數(shù)據(jù)是否處于數(shù)據(jù)表的末端,這些數(shù)據(jù)所占用的空間都將被物理的釋放并歸還于操作系統(tǒng)。之后再有新數(shù)據(jù)插入時,將分配新的磁盤頁面以供使用。
執(zhí)行效率   由于只是狀態(tài)置為操作,因此效率較高。 在當(dāng)前版本的PostgreSQL(v9.1)中,該命令會為指定的表或索引重新生成一個數(shù)據(jù)文件,并將原有文件中可用的數(shù)據(jù)導(dǎo)入到新文件中,之后再刪除原來的數(shù)據(jù)文件。因此在導(dǎo)入過程中,要求當(dāng)前磁盤有更多的空間可用于此操作。由此可見,該命令的執(zhí)行效率相對較低。
被刪除的數(shù)據(jù)所占用的物理空間是否被重新規(guī)劃給操作系統(tǒng)。 不會 不會
在執(zhí)行VACUUM命令時,是否可以并發(fā)執(zhí)行針對該表的其他操作。   由于該操作是共享鎖,因此可以與其他操作并行進(jìn)行。 由于該操作需要在指定的表上應(yīng)用排它鎖,因此在執(zhí)行該操作期間,任何基于該表的操作都將被掛起,知道該操作完成。
推薦使用方式 在進(jìn)行數(shù)據(jù)清空是,可以使用truncate操作,因為該操作將會物理的清空數(shù)據(jù)表,并將其所占用的空間直接歸還于操作系統(tǒng)。 為了保證數(shù)據(jù)表的磁盤頁面數(shù)量能夠保持在一個相對穩(wěn)定值,可以定期執(zhí)行該操作,如每天或每周中數(shù)據(jù)操作相對較少的時段。 考慮到該操作的開銷,以及對其他錯誤的排斥,推薦的方式是,定期監(jiān)控數(shù)據(jù)量變化較大的表,只有確認(rèn)其磁盤頁面占有量接近臨界值時,才考慮執(zhí)行一次該操作。即便如此,也需要注意盡量選擇數(shù)據(jù)操作較少的時段來完成該操作。
執(zhí)行后其它操作的效率 對于查詢而言,由于存在大量的磁盤頁面碎片,因此效率會逐步降低。 相比于不執(zhí)行任何VACUUM操作,其效率更高,但是插入的效率會有所降低。 在執(zhí)行完該操作后,所有基于該表的操作效率都會得到極大的提升。

二、更新規(guī)劃器統(tǒng)計:

    PostgreSQL查詢規(guī)劃器在選擇最優(yōu)路徑時,需要參照相關(guān)數(shù)據(jù)表的統(tǒng)計信息用以為查詢生成最合理的規(guī)劃。這些統(tǒng)計是通過ANALYZE命令獲得的,你可以直接調(diào)用該命令,或者把它當(dāng)做VACUUM命令里的一個可選步驟來調(diào)用,如VACUUM ANAYLYZE table_name,該命令將會先執(zhí)行VACUUM再執(zhí)行ANALYZE。與回收空間(VACUUM)一樣,對數(shù)據(jù)更新頻繁的表保持一定頻度的ANALYZE,從而使該表的統(tǒng)計信息始終處于相對較新的狀態(tài),這樣對于基于該表的查詢優(yōu)化將是極為有利的。然而對于更新并不頻繁的數(shù)據(jù)表,則不需要執(zhí)行該操作。

    我們可以為特定的表,甚至是表中特定的字段運(yùn)行ANALYZE命令,這樣我們就可以根據(jù)實際情況,只對更新比較頻繁的部分信息執(zhí)行ANALYZE操作,這樣不僅可以節(jié)省統(tǒng)計信息所占用的空間,也可以提高本次ANALYZE操作的執(zhí)行效率。這里需要額外說明的是,ANALYZE是一項相當(dāng)快的操作,即使是在數(shù)據(jù)量較大的表上也是如此,因為它使用了統(tǒng)計學(xué)上的隨機(jī)采樣的方法進(jìn)行行采樣,而不是把每一行數(shù)據(jù)都讀取進(jìn)來并進(jìn)行分析。因此,可以考慮定期對整個數(shù)據(jù)庫執(zhí)行該命令。

    事實上,我們甚至可以通過下面的命令來調(diào)整指定字段的抽樣率,如:
 

復(fù)制代碼 代碼如下:

    ALTER TABLE testtable ALTER COLUMN test_col SET STATISTICS 200
 

    注意:該值的取值范圍是0--1000,其中值越低采樣比例就越低,分析結(jié)果的準(zhǔn)確性也就越低,但是ANALYZE命令執(zhí)行的速度卻更快。如果將該值設(shè)置為-1,那么該字段的采樣比率將恢復(fù)到系統(tǒng)當(dāng)前默認(rèn)的采樣值,我們可以通過下面的命令獲取當(dāng)前系統(tǒng)的缺省采樣值。
 
復(fù)制代碼 代碼如下:

    postgres=# show default_statistics_target;
     default_statistics_target
    ---------------------------
     100
    (1 row)
 

    從上面的結(jié)果可以看出,該數(shù)據(jù)庫的缺省采樣值為100(10%)。

三、VACUUM和ANALYZE的示例:
   

復(fù)制代碼 代碼如下:

    #1. 創(chuàng)建測試數(shù)據(jù)表。
    postgres=# CREATE TABLE testtable (i integer);
    CREATE TABLE
    #2. 為測試表創(chuàng)建索引。
    postgres=# CREATE INDEX testtable_idx ON testtable(i);
    CREATE INDEX
    #3. 創(chuàng)建批量插入測試數(shù)據(jù)的函數(shù)。
    postgres=# CREATE OR REPLACE FUNCTION test_insert() returns integer AS $$
    DECLARE
        min integer;
        max integer;
    BEGIN
        SELECT COUNT(*) INTO min from testtable;
        max := min + 10000;
        FOR i IN min..max LOOP
            INSERT INTO testtable VALUES(i);
        END LOOP;
        RETURN 0;
    END;
    $$ LANGUAGE plpgsql;
    CREATE FUNCTION
    #4. 批量插入數(shù)據(jù)到測試表(執(zhí)行四次)
    postgres=# SELECT test_insert();
     test_insert
    -------------
               0
    (1 row)
    #5. 確認(rèn)四次批量插入都成功。
    postgres=# SELECT COUNT(*) FROM testtable;
     count
    -------
     40004
    (1 row)
    #6. 分析測試表,以便有關(guān)該表的統(tǒng)計信息被更新到PostgreSQL的系統(tǒng)表。
    postgres=# ANALYZE testtable;
    ANALYZE
    #7. 查看測試表和索引當(dāng)前占用的頁面數(shù)量(通常每個頁面為8k)。
    postgres=# SELECT relname,relfilenode, relpages FROM pg_class WHERE relname = 'testtable' or relname = 'testtable_idx';
        relname       | relfilenode    | relpages
    ---------------+-------------+----------
     testtable        |       17601   |      157
     testtable_idx  |       17604   |       90
    #8. 批量刪除數(shù)據(jù)。
    postgres=# DELETE FROM testtable WHERE i < 30000;
    DELETE 30003
    #9. 執(zhí)行vacuum和analyze,以便更新系統(tǒng)表,同時為該表和索引記錄高水標(biāo)記。
    #10. 這里需要額外說明的是,上面刪除的數(shù)據(jù)均位于數(shù)據(jù)表的前部,如果刪除的是末尾部分,
    #      如where i > 10000,那么在執(zhí)行VACUUM ANALYZE的時候,數(shù)據(jù)表將會被物理的縮小。
    postgres=# VACUUM ANALYZE testtable;
    ANALYZE
    #11. 查看測試表和索引在刪除后,再通過VACUUM ANALYZE更新系統(tǒng)統(tǒng)計信息后的結(jié)果(保持不變)。
    postgres=# SELECT relname,relfilenode, relpages FROM pg_class WHERE relname = 'testtable' or relname = 'testtable_idx';
        relname      | relfilenode     | relpages
    ---------------+-------------+----------
     testtable        |       17601   |      157
     testtable_idx  |       17604   |       90
    (2 rows)
    #12. 再重新批量插入兩次,之后在分析該表以更新其統(tǒng)計信息。
    postgres=# SELECT test_insert(); --執(zhí)行兩次。
     test_insert
    -------------
               0
    (1 row)
    postgres=# ANALYZE testtable;
    ANALYZE
    #13. 此時可以看到數(shù)據(jù)表中的頁面數(shù)量仍然為之前的高水標(biāo)記數(shù)量,索引頁面數(shù)量的增加
    #      是和其內(nèi)部實現(xiàn)方式有關(guān),但是在后面的插入中,索引所占的頁面數(shù)量就不會繼續(xù)增加。
    postgres=# SELECT relname,relfilenode, relpages FROM pg_class WHERE relname = 'testtable' or relname = 'testtable_idx';
        relname       | relfilenode    | relpages
    ---------------+-------------+----------
     testtable        |       17601   |      157
     testtable_idx  |       17604   |      173
    (2 rows)
    postgres=# SELECT test_insert();
     test_insert
    -------------
               0
    (1 row)
    postgres=# ANALYZE testtable;
    ANALYZE
    #14. 可以看到索引的頁面數(shù)量確實沒有繼續(xù)增加。
    postgres=# SELECT relname,relfilenode, relpages FROM pg_class WHERE relname = 'testtable' or relname = 'testtable_idx';
        relname      | relfilenode    | relpages
    ---------------+-------------+----------
     testtable        |       17601   |      157
     testtable_idx  |       17604   |      173
    (2 rows)
    #15. 重新批量刪除數(shù)據(jù)。
    postgres=# DELETE FROM testtable WHERE i < 30000;
    DELETE 19996
    #16. 從后面的查詢可以看出,在執(zhí)行VACUUM FULL命令之后,測試表和索引所占用的頁面數(shù)量
    #      確實降低了,說明它們占用的物理空間已經(jīng)縮小了。
    postgres=# VACUUM FULL testtable;
    VACUUM
    postgres=# SELECT relname,relfilenode, relpages FROM pg_class WHERE relname = 'testtable' or relname = 'testtable_idx';
        relname      | relfilenode     | relpages
    ---------------+-------------+----------
     testtable        |       17602   |      118
     testtable_idx  |       17605   |       68
    (2 rows)

四、定期重建索引:

    在PostgreSQL中,為數(shù)據(jù)更新頻繁的數(shù)據(jù)表定期重建索引(REINDEX INDEX)是非常有必要的。對于B-Tree索引,只有那些已經(jīng)完全清空的索引頁才會得到重復(fù)使用,對于那些僅部分空間可用的索引頁將不會得到重用,如果一個頁面中大多數(shù)索引鍵值都被刪除,只留下很少的一部分,那么該頁將不會被釋放并重用。在這種極端的情況下,由于每個索引頁面的利用率極低,一旦數(shù)據(jù)量顯著增加,將會導(dǎo)致索引文件變得極為龐大,不僅降低了查詢效率,而且還存在整個磁盤空間被完全填滿的危險。
    對于重建后的索引還存在另外一個性能上的優(yōu)勢,因為在新建立的索引上,邏輯上相互連接的頁面在物理上往往也是連在一起的,這樣可以提高磁盤頁面被連續(xù)讀取的幾率,從而提高整個操作的IO效率。見如下示例:
    #1. 此時已經(jīng)在該表中插入了大約6萬條數(shù)據(jù),下面的SQL語句將查詢該索引所占用的磁盤空間。   
 

復(fù)制代碼 代碼如下:

    postgres=# SELECT relname, pg_relation_size(oid)/1024 || 'K' AS size FROM pg_class WHERE relkind='i' AND relname = 'testtable_idx';
        relname     | size
    ----------------+------
     testtable_idx | 1240K
    (1 row)
    #2. 刪除數(shù)據(jù)表中大多數(shù)的數(shù)據(jù)。
    postgres=# DELETE FROM testtable WHERE i > 20000;
    DELETE 50006
    #3. 分析一個該表,以便于后面的SQL語句繼續(xù)查看該索引占用的空間。
    postgres=# ANALYZE testtable;
    ANALYZE
    #4. 從該查詢結(jié)果可以看出,該索引所占用的空間并未減少,而是和之前的完全一樣。
    postgres=# SELECT pg_relation_size('testtable_idx')/1024 || 'K' AS size;
     size
    ------
     1240K
    (1 row)
    #5. 重建索引。
    postgres=# REINDEX INDEX testtable_idx;
    REINDEX
    #6. 查看重建后的索引實際占用的空間,從結(jié)果中可以看出索引的尺寸已經(jīng)減少。
    postgres=# SELECT pg_relation_size('testtable_idx')/1024 || 'K' AS size;
     size
    ------
     368K
    (1 row)
    #7. 最后一點需要記住的是,在索引重建后一定要分析數(shù)據(jù)表。
    postgres=# ANALYZE testtable;
    ANALYZE

 五、觀察磁盤使用情況:

    1. 查看數(shù)據(jù)表所占用的磁盤頁面數(shù)量。
 

復(fù)制代碼 代碼如下:

    #relpages只能被VACUUM、ANALYZE和幾個DDL命令更新,如CREATE INDEX。通常一個頁面的長度為8K字節(jié)。
    postgres=# SELECT relfilenode, relpages FROM pg_class WHERE relname = 'testtable';
     relfilenode | relpages
    -------------+----------
           16412 |       79
    (1 row)
   

    2. 查看指定數(shù)據(jù)表的索引名稱和索引占用的磁盤頁面數(shù)量。
 
復(fù)制代碼 代碼如下:

    postgres=# SELECT c2.relname, c2.relpages FROM pg_class c, pg_class c2, pg_index i
        WHERE c.relname = 'testtable' AND c.oid = i.indrelid AND c2.oid = i.indexrelid
        ORDER BY c2.relname;
        relname    | relpages
    ---------------+----------
     testtable_idx |       46
    (1 row)
 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

91极品视频在线观看| 欧美人成在线观看ccc36| 久久综合狠狠| 国产精品第一| 少妇久久久久久久久久| 国产美女视频一区二区三区| 肉大捧一出免费观看网站在线播放| 亚洲一区二区三区四区在线观看| 国产精品毛片一区二区在线看舒淇| www.xxx国产| 成人免费观看cn| 国产一区二区三区黄视频| 色婷婷一区二区三区| 成人激情自拍| 激情校园亚洲图片| 日韩精品黄色网| 超薄肉色丝袜一二三| 影音先锋久久精品| 欧美一区二区免费视频| 亚洲欧美日韩国产手机在线| 女性隐私黄www网站视频| 国产女人18毛片18精品| 影音先锋男人每日资源站| 超碰一区二区| 一本色道久久综合亚洲| 国产欧美一区二区三区视频在线观看| 欧美日韩一区二区视频在线| 精品女同一区二区三区在线观看| 女人被狂躁c到高潮| 欧美成人中文字幕在线| 91免费在线视频观看| 亚洲视频在线观看网站| 日本性视频网站| 在线观看午夜看亚太视频| 国产黄色免费网| 久久综合另类图片小说| 亚洲一级片在线看| 毛片在线网址| 亚洲视频一区二区三区四区| 久草中文视频| 最好看的2019年中文视频| 欧美成人禁片在线www| 99久久国产综合精品成人影院| 免费在线观看一级毛片| 成年人午夜久久久| 波多野结衣人妻| aaaaaaa大片免费看| 国产一区福利| 潘金莲一级淫片aaaaa免费看| 亚洲精品555| 女同久久另类99精品国产| 网友自拍一区| 国内自拍第二页| 国产精品毛片高清在线完整版| 日韩一级片av| 国产精品久久综合| 午夜毛片在线观看| 精品人妻一区二区色欲产成人| 欧美大尺度在线观看| 国产孕妇孕交大片孕| 午夜亚洲性色福利视频| 国产精品丝袜黑色高跟| 久久福利在线| 亚洲精品成a人在线观看| 日韩激情网站| 黄色网址三级| 亚洲精品白浆高清久久久久久| 欧洲av一区二区| 国产精品99久久久久久人| 国产爆初菊在线观看免费视频网站| 国产成人精品久久二区二区91| xxxx欧美xxxx黑人| 亚洲三级在线播放| 国模私拍一区二区三区| 91一区二区| www.欧美精品一二三区| 欧美激情护士| 国产麻豆一精品一av一免费| 99久久精品费精品国产| 又黄又骚的视频| 91精品婷婷国产综合久久竹菊| 日产欧产美韩系列久久99| 精品久久久久一区二区国产| 性生活免费观看视频| 美女午夜精品| 三上悠亚ssⅰn939无码播放| 精品久久久久久久久久岛国gif| 欧美精品一区二区久久婷婷| 日本一二三四高清不卡| 国产高清久久久久| 国产午夜福利一区二区| 欧美日韩高清一区二区三区| 中文字幕一区二区三区乱码图片| 成人免费淫片在线费观看| 日韩精品在线观看一区二区| 中文.日本.精品| 人妻精品一区二区三区| 日本欧美色图| 日韩一区二区三区高清在线观看| 超碰在线免费av| 99在线视频首页| 免费看黄色的视频| 国产精品久久久久国产a级| 久热精品视频| 亚洲自拍偷拍第一页| 毛片免费看不卡网站| 手机免费看av网站| 日韩写真在线| 91精彩视频在线播放| 成年网站在线免费观看| 五月婷婷综合激情网| 中文字幕欧美日韩在线不卡| 国内精品久久久久久久影视麻豆| 亚洲AV无码成人精品区东京热| 偷偷要 色偷偷| 91xx在线观看| 在线视频不卡一区二区三区| 日韩一级黄色片| 四虎成人在线观看| 波多野结衣精品久久| 91精品国产乱码久久| 成av人免费青青久| 久久综合网色—综合色88| 国产最新网站| 国产精品欧美综合| 国产精品无码久久久久一区二区| 欧美日韩视频免费播放| 视频一区视频二区欧美| 国产精品乱码一区二区三区视频| 蜜桃传媒入口| 日韩视频在线观看一区二区| 91美女精品| www.eeuss影院| 天堂av.com| 亚洲欧洲久久| 国产精品老熟女视频一区二区| 亚洲毛片av在线| 欧美另类交视频| 亚洲精品一区二区三区新线路| 亚洲韩国精品一区| 视频一区二区三区中文字幕| 欧美激情aⅴ一区二区三区| 亚洲午夜精品福利| 国产精品自拍小视频| 国产一区二区三区欧美| ririsao久久精品一区| 最新在线黄色网址| 美女视频黄频大全不卡视频在线播放| 久久婷婷国产精品| 欧美精品久久久久久久免费观看| 免费看成人哺乳视频网站| av 日韩 人妻 黑人 综合 无码| 欧美亚洲国产bt| 国产亚洲成av人片在线观看桃| 色噜噜狠狠一区二区| 亚洲伊人网站| 国产盗摄视频在线观看| 色欲av永久无码精品无码蜜桃| 国产高清自拍99| 成人久久精品人妻一区二区三区| 国产欧美精品一区| 精品三级在线| 久久久久久午夜| av在线天堂网| 再深点灬舒服灬太大了添少妇视频| 欧美不卡高清一区二区三区| 欧美日韩午夜精品| 国产suv一区二区三区| 人妻少妇精品一区二区三区| 青草在线视频在线观看| 国产午夜精品无码一区二区| 日韩免费不卡视频| 亚洲视频在线免费观看| 欧美一区永久视频免费观看| 黄色片在线看| 欧美一区国产二区| 欧美性猛交xxxx久久久| 国产一区二区三区乱码| 国产v综合ⅴ日韩v欧美大片| 这里只有精品在线播放| 久久午夜剧场| 97超碰国产精品| 日韩国产精品毛片| 国产一区二区视频在线观看| 91精品国产91久久久久青草| 热re99久久精品国产66热| 亚洲最大的成人网| 少妇无码av无码专区在线观看| 精品福利视频一区二区三区| 中文字幕av在线| 欧美激情第一页在线观看| 国产精品久久久久久久久男| 国产精品99一区二区三区| 91视频最新入口| 大胸美女被爆操| 人人精品亚洲| 性色国产成人久久久精品| 超碰免费在线观看| 97人人模人人爽人人喊中文字| 亚洲欧美视频在线| 亚洲综合精品久久| 欧美少妇一区二区| 激情综合在线观看| 亚洲图片中文字幕| 欧美理论电影大全| 精彩国产在线| 成人动漫视频在线观看免费| 成年网站免费在线观看| 亚洲二区精品| 日本亚洲不卡| 欧美色图麻豆| www.欧美日本韩国| 神马久久资源| 日韩成人一区二区三区在线观看| 成人av电影免费观看| 91久久国产综合久久| 久热精品视频在线观看一区| 超碰激情在线| 日本最新高清不卡中文字幕| 国产资源精品在线观看| 欧美男女爱爱视频| 视频一区二区三区不卡| 在线h片观看| 成人免费视频视频在| 精品人人视频| 亚洲综合色激情五月| 精品乱色一区二区中文字幕| 国产精品视频一区麻豆| 亚洲第一区在线观看| 欧美大片在线看免费观看| 日韩欧美在线中文字幕| 日本高清不卡中文字幕| 日韩欧美电影| 天天色棕合合合合合合合| 日韩av一二三四区| 亚洲人成伊人成综合网久久久| 99久久免费国产精精品| 日本欧美大码aⅴ在线播放| 资源视频在线播放免费| 亚洲精品大片| 囯产精品久久久久久| 国产aa视频| 中文国语毛片高清视频| 亚洲在线一区二区三区| 亚洲三级在线观看| 天堂在线观看免费视频| 18成人在线视频| 国产精品白浆一区二小说| 亚洲欧美日韩不卡| 久久福利网址导航| 日韩精品视频免费专区在线播放| 精品丝袜一区二区三区| 亚洲精品国产setv| 精品在线免费观看视频| 亚洲 国产 图片| 日本道中文字幕| 国产毛片av在线| 1024在线看片| 性一交一乱一乱一视频| 国产精品久久久久久久久久10秀| 午夜不卡av免费| 国产一级免费av| а√天堂资源国产精品| 好看的中文字幕在线播放| 亚洲精品久久久一区二区三区| 天天综合天天操| 天堂在线观看免费视频| 日韩天堂在线观看| 美女露隐私免费网站| 成人福利影院| 久久久久亚洲AV成人无码国产| 成人免费视频在线观看| 国产成人久久| 黄色大片在线免费观看| 日本中文字幕亚洲| 久久久久久久久久久久久久免费看| 精彩视频一区二区| av网在线观看| 欧美va亚洲va国产综合| 亚洲日产国产精品| 超碰97国产精品人人cao| 国产伦理片在线观看| 捷克做爰xxxⅹ性视频| 一区二区三区四区高清视频| 一区二区三区中文字幕精品精品| 九九在线观看免费视频| 亚洲精品久久久久久久蜜桃| 狠狠做深爱婷婷久久综合一区| 极品美鲍一区| 色吊丝一区二区| 亚洲国产精品久久不卡毛片| 粉嫩av四季av绯色av第一区| 亚洲国产成人精品一区二区| 999sesese| 日韩国产欧美一区二区三区| 成年人在线观看| 国产剧情在线| 欧美日韩国产一区二区在线观看| 九九热精品在线观看| 精品黑人一区二区三区观看时间| 欧美一级日韩不卡播放免费| 中文字幕av久久爽av| 91p九色成人| heyzo在线观看| 日韩在线小视频| 成人三级视频| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 日韩视频精品在线| 久久久99国产精品免费| 国产拍精品一二三| 国产视频二区在线观看| 激情图片qvod| 男人的天堂av社区在线| 91看片一区| 在线视频尤物| 国产一级性片| 神马午夜在线视频| 天堂√中文在线| 91在线视频免费观看| 亚洲乱码久久| 99免在线观看免费视频高清| 精品久久人人做人人爽| 日本一区二区高清视频| 亚洲欧美乱综合| 亚洲日本中文字幕在线| 精品国产乱码久久久久久1区二区| h片在线免费观看| 综合久久国产九一剧情麻豆|