日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Oracle优化07-分析及动态采样-DBMS_STATS 包

發(fā)布時(shí)間:2025/3/21 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle优化07-分析及动态采样-DBMS_STATS 包 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

思維導(dǎo)圖


07系列文章

Oracle優(yōu)化07-分析及動(dòng)態(tài)采樣-直方圖

Oracle優(yōu)化07-分析及動(dòng)態(tài)采樣-DBMS_STATS 包

Oracle優(yōu)化07-分析及動(dòng)態(tài)采樣-動(dòng)態(tài)采樣


DBMS_STATS包

DBMS_STAS 包不僅能夠?qū)Ρ磉M(jìn)行分析,它還可以對(duì)數(shù)據(jù)庫(kù)分析進(jìn)行管理。
按照功能可以分一下幾類(lèi):
( 1) 性能數(shù)據(jù)的收集
( 2) 性能數(shù)據(jù)的設(shè)置
( 3) 性能數(shù)據(jù)的刪除
( 4) 性能數(shù)據(jù)的備份和恢

11G 官方文檔:

http://docs.oracle.com/cd/E11882_01/appdev.112/e40758/d_stats.htm#ARPLS059


性能數(shù)據(jù)的收集包含這樣幾個(gè)存儲(chǔ)過(guò)程:

  • GATHER_DATABASE_STATS Procedures
  • GATHER_DICTIONARY_STATS Procedure
  • GATHER_FIXED_OBJECTS_STATS Procedure
  • GATHER_INDEX_STATS Procedure
  • GATHER_SCHEMA_STATS Procedures
  • GATHER_SYSTEM_STATS Procedures
  • GATHER_TABLE_STATS Procedure

從名字也可以看出各自的作用,這些存儲(chǔ)過(guò)程用來(lái)收集數(shù)據(jù)庫(kù)不同級(jí)別對(duì)象的性能數(shù)據(jù),包括:數(shù)據(jù)庫(kù),數(shù)據(jù)字典,表,索引,SCHEMA 的性能等。


GATHER_TABLE_STATS 收集信息功能

我們分析時(shí)最常用到的就是GATHER_TABLE_STATS 了。

在11gR2版本中dbms_stats包下的 gather_table_stats存過(guò)定義如下

我們可以在注釋中看到 This procedure gathers table and column (and index) statistics.

procedure gather_table_stats(ownname varchar2, tabname varchar2, partname varchar2 default null,estimate_percent number default DEFAULT_ESTIMATE_PERCENT,block_sample boolean default FALSE,method_opt varchar2 default DEFAULT_METHOD_OPT,degree number default to_degree_type(get_param('DEGREE')),granularity varchar2 default DEFAULT_GRANULARITY,cascade boolean default DEFAULT_CASCADE,stattab varchar2 default null, statid varchar2 default null,statown varchar2 default null,no_invalidate boolean defaultto_no_invalidate_type(get_param('NO_INVALIDATE')),stattype varchar2 default 'DATA',force boolean default FALSE,-- the context is intended for internal use only. context dbms_stats.CContext default null);-- -- This procedure gathers table and column (and index) statistics. -- It attempts to parallelize as much of the work as possible, but there -- are some restrictions as described in the individual parameters. -- This operation will not parallelize if the user does not have select -- privilege on the table being analyzed. -- -- Input arguments: -- ownname - schema of table to analyze -- tabname - name of table -- partname - name of partition -- estimate_percent - Percentage of rows to estimate (NULL means compute). -- The valid range is [0.000001,100]. Use the constant -- DBMS_STATS.AUTO_SAMPLE_SIZE to have Oracle determine the -- appropriate sample size for good statistics. This is the default. -- The default value can be changed using set_param procedure. -- block_sample - whether or not to use random block sampling instead of -- random row sampling. Random block sampling is more efficient, but -- if the data is not randomly distributed on disk then the sample values -- may be somewhat correlated. Only pertinent when doing an estimate -- statistics. -- method_opt - method options of the following format -- -- method_opt := FOR ALL [INDEXED | HIDDEN] COLUMNS [size_clause] -- FOR COLUMNS [size_clause] -- column|attribute [size_clause] -- [,column|attribute [size_clause] ... ] -- -- size_clause := SIZE [integer | auto | skewonly | repeat], -- where integer is between 1 and 254 -- -- column := column name | extension name | extension -- -- default is FOR ALL COLUMNS SIZE AUTO. -- The default value can be changed using set_param procedure. -- Optimizer related table statistics are always gathered. -- -- If an extension is provided, the procedure create the extension if it -- does not exist already. Please refer to create_extended_stats for -- description of extension. -- -- degree - degree of parallelism (NULL means use of table default value -- which was specified by DEGREE clause in CREATE/ALTER TABLE statement) -- Use the constant DBMS_STATS.DEFAULT_DEGREE for the default value -- based on the initialization parameters. -- default for degree is NULL. -- The default value can be changed using set_param procedure. -- granularity - the granularity of statistics to collect (only pertinent -- if the table is partitioned) -- 'AUTO' - the procedure determines what level of statistics to collect -- 'GLOBAL AND PARTITION' - gather global- and partition-level statistics -- 'APPROX_GLOBAL AND PARTITION' - This option is similar to -- 'GLOBAL AND PARTITION'. But the global statistics are aggregated -- from partition level statistics. It will aggregate all statistics except number of -- distinct values for columns and number of distinct keys of indexes. -- The existing histograms of the columns at the table level -- are also aggregated.The global statistics are gathered -- (i.e., going back to GLOBAL AND PARTITION behaviour) -- if partname argument is null. The aggregation will use only -- partitions with statistics, so to get accurate global statistics, -- user has to make sure to have statistics for all partitions. -- -- -- This option is useful when you collect statistics for a new partition added -- into a range partitioned table (for example, a table partitioned by month). -- The new data in the partition makes the global statistics stale (especially -- the min/max values of the partitioning column). This stale global statistics -- may cause suboptimal plans. In this scenario, users can collect statistics -- for the newly added partition with 'APPROX_GLOBAL AND PARTITION' -- option so that the global statistics will reflect the newly added range. -- This option will take less time than 'GLOBAL AND PARTITION' option since the -- global statistics are aggregated from underlying partition level statistics. -- Note that, if you are using APPROX_GLOBAL AND PARTITION, -- you still need to collect global statistics (with granularity = 'GLOBAL' option) -- when there is substantial amount of change at the table level. -- For example you added 10% more data to the table. This is needed to get the -- correct number of distinct values/keys statistic at table level. -- 'SUBPARTITION' - gather subpartition-level statistics -- 'PARTITION' - gather partition-level statistics -- 'GLOBAL' - gather global statistics -- 'ALL' - gather all (subpartition, partition, and global) statistics -- default for granularity is AUTO. -- The default value can be changed using set_param procedure. -- cascade - gather statistics on the indexes for this table. -- Use the constant DBMS_STATS.AUTO_CASCADE to have Oracle determine -- whether index stats to be collected or not. This is the default. -- The default value can be changed using set_param procedure. -- Using this option is equivalent to running the gather_index_stats -- procedure on each of the table's indexes. -- stattab - The user stat table identifier describing where to save -- the current statistics. -- statid - The (optional) identifier to associate with these statistics -- within stattab. -- statown - The schema containing stattab (if different then ownname) -- no_invalidate - Do not invalide the dependent cursors if set to TRUE. -- The procedure invalidates the dependent cursors immediately -- if set to FALSE. -- Use DBMS_STATS.AUTO_INVALIDATE to have oracle decide when to -- invalidate dependend cursors. This is the default. The default -- can be changed using set_param procedure. -- When the 'cascade' argument is specified, not pertinent with certain -- types of indexes described in the gather_index_stats section. -- force - gather statistics of table even if it is locked. -- context - internal use only. -- -- Exceptions: -- ORA-20000: Table does not exist or insufficient privileges -- ORA-20001: Bad input value -- ORA-20002: Bad user statistics table, may need to upgrade it -- ORA-20005: object statistics are locked -- OWNNAME: 要分析表的擁有者。 TABNAME: 要分析的表名。 PARTNAME: 分區(qū)的名字,只對(duì)分區(qū)表或分區(qū)索引有用。 ESTIMATE_PERCENT: 采樣行的百分比,取值范圍[0.000001,100],使用常DBMS_STATS.AUTO_SAMPLE_SIZE讓ORACLE決定適合的采樣大小, 這也是默認(rèn)值,可以使用DBMS_STATS.SET_PARAM進(jìn)行修改默認(rèn)值。NULL可以讓ORACLE采樣全部數(shù)據(jù) BLOCK_SAMPLE: 是否采用隨即塊采樣代替行隨即行采樣。 METHOD_OPT: 決定HISTOGRAMS信息是怎樣被統(tǒng)計(jì)的.METHOD_OPT的取值如下: FOR ALL COLUMNS:統(tǒng)計(jì)所有列的HISTOGRAMS. FOR ALL INDEXED COLUMNS:統(tǒng)計(jì)所有INDEXED列的HISTOGRAMS. FOR ALL HIDDEN COLUMNS:統(tǒng)計(jì)你看不到列的HISTOGRAMS FOR COLUMNS <LIST> SIZE <INTEGER> | REPEAT | AUTO | INTEGER指的直方圖的BUCKETS數(shù)量,取值范圍為[1,254]。 REPEAT上次統(tǒng)計(jì)過(guò)的HISTOGRAMS。 AUTO:ORACLE根據(jù)列數(shù)據(jù)的分布及相關(guān)列的訪問(wèn)量來(lái)決定收集直方圖的列。 SKEWONLY:ORACLE 根據(jù)列的數(shù)據(jù)分布來(lái)決定哪些列收集直方圖 。 DEGREE: 并行度 GRANULARITY: 收集統(tǒng)計(jì)信息的粒度。(只應(yīng)用于分區(qū)表),值包括: 'ALL':搜集(SUBPARTITION,PARTITION,AND GLOBAL)統(tǒng)計(jì)信息。 'AUTO':基于分區(qū)的類(lèi)型來(lái)決定粒度,默認(rèn)值。 'DEFAULT':收集GLOBAL和PARTITION LEVEL的統(tǒng)計(jì)信息,等同與'GLOBAL AND PARTITION'。 'GLOBAL':收集全局統(tǒng)計(jì)信息 'GLOBAL AND PARTITION':收集GLOBAL和PARTITION LEVEL統(tǒng)計(jì)信息。 'GPARTITION':收集PARTITION-LEVEL的統(tǒng)計(jì)信息。 'SUBPARTITION':收集SUBPARTITION-LEVEL統(tǒng)計(jì)信息 。 CASCADE: 收集索引的統(tǒng)計(jì)信息。是收集索引的信息.默認(rèn)為FALSE. STATTAB : 設(shè)置存儲(chǔ)統(tǒng)計(jì)信息的表 STATID : 表的ID STATOWN :表的OWNER NO_INVALIDATE: 若是設(shè)置為T(mén)RUE,則Oracle不會(huì)立馬使 dependent Cursors失效,若設(shè)置為FALSE,Oracle則會(huì)立馬使dependent Cursor失效. FORCE: 即使鎖住也要收集表的統(tǒng)計(jì)信息

gather_table_STATS使用

在 gather_table_stats 存儲(chǔ)過(guò)程的所有參數(shù)中,除了 ownname 和 tabname,其他的參數(shù)都有默認(rèn)值。

所以我們?cè)谡{(diào)用這個(gè)存儲(chǔ)過(guò)程時(shí), Oracle 會(huì)使用參數(shù)的默認(rèn)值對(duì)表進(jìn)行分析。

如:

SQL> exec dbms_stats.gather_table_STATS(user,'T');PL/SQL procedure successfully completed

oracel就會(huì)對(duì)當(dāng)前用戶下的T表按照所有參數(shù)的默認(rèn)值進(jìn)行分析,其中user是一個(gè)變量,用來(lái)返回當(dāng)前的用戶信息。

當(dāng)然你也可以指定用戶名,比如:

SQL> exec dbms_stats.gather_table_STATS('cc','xgj');PL/SQL procedure successfully completed

對(duì)cc用戶下的xgj表進(jìn)行分析。

查看gather_table_STATS參數(shù)當(dāng)前的默認(rèn)值

如果想查看當(dāng)前的默認(rèn)值,可以使用 dbms_stats.get_param 函數(shù)來(lái)獲取:

比如查看method_opt的默認(rèn)值:

SQL> select dbms_stats.get_param('method_opt') from dual;

參數(shù)說(shuō)明

參數(shù)的說(shuō)明:
estimate_percent 參數(shù)

這個(gè)參數(shù)是一個(gè)百分比值,它告訴分析包需要使用表中數(shù)據(jù)的多大比例來(lái)做分析。

理論上來(lái)講,采樣的數(shù)據(jù)越多,得到的信息就越接近于實(shí)際, CBO做出的執(zhí)行計(jì)劃就越優(yōu)化,但是,采樣越多,消耗的系統(tǒng)資源必然越多。 對(duì)系統(tǒng)的影響也越大。

所以對(duì)于這個(gè)值的設(shè)置,要根據(jù)業(yè)務(wù)情況來(lái)。

如果數(shù)據(jù)的直方圖分布比較均勻,就可以使用默認(rèn)值: AUTO_SAMPLE_SIZE,即讓 Oracle 自己來(lái)判斷采樣的比例。

有時(shí),特別是對(duì)于批量加載的表,我們可以預(yù)估表中的數(shù)據(jù)量,可以人工地設(shè)置一個(gè)合理的值。 一般,對(duì)于一個(gè)有 1000 萬(wàn)數(shù)據(jù)的表分區(qū),可以把這個(gè)參數(shù)設(shè)置為 0.000001.


Method_option 參數(shù)

這個(gè)參數(shù)用來(lái)定義直方圖分析的一些值。
FOR ALL [INDEXED | HIDDEN] COLUMNS [size_clause]
FOR COLUMNS [size clause] column|attribute [size_clause] [,column|attribute
[size_clause]…]
這里給出了 4 種指定哪些列進(jìn)行分析的方式:
( 1) 所有列: for all column
( 2) 索引列:只對(duì)有索引的列進(jìn)行分析, for all indexed columns
( 3) 影藏列:只對(duì)影藏的列進(jìn)行分析, for all hidden columns
( 4) 顯 示 指 定 列 : 顯 示 的 指 定 那 些 列 進(jìn) 行 分 析 , for columns columns_name
該參數(shù)默認(rèn)值: for all columns size auto.


degree 參數(shù)

用來(lái)指定分析時(shí)使用的并行度。 有以下這些設(shè)置:

(1) Null: 如果設(shè)置為 null, Oracle 將使用被分析表屬性的并行度,比如表在創(chuàng)建時(shí)指定的并行度,或者后者使用 alter table 重新設(shè)置的并行度。
(2) 一個(gè)數(shù)值: 可以顯示地指定分析時(shí)使用的并行度。
(3) Default_degree: 如果設(shè)置為 default, Oracle 將根據(jù)初始化參數(shù)中相關(guān)參數(shù)的設(shè)置來(lái)決定使用的并行度。

這個(gè)參數(shù)的默認(rèn)值是 Null.即通過(guò)表上的并行度屬性來(lái)決定分析使用的并行度。

當(dāng)需要分析的表或表分區(qū)非常大,并且系統(tǒng)資源比較充分的時(shí)候,就可以考慮使用并行的方式來(lái)做分析,這樣就會(huì)大大提高分析的速度。 相反,如果你的系統(tǒng)資源比較吃緊,那么啟用并行可能會(huì)適得其反。


no_invalidate

no_invalidate:缺省值是DBMS_STATS.AUTO_INVALIDATE.
如果想要dbms_stats分析立馬見(jiàn)效,需要使用no_invalidate=false option或者DBA自己手工invalidate游標(biāo)。


Granularity

分析的粒度,有以下幾個(gè)配置:
( 1) ALL : 將會(huì)對(duì)表的全局( global),分區(qū),子分區(qū)的數(shù)據(jù)都做分析
( 2) AUTO: Oracle 根據(jù)分區(qū)的類(lèi)型,自動(dòng)決定做哪一種粒度的分析。
( 3) GLOBAL:只做全局級(jí)別的分析。
( 4) GLOBAL AND PARTITION: 只對(duì)全局和分區(qū)級(jí)別做分析,對(duì)子分區(qū)不做分析,這是和 ALL 的一個(gè)區(qū)別。
( 5) PARTITION: 只在分區(qū)級(jí)別做分析。
( 6) SUBPARTITION: 只在子分區(qū)做分析。

在生產(chǎn)環(huán)境中,特別是 OLAP 或者數(shù)據(jù)倉(cāng)庫(kù)的環(huán)境中,這個(gè)參數(shù)的設(shè)置會(huì)直接影響到 CBO 的執(zhí)行計(jì)劃選擇。


在 OLAP 或者數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)中,經(jīng)常有這樣的事情,新創(chuàng)建一個(gè)分區(qū),將批量的數(shù)據(jù)(通常是很大的數(shù)據(jù))加載到分區(qū)中,對(duì)分區(qū)做分析,然后做報(bào)表或者數(shù)據(jù)挖掘。

在理想的情況下,對(duì)表的全局,分區(qū)都做分析,這樣才能得到最充
足的數(shù)據(jù),但是通常這樣的表都非常大,如果每增加一個(gè)分區(qū)都需要做一次全局分析,那么會(huì)消耗極大的系統(tǒng)資源。

但是如果只對(duì)新加入的分區(qū)進(jìn)行分區(qū)而不做全局分析, oracle 在全局范圍內(nèi)的信息就會(huì)不準(zhǔn)確。

該參數(shù)在默認(rèn)情況下, DBMS_STATS 包會(huì)對(duì)表級(jí)(全局),分區(qū)級(jí)(對(duì)應(yīng)參數(shù) partition)都會(huì)進(jìn)行分析。

如果把 cascade 設(shè)置為 true,相應(yīng)索引的全局和分區(qū)級(jí)別也都會(huì)被分析。

如果只對(duì)分區(qū)級(jí)進(jìn)行分析,而全局沒(méi)有分析,那么全局信息沒(méi)有更新,依然會(huì)導(dǎo)致 CBO 作出錯(cuò)誤的執(zhí)行計(jì)劃。

所以當(dāng)一些新的數(shù)據(jù)插入到表中時(shí),如果對(duì)這些新的數(shù)據(jù)進(jìn)行分析,是一個(gè)非常重要的問(wèn)題。

一般參考如下原則:

( 1) 看一下新插入的數(shù)據(jù)在全表中所占的比例,如果所占比例不是很大,那么可以考慮不做全局分析,否則就需要考慮,一句是業(yè)務(wù)的實(shí)際運(yùn)行情況。
( 2) 采樣比例。 如果載入的數(shù)據(jù)量非常大,比如上千萬(wàn)或者更大,就要把采樣比例壓縮的盡可能地小,但底線是不能影響 CBO做出正確的執(zhí)行計(jì)劃,采樣比例的上線是不能消耗太多的資源而影響到業(yè)務(wù)的正常運(yùn)行。
( 3) 新加載的數(shù)據(jù)應(yīng)該要做分區(qū)級(jí)的數(shù)據(jù)分析。 至于是否需要直方圖分析,以及設(shè)置多少個(gè) buckets( size 參數(shù)指定),需要 DBA依據(jù)數(shù)據(jù)的分布情況進(jìn)行考慮,關(guān)鍵是視數(shù)據(jù)的傾斜程度而定。


GATHER_SCHEMA_STATS

這個(gè)存儲(chǔ)過(guò)程用于對(duì)某個(gè)用戶下所有的對(duì)象進(jìn)行分析。如果你的數(shù)據(jù)用戶對(duì)象非常多,單獨(dú)對(duì)每個(gè)對(duì)象進(jìn)行分析設(shè)定會(huì)非常不方便,這個(gè)存儲(chǔ)過(guò)程就很方便。

它的好處在于如果需要分析的對(duì)象非常多,將可以大大降低 DBA 的工作量,不足之處是所有分析使用相同的分析策略,可能會(huì)導(dǎo)致分析不是最優(yōu)。 所以要根據(jù)實(shí)際情況來(lái)決定。


GATHER_INDEX_STATS

該 存 儲(chǔ) 過(guò) 程 用 于 對(duì) 索 引 的 分 析 , 如 果 我 們 在 使 用
DBMS_STATS.GATHER_TABLES_STATS 的分析時(shí)設(shè)置參數(shù) cascade=>true。

那么 Oracle 會(huì)同時(shí)執(zhí)行這個(gè)存儲(chǔ)過(guò)程來(lái)對(duì)索引進(jìn)行分析。


DBMS_STATS 包管理功能

獲取分析數(shù)據(jù)

GET_COLUMN_STATS Procedures
GET_INDEX_STATS Procedures
GET_SYSTEM_STATS Procedure
GET_TABLE_STATS Procedure

這四個(gè)存儲(chǔ)過(guò)程分別為用戶獲取字段,索引,表和系統(tǒng)的統(tǒng)計(jì)信息。 它的用法是首先定義要獲取性能指標(biāo)的變量,然后使用存儲(chǔ)過(guò)程將性能指標(biāo)的值賦給變量,最后將變量的值輸出。


設(shè)置分析數(shù)據(jù)

SET_COLUMN_STATS Procedures
SET_INDEX_STATS Procedures
SET_SYSTEM_STATS Procedure
SET_TABLE_STATS Procedure

這幾個(gè)存儲(chǔ)過(guò)程允許我們手工地為字段,索引,表和系統(tǒng)性能數(shù)據(jù)賦值。 它的一個(gè)用處是當(dāng)相應(yīng)的指標(biāo)不準(zhǔn)確導(dǎo)致執(zhí)行計(jì)劃失敗時(shí),可以使用這種方法手工地來(lái)為這些性能數(shù)據(jù)賦值。 在極端情況下,這也不失為一個(gè)解決問(wèn)題的方法。

SET_TABLE_STATS 實(shí)例演示:

SQL> select count(1) from t; COUNT(1) ---------- 33872SQL> exec dbms_stats.set_table_stats(user,'t',numrows => 100000);PL/SQL procedure successfully completed##執(zhí)行sql SQL>select * from t; .....省略輸出 SQL> select a.SQL_ID ,a.CHILD_NUMBER,a.SQL_TEXT from v$sql a where a.SQL_TEXT like 'select * from t ';SQL_ID CHILD_NUMBER SQL_TEXT ------------- ------------ -------------------------------------------------------------------------------- ckzaraqcmkr2f 0 select * from t SQL> select * from table(dbms_xplan.display_cursor('ckzaraqcmkr2f',0));PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- SQL_ID ckzaraqcmkr2f, child number 0 ------------------------------------- select * from t Plan hash value: 1601196873 -------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | -------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | | | 18 (100)| | | 1 | TABLE ACCESS FULL| T | 100K| 390K| 18 (6)| 00:00:01 | --------------------------------------------------------------------------13 rows selectedSQL>

可以看到,通過(guò)這種方式,我們輕松地改變了T表的統(tǒng)計(jì)信息,T表中本來(lái)有3W多條記錄,通過(guò)dbms_stats.set_table_stats將表的記錄更改為100000條。這樣,在執(zhí)行計(jì)劃中,CBO得到表上的記錄數(shù)為100000條,銅鼓哦這種方式可以非常容易的模擬出我們希望的各種性能數(shù)據(jù)


刪除分析數(shù)據(jù)

DELETE_COLUMN_STATS Procedure
DELETE_DATABASE_STATS Procedure
DELETE_DICTIONARY_STATS Procedure
DELETE_FIXED_OBJECTS_STATS Procedure
DELETE_INDEX_STATS Procedure
DELETE_SCHEMA_STATS Procedure
DELETE_SYSTEM_STATS Procedure
DELETE_TABLE_STATS Procedure

當(dāng)性能數(shù)據(jù)出現(xiàn)異常導(dǎo)致 CBO 判斷錯(cuò)誤時(shí),為了立刻修正這個(gè)錯(cuò)誤,刪除性能數(shù)據(jù)也是一種補(bǔ)救的方法,比如刪除表的數(shù)據(jù),讓 CBO 重新對(duì)表做動(dòng)態(tài)采樣分析,得到一個(gè)正確的結(jié)果。

它可以刪除字段,數(shù)據(jù)庫(kù),數(shù)據(jù)字典,基表,索引,表等級(jí)別的性能數(shù)據(jù)。另外這也為我們模擬各種測(cè)試環(huán)境提供了一種便捷的方式

SQL> exec dbms_stats.delete_table_stats(user,'t');PL/SQL procedure successfully completedSQL>


保存分析數(shù)據(jù)

CREATE_STAT_TABLE Procedure
DROP_STAT_TABLE Procedure

可以用這兩個(gè)存儲(chǔ)過(guò)程創(chuàng)建一個(gè)表,用于存放性能數(shù)據(jù),這樣有利于對(duì)性能數(shù)據(jù)的管理,也可以刪除這個(gè)表。


導(dǎo)入和導(dǎo)出分析數(shù)據(jù)

EXPORT_COLUMN_STATS Procedure
EXPORT_DATABASE_STATS Procedure
EXPORT_DICTIONARY_STATS Procedure
EXPORT_FIXED_OBJECTS_STATS Procedure
EXPORT_INDEX_STATS Procedure
EXPORT_SCHEMA_STATS Procedure
EXPORT_SYSTEM_STATS Procedure
EXPORT_TABLE_STATS Procedure

IMPORT_COLUMN_STATS Procedure
IMPORT_DATABASE_STATS Procedure
IMPORT_DICTIONARY_STATS Procedure
IMPORT_FIXED_OBJECTS_STATS Procedure
IMPORT_INDEX_STATS Procedure
IMPORT_SCHEMA_STATS Procedure
IMPORT_SYSTEM_STATS Procedure
IMPORT_TABLE_STATS Procedure

這些存儲(chǔ)過(guò)程可以將已經(jīng)有的性能指標(biāo)導(dǎo)入到用戶創(chuàng)建好的表中存放,需要時(shí),可以從表中倒回來(lái)。


鎖定分析數(shù)據(jù)

LOCK_SCHEMA_STATS Procedure
LOCK_TABLE_STATS Procedure

UNLOCK_SCHEMA_STATS Procedure
UNLOCK_TABLE_STATS Procedure

可能在某些時(shí)候,我們覺(jué)得當(dāng)前的統(tǒng)計(jì)信息非常好,執(zhí)行計(jì)劃很準(zhǔn)確,并且表中數(shù)據(jù)幾乎不變化,那么可以使用 LOCK_TABLE_STATS Procedure 來(lái)鎖定表的統(tǒng)計(jì)信息,不允許對(duì)表做分析或者設(shè)定分析數(shù)據(jù)。

當(dāng)表的分析數(shù)據(jù)被鎖定之后,相關(guān)的所有分析數(shù)據(jù),包括表級(jí),列級(jí),直方圖,索引的分析數(shù)據(jù)都將被鎖定,不允許被更新。


分析數(shù)據(jù)的恢復(fù)

RESET_PARAM_DEFAULTS Procedure
RESTORE_DICTIONARY_STATS Procedure
RESTORE_FIXED_OBJECTS_STATS Procedure
RESTORE_SCHEMA_STATS Procedure
RESTORE_SYSTEM_STATS Procedure
RESTORE_TABLE_STATS Procedure

比如我們重新分析了表,發(fā)現(xiàn)分析的數(shù)據(jù)導(dǎo)致了 CBO 選擇了錯(cuò)誤的執(zhí)行計(jì)劃,為了挽救這種局面,可以將統(tǒng)計(jì)信息恢復(fù)到從前的那個(gè)時(shí)間點(diǎn),也就是 CBO 執(zhí)行計(jì)劃正確的時(shí)間點(diǎn),先解決這個(gè)問(wèn)題,再來(lái)分析問(wèn)題的原因。

SQL> select dbms_stats.get_stats_history_availability from dual;GET_STATS_HISTORY_AVAILABILITY ------------------------------------------ 08-DEC-16 11.13.35.798721000 PM +08:00SQL>
單表分析:分區(qū)表:BEGINDBMS_STATS.GATHER_TABLE_STATS(ownname => 'cc',tabname => 't',estimate_percent => 100,no_invalidate => FALSE,--立馬生效degree => 8,granularity => 'ALL', --分區(qū)cascade => TRUE);END;/非分區(qū)表:BEGINDBMS_STATS.GATHER_TABLE_STATS(ownname => 'cc',tabname => 't',estimate_percent => 100,no_invalidate => FALSE,--立馬生效degree => 8,cascade => TRUE);END;

總結(jié)

以上是生活随笔為你收集整理的Oracle优化07-分析及动态采样-DBMS_STATS 包的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

美女网站在线观看 | 91在线资源 | 美女网站在线免费观看 | 69视频在线播放 | 国产xx在线 | 香蕉精品视频在线观看 | 91传媒免费观看 | 欧美另类xxxx | 99r在线| 91精品国产综合久久婷婷香蕉 | 亚洲免费公开视频 | 免费久久久久久 | 欧美日韩色婷婷 | 狠狠色狠狠色合久久伊人 | 欧美日韩久 | 人人爽人人爽人人爽学生一级 | 99免费在线观看视频 | 国产视频在线观看一区二区 | 日韩在线播放视频 | 五月婷婷一区 | 99久久精品久久久久久动态片 | 丰满少妇久久久 | 国产不卡免费 | 视频高清 | 欧美日韩国产成人 | 国产96在线视频 | 在线视频免费观看 | 四虎成人精品永久免费av九九 | 人人舔人人爽 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 久久爽久久爽久久av东京爽 | 亚洲精品白浆高清久久久久久 | 国产精品成人品 | 国产91精品高清一区二区三区 | 顶级欧美色妇4khd | 国产精品av免费在线观看 | 午夜色场| 日韩 在线a | 五月天狠狠操 | 全久久久久久久久久久电影 | 日韩中文字幕免费在线观看 | 国产精品高潮呻吟久久av无 | 欧美色噜噜 | 狠狠狠狠狠色综合 | 国产日本高清 | 欧美性色综合 | 99久久99视频| 欧美一级在线观看视频 | 国产v在线 | av韩国在线| 精品超碰 | 一级黄色免费网站 | 日韩高清不卡一区二区三区 | 99热这里只有精品久久 | 91精品亚洲影视在线观看 | 国精产品999国精产品岳 | 免费高清av在线看 | 国产一线二线三线在线观看 | 国产精品美女免费视频 | 国产精品久久久久久久久婷婷 | 免费在线国产视频 | 午夜黄色影院 | 精品久久久久久亚洲综合网 | 婷婷五月情 | 色狠狠一区二区 | 丝袜美女视频网站 | 色偷偷人人澡久久超碰69 | 亚洲人成人在线 | 99久久精品国产欧美主题曲 | 久久久久国产精品午夜一区 | 国产精品粉嫩 | 在线 国产 日韩 | 天天弄天天干 | 日本中文字幕观看 | 国产精品乱码久久 | 九九九电影免费看 | 狠狠干狠狠插 | 精品久久久久免费极品大片 | 日韩高清无线码2023 | 国产一级片观看 | 中文字幕丝袜美腿 | 欧美网站黄色 | 久久99国产精品久久99 | 国产精品成人国产乱一区 | 精品毛片在线 | www.国产在线观看 | 亚洲一区网站 | 日本字幕网 | bbw av| 久久a免费视频 | 国产专区在线 | 国内精品久久久久久久久久久 | 亚洲一级片在线观看 | 亚洲最大av在线播放 | 国产久视频 | 在线观看国产www | 国产色拍拍拍拍在线精品 | 99草视频在线观看 | 久草视频99| 久草国产在线 | 久久久久久久久久久久久久av | av理论电影| 91av视频网 | 久久久久久久久久久网站 | 1024手机基地在线观看 | 91成人精品一区在线播放69 | 91色国产在线 | 亚洲美女免费视频 | 国产精品久久一卡二卡 | 成人av在线资源 | 午夜av日韩 | 国产盗摄精品一区二区 | 亚洲精品免费观看视频 | 天天干天天操av | 91字幕| 国产a视频免费观看 | 国产亚洲综合性久久久影院 | 伊人久久av| 国产精品久一 | 国产精品久久久久999 | 色资源在线 | 亚洲视频免费视频 | 成年美女黄网站色大片免费看 | 午夜视频在线网站 | 91精品视频一区 | 国产成人a亚洲精品v | 国产成人av在线 | 国产手机在线播放 | 91探花在线 | 一区二区三区高清在线观看 | 超碰精品在线 | 精品a级片| 亚洲污视频| 69av视频在线| a在线观看免费视频 | 日韩中文字幕免费视频 | 99久久99 | av免费看电影 | 欧美精品三级在线观看 | 久草剧场 | 日韩精选在线观看 | 国产91对白在线播 | 狠狠色狠狠色合久久伊人 | 欧美热久久 | avv天堂| 国产偷v国产偷∨精品视频 在线草 | 97在线观看免费观看 | 91成年人在线观看 | 国产精品色视频 | 国产一级片久久 | 亚洲精品视频在线观看免费 | 久久久久久久久久久黄色 | 国产精品一区二区av麻豆 | 天天操天天干天天 | 日韩免费视频播放 | 亚洲伊人色 | 91精品对白一区国产伦 | 日韩精品电影在线播放 | a久久久久 | 久久人人爽人人 | 伊人导航| 久久久亚洲网站 | 丁香五月亚洲综合在线 | 欧美午夜寂寞影院 | 在线观看免费一级片 | 日韩影视在线观看 | 中文字幕一区av | 成人免费视频观看 | 免费看一及片 | 欧美91av| 91夜夜夜| 久久国产免 | 久久久久国产一区二区 | 日韩精品一区二区在线 | 黄色av成人在线观看 | 波多野结衣久久精品 | 日韩在线免费不卡 | 国产香蕉97碰碰久久人人 | 欧美精品乱码久久久久 | 激情 亚洲| 三级午夜片| 国产精品尤物视频 | 久精品视频在线观看 | 一区二区三区日韩在线观看 | 国产亚洲综合精品 | 最近中文字幕国语免费高清6 | 在线观看日本高清mv视频 | 国产二区视频在线观看 | 99精品视频在线观看视频 | 91精品人成在线观看 | 亚洲精品成人免费 | 国产成人在线播放 | 成人性生交大片免费看中文网站 | 日韩色在线 | 成人av一区二区在线观看 | 日本中文字幕观看 | 亚洲a成人v | 天天操夜夜干 | 四虎成人精品永久免费av九九 | 91桃色免费视频 | 久久久精品国产免费观看同学 | 天天操天天射天天添 | 丁香婷婷在线 | 在线免费观看欧美日韩 | 免费网站v | 中文字幕电影在线 | 九色91福利 | 视频一区二区免费 | 国产精品一区二区三区久久 | 免费美女久久99 | 韩日色视频 | 麻花豆传媒mv在线观看 | 9幺看片 | 精品国内自产拍在线观看视频 | 成人黄色在线观看视频 | 久久久精品成人 | 午夜影院在线观看18 | 国产91勾搭技师精品 | 久久精品美女视频网站 | 91免费高清视频 | 欧美性春潮 | 日韩乱色精品一区二区 | 免费黄色激情视频 | 蜜臀av性久久久久av蜜臀妖精 | 成人黄色影片在线 | 亚洲天堂色婷婷 | 国产精品国产三级国产 | 国产91精品看黄网站在线观看动漫 | 午夜精品久久久久久99热明星 | 99精品电影 | 国产美女免费 | 天天色综合1 | 亚洲 中文 在线 精品 | 久久久久久久久久久精 | 成人h在线观看 | 国产性天天综合网 | 亚洲成人蜜桃 | 99操视频 | 人人爽久久久噜噜噜电影 | 亚洲激情视频在线 | 91麻豆高清视频 | 国产视频亚洲 | 亚洲视频综合 | 黄色免费看片网站 | 中文理论片 | 超碰在线资源 | 久久九九影视 | 欧美日韩国语 | 日韩欧美在线一区二区 | 欧美日韩在线观看一区二区三区 | 国内精品视频在线播放 | 国产啊v在线观看 | 黄色三级视频片 | 成片免费观看视频999 | 久久久精选 | 久久国产亚洲精品 | 69绿帽绿奴3pvideos | 2019天天干夜夜操 | 精品视频网站 | 亚洲精品美女 | 美女福利视频一区二区 | 草莓视频在线观看免费观看 | 射射色| 国产麻豆视频网站 | 综合在线色| 日韩大陆欧美高清视频区 | 六月色播| 手机成人av在线 | 久草视频在线观 | 看av免费 | 久久久久久久亚洲精品 | 久久久免费精品视频 | 精品影院一区二区久久久 | 超碰com| av在线一 | a黄色大片| 午夜av网站| 在线观看一级 | av电影亚洲| 久久久99精品免费观看app | 91激情视频在线播放 | av片在线观看免费 | 日本免费一二三区 | 欧美精品久久久久久久免费 | 探花视频在线观看 | 日韩视频免费播放 | 国内久久精品 | 日韩在线电影观看 | 91影视成人 | 亚洲欧美视频一区二区三区 | 亚洲国产日韩精品 | 日韩在线观看一区二区三区 | 婷婷网五月天 | 成人网在线免费视频 | 亚洲欧洲视频 | av黄色免费看 | 午夜精品久久久久久99热明星 | 久久久久久久久亚洲精品 | 中文字幕丝袜一区二区 | 激情综合网五月 | 天天综合网天天综合色 | 免费在线一区二区 | 日本aaaa级毛片在线看 | 色综合天天狠天天透天天伊人 | 插婷婷 | 午夜精品久久久久久久99婷婷 | 麻豆视频一区 | 国产精品一区二区免费视频 | 超碰在线人 | 国产精品久久久网站 | 亚洲精品麻豆视频 | 91精品婷婷国产综合久久蝌蚪 | 免费观看日韩 | 日韩亚洲欧美中文字幕 | 欧美日韩免费一区二区 | 欧美福利片在线观看 | 国产成人精品久久二区二区 | 国产视频一区在线播放 | 欧美午夜精品久久久久久孕妇 | 亚洲热视频 | 国产精品成人免费精品自在线观看 | 国产精品中文字幕av | 国内久久久久 | 国产在线免费 | 在线观看精品黄av片免费 | 国产精品国产三级国产不产一地 | 久久视频免费在线 | 国产美女视频免费观看的网站 | 精品国产乱码久久久久久1区二区 | 黄色软件在线观看视频 | 免费在线观看一区二区三区 | 国产一区二区三区网站 | 成年人黄色大全 | 日韩高清免费观看 | 国产黄在线免费观看 | 欧美精品一区二区三区一线天视频 | 国产精品视屏 | 最新中文字幕在线观看视频 | 日本韩国在线不卡 | 2021国产精品 | 91精品啪在线观看国产 | 夜夜躁狠狠躁日日躁 | 国产精品久久久久aaaa九色 | 婷婷激情网站 | 国产精品久久久久久69 | 国产色a在线观看 | 国产破处在线播放 | 日韩精品视频免费在线观看 | 探花视频在线版播放免费观看 | 欧美成人在线免费 | 久久久久国产成人精品亚洲午夜 | .国产精品成人自产拍在线观看6 | 国模视频一区二区 | 国产成人在线看 | 黄色美女免费网站 | 国产资源网 | 四虎国产精品免费观看视频优播 | 99精品视频在线免费观看 | 欧美日韩在线播放 | 97看片吧 | 欧美日韩一区二区免费在线观看 | 最新av免费在线 | 97国产大学生情侣白嫩酒店 | 国产高清视频免费在线观看 | 三级黄免费看 | 精品一区在线 | 日韩欧美视频在线 | 91精品入口 | 国产日产精品一区二区三区四区 | 在线播放一区二区三区 | 国产精品久久久久久久毛片 | 国产精品一区二区吃奶在线观看 | 日日爱av| 免费观看成年人视频 | x99av成人免费 | 日韩成人精品一区二区三区 | 一区二区三区在线视频111 | 特黄色大片 | 五月天丁香 | 色多多视频在线观看 | 亚洲午夜久久久影院 | 午夜神马福利 | 婷婷性综合| 中文字幕av影院 | 日本最新一区二区三区 | 久久任你操 | 中文字幕在线免费观看 | 人人玩人人添人人澡超碰 | av电影在线观看完整版一区二区 | 97视频在线观看播放 | 探花视频在线观看免费 | 81国产精品久久久久久久久久 | 亚洲免费av电影 | 中文字幕av一区二区三区四区 | 中文字幕在线国产精品 | 狠狠躁夜夜躁人人爽超碰97香蕉 | www.xxx.性狂虐 | 国产无吗一区二区三区在线欢 | 久久精品一二区 | 久久久久久激情 | 超碰在线成人 | 日日干影院 | 久久视频精品 | 国产91精品一区二区麻豆网站 | 欧美一二区视频 | 97精品超碰一区二区三区 | 成人全视频免费观看在线看 | 欧美福利视频一区 | 在线电影 你懂得 | 成人免费xxx在线观看 | 国产午夜在线观看视频 | 麻豆视频www| 亚洲播放一区 | 亚洲最大av| 日韩av三区| 日韩视频一区二区三区 | 中文字幕在线视频免费播放 | 日本精品免费看 | 亚洲国产激情 | 三级av免费观看 | 国产精品美女久久久久久久 | 中文字幕在线播放av | 国产亚洲精品成人av久久影院 | 在线看岛国av | 91色国产在线 | 精品99免费 | 中文字幕在线观看第一区 | 中文字幕在线一区二区三区 | 国产一区高清在线观看 | 伊人手机在线 | 日韩精品在线视频免费观看 | 在线影视 一区 二区 三区 | 中文字幕高清av | 亚洲aⅴ一区二区三区 | 久久久精品国产免费观看一区二区 | 亚洲天堂精品 | av高清不卡 | 亚洲爱视频 | 国内一级片在线观看 | 欧美成人黄色片 | 久久线视频 | 国产精品久久久久婷婷二区次 | 成人黄色在线 | 精品国产一区二区三区久久久 | 91久久久久久久一区二区 | 久久久国际精品 | 国产精品嫩草影视久久久 | 久久一精品 | 久久久蜜桃 | 国产成人777777| 99精品视频免费全部在线 | 天天拍天天干 | 欧美日韩中文国产一区发布 | 天天综合天天做 | 欧美久草视频 | 久草免费在线视频 | 久久精品久久久久久久 | 91九色蝌蚪国产 | 免费网站看av片 | 91av蜜桃| 国产亚洲人 | 91麻豆精品国产91久久久使用方法 | 在线播放视频一区 | 日本免费久久高清视频 | 97在线播放 | 在线久久 | 成人av av在线 | 久久福利影视 | 91看成人 | 丝袜美腿在线视频 | 国产精品一区二区美女视频免费看 | 午夜精品视频免费在线观看 | 色av男人的天堂免费在线 | 91精品免费在线观看 | 国产日产亚洲精华av | 国产精品久久久久永久免费 | 国产精品成人在线观看 | 久久观看最新视频 | 午夜体验区 | 成人午夜在线电影 | 日韩特级片 | av 一区二区三区四区 | 国产又粗又硬又爽视频 | 中文字幕乱码电影 | 午夜色影院 | 天堂素人在线 | 成人香蕉视频 | 国产成人av电影 | 欧美污在线观看 | 2024av| 黄色免费网站下载 | 欧美老女人xx | 高清日韩一区二区 | 国产一级片播放 | 精品一区二区在线播放 | 国产一级免费观看视频 | 三级小视频在线观看 | 中文不卡视频 | 免费裸体视频网 | 中文字幕在线视频网站 | 999久久久欧美日韩黑人 | 天天看天天干 | 亚洲特级毛片 | 欧美老人xxxx18 | 免费国产黄线在线观看视频 | 精品uu| 中中文字幕av在线 | 黄色一级在线观看 | 九九热视频在线 | 国产青青青 | av电影亚洲 | 正在播放国产一区 | 成人黄色在线观看视频 | 97国产视频 | 免费看成人片 | 亚洲h视频在线 | 视频在线一区二区三区 | 午夜精品久久久久 | 亚洲国产三级在线 | 久久综合九色综合久久久精品综合 | 久久久五月婷婷 | 综合国产在线观看 | 日韩久久电影 | 视频在线日韩 | 99国产在线视频 | 亚洲精品一区二区三区在线观看 | 最新av电影网址 | 奇人奇案qvod | 精品久久久亚洲 | 久久精品免视看 | 色www精品视频在线观看 | 97电影手机| 999久久国产 | 中国一级片在线 | 婷婷激情小说网 | 成人精品影视 | 最新中文字幕在线观看视频 | 国产精品中文在线 | 国产精品久久久久久久久费观看 | 天天爱天天 | 国产精品国内免费一区二区三区 | 成人免费在线播放视频 | 欧美日韩在线观看一区二区 | 亚洲精品资源在线 | 黄色成人91 | 日韩在线播放欧美字幕 | 国产一区二区中文字幕 | 国产最顶级的黄色片在线免费观看 | 99婷婷狠狠成为人免费视频 | 狠狠操天天射 | 天天爱天天操天天爽 | 热久久精品在线 | 久久99亚洲网美利坚合众国 | 日本黄色免费大片 | aaa日本高清在线播放免费观看 | 五月天天色 | 深爱激情五月婷婷 | 国产精品videossex国产高清 | av网站手机在线观看 | 久久综合中文字幕 | 久久视频精品在线 | 在线播放亚洲激情 | 午夜91视频 | 国产亚洲精品久久久久秋 | 99久久精品日本一区二区免费 | 成人小视频在线播放 | 天天综合网久久综合网 | 99精品热视频只有精品10 | 91网在线看 | 香蕉视频在线免费看 | 欧美日韩xxx | www黄在线| 亚洲第一香蕉视频 | 欧美色插| 日韩精品免费在线播放 | 成人a在线观看高清电影 | 色片网站在线观看 | 国产成人久久精品77777 | 欧美日韩精品在线 | 国产日韩视频在线播放 | 国产精品18久久久久久不卡孕妇 | 日韩在线第一 | 亚州精品天堂中文字幕 | 中中文字幕av在线 | 8x成人免费视频 | 久久69精品久久久久久久电影好 | 国产污视频在线观看 | 五月天色综合 | 中文字幕资源在线观看 | 久久精品xxx | 美女视频黄的免费的 | 97电影院在线观看 | www.在线观看视频 | 成年人电影免费在线观看 | 福利av在线| 国产999| 在线观看成人毛片 | 国产色女 | 日韩一区二区三区高清在线观看 | 9草在线| 国产午夜一级毛片 | 综合天天色 | 国产99精品在线观看 | 我要色综合天天 | 99久久激情| 天天操导航 | 国产女人免费看a级丨片 | 日韩欧美在线一区二区 | 成人在线视频网 | 成人av网站在线观看 | 在线电影中文字幕 | 日韩三级精品 | 国产成人精品一区二区在线 | 亚洲精品黄网站 | 久草在线在线精品观看 | 黄色精品久久 | 午夜精品久久久久久久99 | 超碰97中文| 久久精品香蕉视频 | 国产精品99久久久 | 国产精品久一 | 在线精品一区二区 | 最新极品jizzhd欧美 | 在线免费观看成人 | 一区二区三区动漫 | 久久国语| 精品国产免费一区二区三区五区 | 久久综合五月婷婷 | 国产精品久久久99 | 在线播放视频一区 | 日韩免费不卡av | 伊人婷婷激情 | 成人国产电影在线观看 | 五月综合激情 | 一色屋精品视频在线观看 | 国产成人久久av免费高清密臂 | 欧美性爽爽 | 久久久久久久久久久影院 | 99 精品 在线 | 日韩精品一区二区三区在线视频 | 96视频在线 | 91麻豆网站 | 丁香影院在线 | 中文字幕成人av | 国产日韩精品久久 | 国产中文a | 成人h电影 | 久久免费视频8 | 91激情 | 午夜精品久久久久久久久久 | 狠狠操夜夜 | 在线色视频小说 | 精品一二三四在线 | 成人a在线观看高清电影 | 超碰久热| 黄a网站| 天天插日日操 | 人人干免费 | 日韩 精品 一区 国产 麻豆 | 亚洲一区免费在线 | 色在线亚洲| 日韩欧美视频在线播放 | 色夜影院 | 色婷婷av一区| 亚洲高清视频一区二区三区 | 国产又粗又长的视频 | 丁香综合网 | 狠狠干网站 | 久久精品久久精品久久精品 | 久久亚洲私人国产精品va | 成年在线观看 | 五月天中文在线 | 中文字幕免 | 日韩美一区二区三区 | 亚洲精品乱码久久久久久写真 | 中文字幕成人网 | 免费成人av在线 | 91最新视频在线观看 | 亚洲精品乱码久久久久久蜜桃91 | 亚洲国产精品99久久久久久久久 | 成人av在线看 | 亚洲视频专区在线 | 手机成人免费视频 | 成人久久免费 | 麻豆91精品91久久久 | 成人高清在线 | 亚洲综合激情 | 97香蕉视频 | 91在线看免费 | 国产在线观看你懂得 | 最新av免费在线 | 久久综合久久综合这里只有精品 | 久久综合成人 | 中国一区二区视频 | 天天撸夜夜操 | 成人av免费在线播放 | 夜夜爽www | 91精品国产自产在线观看 | 在线黄色av电影 | 亚洲九九九 | 国产视频精品久久 | 超碰在线公开 | www.av在线.com | 国产精品久久久久久久久久ktv | 日韩网站免费观看 | 成人免费观看在线视频 | 97av精品| 亚洲乱码精品久久久 | 成人在线视频免费观看 | 在线视频日韩一区 | 人人添人人澡人人澡人人人爽 | 精品一区av | 高潮毛片无遮挡高清免费 | 激情一区二区三区欧美 | 狠狠干天天射 | www欧美xxxx | 国产三级视频在线 | 91.dizhi永久地址最新 | 婷婷精品进入 | 麻豆视频国产在线观看 | 亚洲欧美日韩精品久久奇米一区 | 天天色天天射天天综合网 | 最近免费观看的电影完整版 | 五月开心激情 | 日韩最新中文字幕 | 视频1区2区 | 国产精品美女毛片真酒店 | 中文字幕专区高清在线观看 | av在线中文 | 久久久久久久久爱 | 国产在线探花 | 国产尤物视频在线 | 国产欧美日韩一区 | 伊人狠狠色丁香婷婷综合 | 精品久久久久久国产91 | 少妇精69xxtheporn | 亚洲精品tv久久久久久久久久 | aⅴ视频在线 | 婷婷在线精品视频 | 亚洲日本韩国一区二区 | 成人免费色 | 国产污视频在线观看 | 精品国产视频在线 | 国产午夜在线观看视频 | 亚洲区另类春色综合小说校园片 | 亚洲h在线播放在线观看h | 成人在线观看av | 国产精品免费视频观看 | 99在线观看| 三级毛片视频 | 99热超碰在线 | 久久国产视频网 | 国产午夜av | 成人va天堂| 天天干天天碰 | 国产精品福利小视频 | 成人免费xxxxxx视频 | 欧洲亚洲女同hd | 九九久久国产 | 日韩手机在线 | 国产在线播放不卡 | 日韩在线精品一区 | 国内精品久久久精品电影院 | 中文字幕av电影下载 | 国内精品视频一区二区三区八戒 | av在线激情 | 日韩视频免费 | 51久久成人国产精品麻豆 | 99久久99热这里只有精品 | 一级黄网 | 亚洲色图av| 深爱五月网 | 天天干天天综合 | 美女在线观看av | 欧美在线资源 | 中文字幕免费看 | 毛片1000部免费看 | 天天综合网 天天综合色 | 又黄又刺激视频 | 亚洲成人国产精品 | 久久第四色 | 成人黄色小视频 | 97av免费视频 | av在线免费在线观看 | 视频国产在线 | 午夜黄色一级片 | 国产精品亚州 | www成人精品 | 噜噜色官网 | 天天操天天色天天 | 亚洲精品久久久蜜臀下载官网 | 成人av网站在线播放 | 在线性视频日韩欧美 | 国产精品永久免费在线 | 成人av在线电影 | 中文字幕精| 欧美精品在线一区 | 国产在线观看中文字幕 | 亚洲免费在线观看视频 | 日韩网站在线播放 | 久久久久久蜜桃一区二区 | 国产精品毛片久久蜜 | 免费一级特黄毛大片 | 久久精品视频网址 | 色成人亚洲网 | 中文av免费| 天天天天天天操 | 在线视频中文字幕一区 | 91网在线观看 | 国产91九色蝌蚪 | 奇米导航| 亚洲欧洲中文日韩久久av乱码 | 丰满少妇在线观看网站 | 欧洲精品一区二区 | 色福利网站 | 人人干人人上 | 亚洲乱码中文字幕综合 | 一级免费片 | 国产精品午夜av | 一级黄毛片 | 久草视频首页 | 麻花豆传媒一二三产区 | 精品日韩在线 | 日韩免费在线 | 亚洲aⅴ一区二区三区 | 九色福利视频 | www.香蕉 | 欧美极品少妇xbxb性爽爽视频 | a电影在线观看 | 国产在线观看一 | 日日夜夜操操操操 | 四月婷婷在线观看 | 日p在线观看 | 国产精品一区二区在线观看 | 国产小视频国产精品 | 精品久久网站 | 中文永久字幕 | 欧美aaaxxxx做受视频 | 91大神视频网站 | 91精品网站在线观看 | 久久精品久久精品 | 人人擦 | 在线观看视频精品 | 日韩av片免费在线观看 | 久久国产成人午夜av影院宅 | 伊人五月婷 | 香蕉视频在线播放 | 国产亚洲婷婷 | 精品久久国产一区 | 国语精品免费视频 | 操操色 | 亚洲高清91 | 久久精品国产成人 | 99精品视频精品精品视频 | 色橹橹欧美在线观看视频高清 | 欧美精品一区在线 | 一本一本久久a久久精品综合小说 | 成人精品一区二区三区中文字幕 | 操操操人人 | 免费网站v | 波多野结衣电影一区二区 | 国产成人一区二区精品非洲 | 99久久日韩精品视频免费在线观看 | 欧美日韩中文国产一区发布 | 成人九九视频 | www..com黄色片 | 极品美女被弄高潮视频网站 | 黄色免费在线视频 | 93久久精品日日躁夜夜躁欧美 | 国产高清小视频 | 亚洲高清不卡av | 精品久久亚洲 | 91精品婷婷国产综合久久蝌蚪 | 午夜色站 | 日本韩国在线不卡 | 麻豆视频观看 | 日韩成人精品一区二区 | 欧美伦理一区二区三区 | 中文字幕视频免费观看 | 亚洲91视频 | 久99久在线| 国产免费观看高清完整版 | 久久99精品视频 | 亚洲国产精品电影 | 精品视频免费看 | 99在线观看视频网站 | 99免费在线视频观看 | 久久精彩免费视频 | 欧美一级免费片 | 久久久综合香蕉尹人综合网 | 亚洲一二三区精品 | 日本中文字幕在线一区 | 成人国产精品一区二区 | 午夜精品av在线 | 欧美精品资源 | 婷婷草| 成人动漫精品一区二区 | 久久草精品 | 日韩在线 一区二区 | 91av福利视频 | 97色婷婷成人综合在线观看 | 亚洲黄色在线免费观看 | 国产一区二三区好的 | 成 人 黄 色 免费播放 | 久久久国产影院 | 国产精品午夜久久 | 日韩av电影免费在线观看 | 日韩欧美第二页 | 美女露久久 | 在线观看视频一区二区三区 | 国产精品一区久久久久 | 成人免费视频观看 | 久久久在线免费观看 | 国产一级做a爱片久久毛片a | 国产精品久久麻豆 | 福利一区视频 | 91在线视频 | 国产精品久久久久久久久久东京 | 不卡的av在线 | 欧美韩国日本在线观看 | 射综合网| 天天操天天舔天天干 | 在线观看韩日电影免费 | 一级成人网| 9999精品免费视频 | 99精品福利视频 | 欧美日韩p片 | 又爽又黄又无遮挡网站动态图 | 人人爽人人爽人人爽学生一级 | 色精品视频 | 欧美在线视频精品 | 欧美一级日韩三级 | 黄色影院在线免费观看 | 亚洲乱码中文字幕综合 | 最新中文字幕视频 | 日韩在线视频观看免费 | 91tv国产成人福利 | 91最新网址在线观看 | 在线天堂中文在线资源网 | 中文字幕亚洲在线观看 | 美女天天操 | 超碰公开在线观看 | 99视频在线精品国自产拍免费观看 | 超碰99人人 | 色视频网页 | a在线视频v视频 | a v在线观看 | 成人h在线观看 | 99草在线视频 | 18国产精品白浆在线观看免费 | 亚洲第一色 | 在线网站黄 | 国产网红在线观看 | 久久久久黄色 | 四虎视频| 婷婷99| 深爱五月激情五月 | 欧美性生活免费看 | 夜夜躁狠狠躁日日躁视频黑人 | 999久久久| 日本午夜免费福利视频 | 久久综合之合合综合久久 | 天天色天天爱天天射综合 | 精品亚洲午夜久久久久91 | 深夜免费小视频 | 黄色av免费在线 | 高清av在线免费观看 | 国产h片在线观看 | 国产系列 在线观看 | 亚洲精品视频久久 | 久久久久免费看 | 欧美一级片在线观看视频 | 四虎影视欧美 | 国产黄色精品 | 色综合久久88色综合天天 | 国产一区二区在线播放 | 蜜臀av性久久久久av蜜臀妖精 | 久久综合综合久久综合 | 久草在线这里只有精品 | 久久精品导航 | 久久久影院一区二区三区 | 久久久亚洲麻豆日韩精品一区三区 | 国产成人精品一区二区三区免费 | 18网站在线观看 | 黄色一区三区 | www.色婷婷 | 亚洲精品久久久久999中文字幕 | 欧亚日韩精品一区二区在线 | 亚洲精品永久免费视频 | 色97在线| 成人一级电影在线观看 | 国产a网站| 日韩av播放在线 | 亚洲成人av在线播放 | 99精品一级欧美片免费播放 | 国产精品久久久久久久久久久久午夜 | 一区二区影院 | 99综合视频 |