久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

講解Oracle表碎片的具體起因及解決的辦法

瀏覽:202日期:2023-11-27 09:21:45

表碎片的相關知識:

什么是水線(High Water Mark)?

----------------------------

所有的Oracle段(segments,在此,為了理解方便,建議把segment作為表的一個同義詞) 都有一個在段內容納數據的上限,我們把這個上限稱為'high water mark'或HWM。這個HWM是一個標記,用來說明已經有多少沒有使用的數據塊分配給這個segment。HWM通常增長的幅度為一次5個數據塊,原則上HWM只會增大,不會縮小,即使將表中的數據全部刪除,HWM還是為原值,由于這個特點,使HWM很象一個水庫的歷史最高水位,這也就是HWM的原始含義,當然不能說一個水庫沒水了,就說該水庫的歷史最高水位為0。但是如果我們在表上使用了truncate命令,則該表的HWM會被重新置為0。

HWM數據庫的操作有如下影響:

a) 全表掃描通常要讀出直到HWM標記的所有的屬于該表數據庫塊,即使該表中沒有任何數據。

b) 即使HWM以下有空閑的數據庫塊,鍵入在插入數據時使用了append關鍵字,則在插入時使用HWM以上的數據塊,此時HWM會自動增大。

如何知道一個表的HWM?

a) 首先對表進行分析:

ANALYZE TABLE; ESTIMATE/COMPUTE STATISTICS;b) SELECT blocks, empty_blocks, num_rows FROM user_tables WHERE table_name = ;

BLOCKS 列代表該表中曾經使用過得數據庫塊的數目,即水線。

EMPTY_BLOCKS 代表分配給該表,但是在水線以上的數據庫塊,即從來沒有使用的數據塊。

讓我們以一個有28672行的BIG_EMP1表為例進行說明:

1) SQL> SELECT segment_name,segment_type,blocks FROM dba_segments WHERE segment_name='BIG_EMP1'; SEGMENT_NAME SEGMENT_TYPE BLOCKS EXTENTS ----------------------------- ----------------- ---------- ------- BIG_EMP1 TABLE 1024 2 1 row selected.

2) SQL> ANALYZE TABLE big_emp1 ESTIMATE STATISTICS; Statement processed.

3) SQL> SELECT table_name,num_rows,blocks,empty_blocks FROM user_tables WHERE table_name='BIG_EMP1'; TABLE_NAME NUM_ROWS BLOCKS EMPTY_BLOCKS ------------------------------ ---------- ---------- ------------ BIG_EMP1 28672 700 323 1 row selected.

注意:BLOCKS + EMPTY_BLOCKS (700+323=1023)比DBA_SEGMENTS.BLOCKS少個數據庫塊,這是因為有一個數據庫塊被保留用作segment header。DBA_SEGMENTS.BLOCKS 表示分配給這個表的所有的數據庫塊的數目。USER_TABLES.BLOCKS表示已經使用過的數據庫塊的數目。

4) SQL> SELECT COUNT (DISTINCT DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid)|| DBMS_ROWID.ROWID_RELATIVE_FNO(rowid)) 'Used' FROM big_emp1; Used ---------- 700 1 row selected.

5) SQL> DELETE from big_emp1; 28672 rows processed.

6) SQL> commit; Statement processed.

7) SQL> ANALYZE TABLE big_emp1 ESTIMATE STATISTICS; Statement processed.

8) SQL> SELECT table_name,num_rows,blocks,empty_blocks FROM user_tables WHERE table_name='BIG_EMP1'; TABLE_NAME NUM_ROWS BLOCKS EMPTY_BLOCKS ------------------------------ ---------- ---------- ------------ BIG_EMP1 0 700 323 1 row selected.

9) SQL> SELECT COUNT (DISTINCT DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid)|| DBMS_ROWID.ROWID_RELATIVE_FNO(rowid)) 'Used' FROM big_emp1; Used ---------- 0 -- 這表名沒有任何數據庫塊容納數據,即表中無數據1 row selected.

10) SQL> TRUNCATE TABLE big_emp1; Statement processed.

11) SQL> ANALYZE TABLE big_emp1 ESTIMATE STATISTICS; Statement processed.

12) SQL> SELECT table_name,num_rows,blocks,empty_blocks 2> FROM user_tables 3> WHERE table_name='BIG_EMP1'; TABLE_NAME NUM_ROWS BLOCKS EMPTY_BLOCKS ------------------------------ ---------- ---------- ------------ BIG_EMP1 0 0 511 1 row selected.

13) SQL> SELECT segment_name,segment_type,blocks FROM dba_segments WHERE segment_name='BIG_EMP1'; SEGMENT_NAME SEGMENT_TYPE BLOCKS EXTENTS ----------------------------- ----------------- ---------- ------- BIG_EMP1 TABLE 512 1 1 row selected.

注意:

TRUNCATE命令回收了由delete命令產生的空閑空間,注意該表分配的空間由原先的1024塊降為512塊。

為了保留由delete命令產生的空閑空間,可以使用TRUNCATE TABLE big_emp1 REUSE STORAGE

用此命令后,該表還會是原先的1024塊。

行鏈接(Row chaining) 與行遷移(Row Migration)當一行的數據過長而不能插入一個單個數據塊中時,

可能發生兩種事情:行鏈接(row chaining)或行遷移(row migration)。

行鏈接

當第一次插入行時,由于行太長而不能容納在一個數據塊中時,就會發生行鏈接。在這種情況下,oracle會使用與該塊鏈接的一塊或多塊數據塊來容納該行的數據。行連接經常在插入比較大的行時才會發生,如包含long, long row, lob等類型的數據。在這些情況下行鏈接是不可避免的。

行遷移

當修改不是行鏈接的行時,當修改后的行長度大于修改前的行長度,并且該數據塊中的空閑空間已經比較小而不能完全容納該行的數據時,就會發生行遷移。在這種情況下,Oracle會將整行的數據遷移到一個新的數據塊上,而將該行原先的空間只放一個指針,指向該行的新的位置,并且該行原先空間的剩余空間不再被數據庫使用,這些剩余的空間我們將其稱之為空洞,這就是產生表碎片的主要原因,表碎片基本上也是不可避免的,但是我們可以將其降到一個我們可以接受的程度。注意,即使發生了行遷移,發生了行遷移的行的rowid 還是不會變化,這也是行遷移會引起數據庫I/O性能降低的原因。其實行遷移是行鏈接的一種特殊形式,但是它的起因與行為跟行鏈接有很大不同,所以一般把它從行鏈接中獨立出來,單獨進行處理。

行鏈接和行遷移引起數據庫性能下降的原因:

引起性能下降的原因主要是由于引起多余的I/O造成的。當通過索引訪問已有行遷移現象的行時,數據庫必須掃描一個以上的數據塊才能檢索到改行的數據。這主要有一下兩種表現形式:

1) 導致row migration 或row chaining INSERT 或 UPDATE語句的性能比較差,因為它們需要執行額外的處理

2) 利用索引查詢已經鏈接或遷移的行的select語句性能比較差,因為它們要執行額外的I/O

如何才能檢測到行遷移與行鏈接:

在表中被遷移或被鏈接的行可以通過帶list chained rows選項的analyze語句識別出來。這個命令收集每個被遷移或鏈接的行的信息,并將這些信息放到指定的輸出表中。為了創建這個輸出表,運行腳本UTLCHAIN.SQL。

SQL> ANALYZE TABLE scott.emp LIST CHAINED ROWS; SQL> SELECT * FROM chained_rows;

當然你也可以通過檢查v$sysstat視圖中的'table fetch continued row'來檢查被遷移或被鏈接的行。

SQL> SELECT name, value FROM v$sysstat WHERE name = 'table fetch continued row'; NAME VALUE ---------------------------------------------------------------- --------- table fetch continued row 308

盡管行遷移與行鏈接是兩個不同的事情,但是在oracle內部,它們被當作一回事。所以當你檢測行遷移與行鏈接時,你應該仔細的分析當前你正在處理的是行遷移還是行鏈接。

解決辦法

o 在大多數情況下,行鏈接是無法克服的,特別是在一個表包含象LONGS, LOBs 等這樣的列時。當在不同的表中有大量的鏈接行,并且哪些表的行的長度不是很長時,你可以通過用更大的block size重建數據庫的方法來解決它。

例如:當前你的數據庫的數據塊的大小為4K,但是你的行的平均長度為6k,那么你可以通過用8k大小的數據塊來重建數據庫的辦法解決行鏈接現象。

o 行遷移主要是由于設置的PCTFREE參數過小,導致沒有給update操作留下足夠的空閑空間引起。為了避免行遷移,所有被修改的表應該設置合適的PCTFREE 值,以便在每個數據塊內為數據修改保留足夠的空間。可以通過增加PCTFREE值的辦法來避免行遷移,但這種解決辦法是以犧牲更多的空間為代價的,這也就是我們通常所說的以空間換效率。 而且通過增加PCTFREE值的辦法只能緩解行遷移現象,而不能完全解決行遷移,所以較好的辦法是在設置了合適的PCTFREE值的后,在發現行遷移現象比較嚴重時,對表的數據進行重組。

下面是對行遷移數據進行重組的步驟(這種方法也被成為CTAS):

-- Get the name of the table with migrated rows: ACCEPT table_name PROMPT 'Enter the name of the table with migrated rows: '

-- Clean up from last execution set echo off DROP TABLE migrated_rows; DROP TABLE chained_rows;

-- Create the CHAINED_ROWS table @.../rdbms/admin/utlchain.sql set echo on spool fix_mig -- List the chained and migrated rows ANALYZE TABLE &table_name LIST CHAINED ROWS;

-- Copy the chained/migrated rows to another table create table migrated_rows as SELECT orig.* FROM &table_name orig, chained_rows cr WHERE orig.rowid = cr.head_rowid AND cr.table_name = upper('&table_name');

-- Delete the chained/migrated rows from the original table DELETE FROM &table_name WHERE rowid IN (SELECT head_rowid FROM chained_rows);

-- Copy the chained/migrated rows back into the original table INSERT INTO &table_name SELECT * FROM migrated_rows;

spool off

當對一個表進行全表掃描時,我們實際上忽略行遷移中各個指向其它行的指針,因為我們知道,全表掃描會遍歷全表,最終會讀到發生行遷移的行的行數據,在此時才會處理這些行數據。因此,在全表掃描中,行遷移不會引發其它額外的工作。

當通過索引讀一個表的數據時,被遷移的行會引起額外的I/O操作。這是因為從所引中我們會讀到數據行的rowid,它告訴數據庫到指定文件的指定數據塊的指定slot上可以找到需要的數據,但是因為發生了行遷移,此處只存放一個指向數據的指針,而不是真正的數據,所以數據庫又需要根據該指針(類似rowid)到指定文件的指定數據塊的指定slot上去找真正的數據,重復上面的過程,知道找到真正的數據。我們可以看出,這會引入額外的I/O操作。

發現又嚴重表碎片的表的步驟:

表需要整理原因有2:

a) 有太多的migration rows

b) 表經過刪除數據后有大量的空塊, 而全表掃描時,仍需要讀這些空塊

發現需要reorganization的表,需要從表的實際使用的空間與表的hwm入手

首先分析表:

Alter table emp compute statistics.

然后可以查詢出有數據的數據塊的個數:

For ORACLE 7: SELECT COUNT(DISTINCT SUBSTR(rowid,15,4)|| SUBSTR(rowid,1,8)) 'Used' FROM schema.table;

For ORACLE 8+: SELECT COUNT (DISTINCT DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid)|| DBMS_ROWID.ROWID_RELATIVE_FNO(rowid)) 'Used' FROM schema.table; or SELECT COUNT (DISTINCT SUBSTR(rowid,1,15)) 'Used' FROM schema.table;

查詢出HWM以下的數據塊的個數(可能由于delete, 數據塊中并不包含數據):

This will update the table statistics. After generating the statistics, to determine the high water mark: SELECT blocks, empty_blocks, num_rows FROM user_tables WHERE table_name = <tablename>

下面給出一個綜合的sql語句,它可以查詢出浪費空間的表(浪費超過25%),而且還計算出其它信息(使用時根據具體情況修改where子句中的blocks,owner限制條件):

SELECT OWNER, SEGMENT_NAME TABLE_NAME, SEGMENT_TYPE, GREATEST(ROUND(100 * (NVL(HWM - AVG_USED_BLOCKS,0)/GREATEST(NVL(HWM,1),1) ), 2), 0) WASTE_PER,ROUND(BYTES/1024, 2) TABLE_KB, NUM_ROWS, BLOCKS, EMPTY_BLOCKS, HWM HIGHWATER_MARK, AVG_USED_BLOCKS,CHAIN_PER, EXTENTS, MAX_EXTENTS, ALLO_EXTENT_PER,DECODE(GREATEST(MAX_FREE_SPACE - NEXT_EXTENT, 0), 0,'N','Y') CAN_EXTEND_SPACE, NEXT_EXTENT, MAX_FREE_SPACE,O_TABLESPACE_NAME TABLESPACE_NAMEFROM (SELECT A.OWNER OWNER, A.SEGMENT_NAME, A.SEGMENT_TYPE, A.BYTES,B.NUM_ROWS, A.BLOCKS BLOCKS, B.EMPTY_BLOCKS EMPTY_BLOCKS, A.BLOCKS - B.EMPTY_BLOCKS - 1 HWM,DECODE( ROUND((B.AVG_ROW_LEN * NUM_ROWS * (1 + (PCT_FREE/100)))/C.BLOCKSIZE, 0),0, 1,ROUND((B.AVG_ROW_LEN * NUM_ROWS * (1 + (PCT_FREE/100)))/C.BLOCKSIZE, 0)) + 2 AVG_USED_BLOCKS,ROUND(100 * (NVL(B.CHAIN_CNT, 0)/GREATEST(NVL(B.NUM_ROWS, 1), 1)), 2) CHAIN_PER,ROUND(100 * (A.EXTENTS/A.MAX_EXTENTS), 2) ALLO_EXTENT_PER,A.EXTENTS EXTENTS,A.MAX_EXTENTS MAX_EXTENTS, B.NEXT_EXTENT NEXT_EXTENT, B.TABLESPACE_NAME O_TABLESPACE_NAMEFROM SYS.DBA_SEGMENTS A,SYS.DBA_TABLES B,SYS.TS$ CWHERE A.OWNER =B.OWNER and SEGMENT_NAME = TABLE_NAME andSEGMENT_TYPE = 'TABLE' ANDB.TABLESPACE_NAME = C.NAMEUNION ALLSELECT A.OWNER OWNER, SEGMENT_NAME || '.' || B.PARTITION_NAME, SEGMENT_TYPE, BYTES,B.NUM_ROWS, A.BLOCKS BLOCKS, B.EMPTY_BLOCKS EMPTY_BLOCKS, A.BLOCKS - B.EMPTY_BLOCKS - 1 HWM,DECODE( ROUND((B.AVG_ROW_LEN * B.NUM_ROWS * (1 + (B.PCT_FREE/100)))/C.BLOCKSIZE, 0),0, 1,ROUND((B.AVG_ROW_LEN * B.NUM_ROWS * (1 + (B.PCT_FREE/100)))/C.BLOCKSIZE, 0)) + 2 AVG_USED_BLOCKS,ROUND(100 * (NVL(B.CHAIN_CNT,0)/GREATEST(NVL(B.NUM_ROWS, 1), 1)), 2) CHAIN_PER,ROUND(100 * (A.EXTENTS/A.MAX_EXTENTS), 2) ALLO_EXTENT_PER, A.EXTENTS EXTENTS, A.MAX_EXTENTS MAX_EXTENTS, B.NEXT_EXTENT,B.TABLESPACE_NAME O_TABLESPACE_NAMEFROM SYS.DBA_SEGMENTS A,SYS.DBA_TAB_PARTITIONS B,SYS.TS$ C,SYS.DBA_TABLES DWHERE A.OWNER = B.TABLE_OWNER and SEGMENT_NAME = B.TABLE_NAME andSEGMENT_TYPE = 'TABLE PARTITION' ANDB.TABLESPACE_NAME = C.NAME ANDD.OWNER = B.TABLE_OWNER ANDD.TABLE_NAME = B.TABLE_NAME ANDA.PARTITION_NAME = B.PARTITION_NAME),(SELECT TABLESPACE_NAME F_TABLESPACE_NAME,MAX(BYTES)MAX_FREE_SPACEFROM SYS.DBA_FREE_SPACEGROUP BY TABLESPACE_NAME)WHERE F_TABLESPACE_NAME = O_TABLESPACE_NAME ANDGREATEST(ROUND(100 * (NVL(HWM - AVG_USED_BLOCKS, 0)/GREATEST(NVL(HWM, 1), 1) ), 2), 0) > 25AND OWNER = '??' AND BLOCKS > 128ORDER BY 10 DESC, 1 ASC, 2 ASC;

各列說明:

WASTE_PER:已分配空間中水線以下的空閑空間(即浪費空間)的百分比。

TABLE_KB:該表目前已經分配的所有空間的大小,以k為單位。

NUM_ROWS:在在表中數據的行數

BLOCKS:該表目前已經分配的數據塊的塊數,包含水線以上的部分

EMPTY_BLOCKS:已分配空間中水線以上的空閑空間

HIGHWATER_MARK:目前的水線

AVG_USED_BLOCKS:理想情況下(沒有行遷移),該表數據應該占用的數據塊的個數

CHAIN_PER:發生行遷移現象的行占總行的比率

EXTENTS:該表目前已經分配的extent數

MAX_EXTENTS:該表可以分配的最大extent的個數

ALLO_EXTENT_PER:目前已分配的extent的個數占可以分配最大extent的比率

CAN_EXTEND_SPACE:是否可以分配下一個extent

NEXT_EXTENT:下一個extent的大小

MAX_FREE_SPACE:表的已分配空間中最大的空閑空間

標簽: Oracle 數據庫
主站蜘蛛池模板: 亚洲国产精品久久久久婷婷老年 | 99精品国产高清在线观看 | 国产精品乱码一区二区三区 | 国产精品二区三区 | 久久亚洲精品国产精品紫薇 | 黄网站免费在线观看 | 欧美精品三区 | 欧美激情精品久久久久 | 91久久九色 | 成人不卡在线观看 | 91精品国产一区二区三区四区在线 | 91视视频在线观看入口直接观看 | 亚洲精品二区三区 | 国产精品视频 | 99综合| 男人天堂999| 91精彩视频在线观看 | 亚洲色图综合 | 色橹橹欧美在线观看视频高清 | 一区二区三区精品 | 欧美一区二区三区aa大片漫 | 久久精品一二三四 | 天天操天天干天天干 | www.一级电影 | 亚洲美女视频一区二区三区 | 国产成人免费 | 天天操天天插天天干 | 久久久片 | 国产精品福利午夜在线观看 | 999精品视频 | 久久精品小视频 | 亚洲欧美高清 | 日韩精品一区二区三区 | 中文字幕一区二区三区精彩视频 | 欧美一区二区三区精品 | 亚洲免费成人 | 久久亚洲黄色 | 日韩三级在线免费 | 97国产在线视频 | 伊人超碰 | 日韩精品在线视频 | 特大毛片 | 91视频原创 | 91佛爷在线观看 | 欧美福利在线观看 | 天天精品 | 精品久久久久一区二区国产 | 欧美成人手机在线 | 亚洲国产精品久久久久久女王 | 久草最新 | 欧美久久久精品 | 中文成人在线 | 久久久久一区 | 在线一区二区三区做爰视频网站 | 成人在线一区二区 | 99亚洲国产 | 久久久99精品免费观看 | 欧美在线高清 | 久久av一区二区三区亚洲 | 成人av网页 | 欧美成人影院在线 | 欧美日韩在线精品 | 成人av播放 | 一级毛片在线看aaaa | 欧美日韩精品一区二区三区 | 亚洲国产精品第一区二区 | 国产精品成人一区二区三区夜夜夜 | 亚洲一区二区中文字幕 | 国产高清在线精品 | 蜜桃视频一区二区 | 奇米一区二区 | 国产精品影视 | 欧美日韩国产一区二区在线观看 | 欧美亚洲免费 | 九色91视频| 成人久久久久爱 | 久久91av | 日韩综合区 | 国产成人精品一区二区三区四区 | 久草视| 黄色片在线 | 日韩成人一区 | 中文字幕在线一区 | 亚洲视频综合 | 日韩一区二区福利 | 欧美视频免费在线 | 亚洲成人高清 | 久久成人精品视频 | 在线观看免费视频亚洲 | 精品视频在线观看一区二区 | 日本午夜在线 | 一区二区三区国产亚洲网站 | 在线欧美亚洲 | 国产超碰人人模人人爽人人添 | 色综合国产 | 国产一区二区三区在线 | 天堂精品 | 午夜精品久久久久久久久久久久 | 国产在线精品一区 | 国产精品久久久久久久久久久久冷 | 91嫩草在线 | 激情国产 | 狠狠干干 | 亚洲成人免费 | 91麻豆精品国产91久久久久久久久 | 日本私人网站在线观看 | 欧美日韩国产精品一区 | 欧美精品v国产精品v日韩精品 | 成人午夜在线 | 国产高清一级 | 国产一区二区三区网站 | 九色av | av免费观看网页 | 成人a在线视频免费观看 | 欧美日韩三区 | a级在线免费观看 | 日本免费黄色 | 亚洲午夜一区 | 日韩在线播放一区二区 | 日韩欧美国产一区二区 | 日韩中文字幕一区二区高清99 | 国产91精品一区二区绿帽 | 成人看片在线观看 | 亚洲精品视频区 | 亚洲高清视频在线 | 欧美一区久久 | 精品超碰| 麻豆精品久久久 | 大黄网站在线观看 | 天天澡天天狠天天天做 | 成人在线观看免费 | 久草新 | 97理论片 | 国产传媒一区 | 亚洲 成人 av | 超碰激情 | 久久久精| 亚洲精品一区二三区不卡 | 福利视频一 | av在线免费观看网站 | 欧美一区二区三区视频 | 青青草人人 | 欧美三级电影在线播放 | 欧美一级黄色片网站 | 中文字幕乱码一区二区三区 | av电影中文字幕在线观看 | 免费的一级毛片 | 欧美国产精品一区 | 国产一区二区精品久久 | 天天爽夜夜爽 | 国语精品久久 | 天天摸天天操 | 中文字幕一区二区三区精彩视频 | 亚洲免费人成在线视频观看 | 1000部精品久久久久久久久 | 国产高清久久 | 亚洲一级黄色 | 99免费视频| 91国偷自产一区二区三区亲奶 | 亚洲欧美激情在线 | 日本在线免费电影 | 日韩欧美综合在线 | 日韩午夜| 天堂资源av | 懂色中文一区二区在线播放 | 国产精品高潮呻吟 | 国产精品亚洲成在人线 | 91精品国产99| 国产亚洲一区二区三区 | 91av视频在线观看 | 国产一区二区视频在线观看 | 中文字幕 国产 | 欧美一级精品片在线看 | 国产精品第52页 | 九一视频在线观看 | 成人av视| h色视频在线观看 | 精品久久97 | 日韩三级电影免费观看 | 日韩在线免费 | 成人免费视频网址 | 无码一区二区三区视频 | 一区中文字幕 | 亚洲精品一区二三区不卡 | 日韩av免费在线观看 | 国产精品久久综合 | 在线观看免费视频黄 | www国产成人免费观看视频 | 亚洲精品一区二区三区中文字幕 | 国模精品视频一区二区 | 中文字幕高清视频 | 国产高清免费视频 | 亚洲综合大片69999 | 欧美在线视频网 | 97精品国产 | 国产一区二区自拍视频 | 色偷偷噜噜噜亚洲男人 | 日本视频在线 | 日韩一级二级三级 | 精品国产综合 | 中文字幕日韩专区 | 国产毛片网站 | 日韩欧美精品一区二区三区 | 国产专区在线视频 | 久久精品免费一区二区三区 | 亚洲一区二区三区四区在线观看 | 久久精品国产免费 | 91在线中文 | 午夜在线影院 | 欧洲亚洲精品久久久久 | 三级黄色视频毛片 | 伊人狠狠干| 国产真实乱全部视频 | 99热精品免费 | av三级| 另类免费视频 | 亚洲aⅴ天堂av在线电影软件 | 亚洲激情一区二区 | 国产成人精品一区 | 91福利电影在线观看 | 永久免费在线 | 日韩电影一区二区在线观看 | 成人免费视频网站在线观看 | 99热精品久久| 伊人干| 欧美在线一区二区 | 国产看片网站 | 韩国精品免费视频 | 二区中文字幕 | 久久免费精品 | 国产精品无码永久免费888 | 久久se精品一区精品二区 | 国产日产欧美a级毛片 | 在线免费色视频 | 欧美视频免费 | 亚洲成成品网站 | 亚洲在线视频 | 国产在线精品一区二区 | 日韩欧美一区二区三区免费观看 | 成人av网站在线观看 | av网站推荐| 91色爱| 精品中文字幕在线观看 | 91av视频在线观看 | 黄色影片网址 | 一区二区三区高清 | 四虎成人在线视频 | 日韩精品视频免费专区在线播放 | 久久国产婷婷国产香蕉 | 欧美精品一区二区三区一线天视频 | 午夜在线小视频 | 精品九九 | 一本色道精品久久一区二区三区 | 草久久久 | 一二三区不卡视频 | 中文字幕在线视频免费播放 | 亚洲精品乱码久久久久久9色 | 亚洲毛片网站 | 4h影视 | 青青久久 | 午夜视频网 | 免费国产视频在线观看 | 九色在线观看 | aⅴ色国产 欧美 | 天堂一区 | 四虎影院免费网址 | 在线免费黄色小视频 | 国产精品一区二区视频 | 日韩欧美视频一区 | 国产福利视频在线观看 | 免费久久网站 | 欧美一区二区三区免费 | 亚洲不卡网站 | 黄色毛片看看 | 成人在线免费电影 | 亚洲午夜精品视频 | 国产精品久久国产精麻豆99网站 | 精品欧美乱码久久久久久 | 日韩一区在线视频 | 国产在线中文字幕 | 国产精品福利久久 | 亚洲精品成人av | 青青草在线视频免费观看 | 欧美成在线观看 | 浴室洗澡偷拍一区二区 | 国产在线一区二区三区 | 中文在线一区 | 中文字幕一区二区三区四区不卡 | 国产www视频 | 福利片在线| 国产在线视频网站 | 亚洲一区中文字幕 | 日产欧产va高清 | 欧美日韩国产影院 | 2021最新热播中文字幕-第1页-看片视频 青青青久草 | 亚洲av毛片一区二二区三三区 | 999在线视频免费观看 | 一区二区三区日韩精品 | 在线视频国产一区 | 成人久久久久久久 | 日韩中文字幕在线 | 日韩免费视频一区二区 | 久久99精品视频 | 久久久久久免费 | 国产毛片一区二区 | 另类天堂av | 黄色手机在线观看 | 久久伊人一区二区 | 欧美福利网 | 欧美一区二区三区精品 | 另类sb东北妇女av | 久久久久久久久久久久久九 | 亚洲美乳中文字幕 | 欧美一级特 | 欧美6一10sex性hd | 国产成人影院 | 国产一区免费 | 国内成人精品2018免费看 | 亚洲视频在线观看免费 | 女人色网 | 日本高清视频一区二区三区 | 日韩电影一区二区在线观看 | 国产成人精品av | 国产欧美日韩综合精品 | 成人av网站在线 | 成人亚洲一区二区 | 99久久久精品 | 亚洲男人天堂2024 | 亚洲一在线| 在线日韩视频 | 欧洲免费视频 | 亚洲精品国产片 | 国产91看片 | 欧美日韩一二三区 | 国变精品美女久久久久av爽 | 成人av播放 | 久久国产精品久久精品 | 黄色地址 | 5060毛片| 国产一区在线视频 | 欧美日韩一区二区在线播放 | 日韩中文字幕免费视频 | 中文字幕第90页 | 天天影视色香欲 | 免费av在线 | 精品亚洲精品 | 午夜精品成人一区二区 | 免费视频爱爱太爽了 | 精品国产一区二区三区久久久蜜月 | 性色网站| 国产日韩欧美一区 | 日韩精品 电影一区 亚洲 | 日韩在线不卡 | 成人久久精品 | 日韩欧美综合 | 中文在线视频 | 国产午夜精品一区二区 | 亚洲va中文字幕 | 久久综合久久综合久久 | 日韩污视频在线观看 | 免费的黄视频 | 蜜桃精品久久久久久久免费影院 | 国产综合视频 | 中文字幕日韩欧美 | 羞羞在线观看视频免费观看hd | 久久久久久亚洲 | 精品在线二区 | 波多野结衣一区二区三区中文字幕 | 中文字幕视频网站 | 久草在线免费福利资源 | 丝袜+亚洲+另类+欧美+变态 | 亚洲a人| 日韩精品一区二区三区第95 | av在线综合网 | 亚洲午夜视频在线观看 | 欧美黑人狂躁日本寡妇 | 91久久精品一区二区别 | 一级毛片网 | 欧美精品99 | 亚洲欧美综合精品久久成人 | www.久久 | 看一级毛片视频 | 亚洲第一区在线 | 亚洲成人一区二区 | 成人a在线视频 | 成版人性视频 | 精品久久一二三区 | 天天干女人 | 亚洲成人一区 | 91一区 | 伊人超碰| 精品久久久久久久久久久久久久 | 日本一二三区在线 | 99这里只有精品视频 | 亚洲精品在线视频 | 有码在线 | 成人高清视频免费观看 | 欧美午夜视频 | 欧美日韩高清不卡 | 一区二区视频免费 | 成人国产一区二区 | 伊人久色 | 久久久久无码国产精品一区 | 91精品视频在线播放 | 在线99热 | 国产精品久久久久久久久久久不卡 | 国产成年免费视频 | 黑人巨大精品欧美一区二区三区 | 亚洲国产一区在线 | 成人精品视频 | 久久成人精品 | 中文字幕黄色 | 国产区免费观看 | japan护士性xxxⅹhd| 欧美a√ | 久久免费小视频 | 黄色网址av | 91久久夜色精品国产九色 | 色视频网站在线观看 | 91精品久久久久久久久 | 第一色在线 | 国产成人精品免高潮在线观看 | 综合伊人 | 亚洲精品在线播放 | 欧美黄色片| 久久久中文字幕 | 精品日韩一区二区三区 | 亚洲视频在线播放 | 国产免费一区二区三区网站免费 | 日本久久久久久 | 中文字幕久久综合 | av网站免费观看 | 91在线资源| 91.成人天堂一区 | 99国产精品99久久久久久 | 亚洲欧美一区二区三区久久 | aaaaaaa片毛片免费观看 | 91成人黄色| 精品中文字幕一区 | 中文字幕91| 人人种亚洲| 欧美日本高清视频 | h色视频在线观看 | 日韩视频中文 | 亚洲午夜精品片久久www慈禧 | 99re6在线 | 精品国产一区二区三区性色 | 精品一区av | 99久久久成人国产精品 | 亚洲一区二区三区免费看 | 亚洲小视频 | 久久久久久综合 | 久久国产精品视频 | 天天操天天干天天 | 蜜桃一区二区 | 亚洲成人影院在线观看 | 日韩欧美视频 | 国产精品视频成人 | 国产一区二区视频精品 | 欧美日韩精品一区二区三区 | 久久久久久久av | 欧美精品一区二区蜜臀亚洲 | 91精产国品一二三区在线观看 | 青青草网| 中文字幕在线资源 | 成人在线看片 | 黄色av网站在线观看 | 一区二区三区福利视频 | 日韩亚洲| 色综合天天 | 夜夜天天操 | 亚洲欧美一区二区三区在线 | 97高清国语自产拍 | 欧美一级免费 | 91观看 | 日韩亚洲 | 亚洲一区二区高清视频 | 日韩av网站在线 | 日韩中文字幕a | 嫩草研究院在线观看入口 | 欧美日韩中文在线观看 | 91精品国产综合久久久亚洲 | 国产福利在线观看 | 嫩草影院在线观看91麻豆 | 久久久久综合 | 97av在线| 欧美伦理一区二区 | 人人人射| 青娱乐国产精品视频 | 麻豆毛片| www日本视频| 欧美日韩一区二区在线 | 一区二区三区国产好 | 精品久| 91av免费在线观看 | 日韩一级免费在线观看 | 国产在线成人 | 日本久久久影视 | 欧美日韩精品电影 | 最近中文字幕在线视频1 | 久久一区二区三区四区 | 麻豆视频国产 | 国产成人一区二区三区 | 一区在线免费观看 | 福利视频一区二区 | 欧美久久久久久 | 日日操视频 | 久久91| 91九色视频 | 国产精品久久久久无码av | 久久久精品欧美一区二区免费 | 久久涩 | 欧美一区二区免费 | 国产激情精品一区二区三区 | 国产精品成人在线 | 中文字幕一区二区三区乱码图片 | 福利精品在线观看 | 中文字幕成人 | 91精彩视频在线观看 | 在线观看免费黄色 | 欧美精品免费在线观看 | 91视频专区 | 久久久久久久99精品免费观看 | 国产又粗又长又硬又猛电影 | 欧美日韩中文字幕在线 | 亚洲视频中文字幕 | 91精品久久久久久久久久 | 91精品综合久久久久久五月天 | 日韩婷婷 | 久国产精品视频 | 亚洲一区二区三区久久久 | 一区二区免费 | 在线免费观看毛片 | 日日操综合| 精品视频网站 | 亚洲视频一区二区三区 | 三级日韩 | 久久精选视频 | 欧美性网 | 日日骚av | 欧美与黑人午夜性猛交久久久 | 国产成人免费在线观看 | 久久成人一区 | 日本一区二区成人 | 久久国产精品免费一区二区三区 | 互换娇妻呻吟hd中文字幕 | 波多野结衣一二三四区 | 亚洲欧美国产毛片在线 | 欧美日韩高清在线一区 | 免费观看一级特黄欧美大片 | 国产精品国产 | 欧美日韩一区二区中文字幕 | 日韩在线视频一区 | 成人精品久久久 | av中文网| 日精品| 日韩一区二区三区在线 | 亚洲视频在线看 | 免费av电影网站 | 精品久久久久久久久久久下田 | 国产精品久久久久久久美男 | 久久久艹 | 成版人性视频 | 欧美日韩一区在线观看 | 久草日本| 亚洲一区二区三区在线视频 | 国产一区二区三区网站 | 精品欧美一区二区在线观看 | 午夜精品久久久久久 | 国产免费视频在线 | 老司机深夜福利视频 | 蜜月久久99静品久久久久久 | 超碰8| www.99久| 成人欧美一区二区三区在线播放 | 中文字幕第二十六页页 | 波多野结衣一区二 | 欧美日韩系列 | 久久久精品免费观看 | 中文字幕在线观看一区二区三区 | 久久伊人操 | 欧美久久久久久 | theporn国产在线精品 | 亚洲每日更新 | 婷婷av网站 | 国产精品视屏 | 成人爽a毛片一区二区免费 亚洲自拍偷拍精品 | 免费观看成人毛片 | 欧美xxxx性 | 高清一区二区三区 | 国产 日韩 欧美 中文 在线播放 | 玖玖在线免费视频 | 国产探花在线精品一区二区 | 五月婷综合 | 精品国产一区二区三区性色av | 成人在线观 | 国产资源视频在线观看 | 亚洲一区二区在线 | 夫妻午夜影院 | 青青草久草在线 | 在线久草| 国产一区二区视频在线观看 | 成人免费黄色毛片 | 在线观看毛片视频 | 中文字幕日韩一区二区不卡 | 亚洲一区二区视频 | 亚洲精品久久久久久下一站 | 国产中文字幕在线观看 | 国产精品视频一区二区三区不卡 | 在线成人av | 亚洲成av人片一区二区梦乃 | 黄色免费观看 | 自拍偷拍亚洲欧美 | 久久久久久久国产精品 | 嫩草视频在线观看免费 |