[20200819]cofep.sql指令碼對比版本引數變化.txt
[20200819]cofep.sql指令碼對比版本引數變化.txt
--//Tanel Poder大師提供一個指令碼對比版本Optimizer Features引數變化.這樣比較好了解oracle升級後一些引數做了那些改進.
--//指令碼如下:
-- Compare Optimizer Features Enable Parameter values
-- By Tanel Poder ( )
-- Requires opt_param_matrix table to be created (using tools/optimizer/optimizer_features_matrix.sql)
-- Requires Oracle 11g due PIVOT clause (but you can rewrite this SQL in earlier versions)`
col pd_name head NAME for a50
col pd_value head VALUE for a30
column pd_descr heading DESCRIPTION format a70 word_wrap
prompt Compare Optimizer_Features_Enable Parameter differences
prompt for values &1 and &2
select m.*, n.ksppdesc pd_descr
from (
select *
from opt_param_matrix
pivot(
max(substr(value,1,20))
for opt_features_enabled in ('&1','&2')
)
where "'&1'" != "'&2'"
) m
, sys.x$ksppi n
, sys.x$ksppcv c
where
n.indx=c.indx
and n.ksppinm = m.parameter
/
--//Compare Optimizer Features Enable Parameter values =>cofep , 不好記憶^_^.
--//在測試中,遇到一點點小問題,做一個記錄,也許以後工作需要.
SCOTT@test01p> @ ver1
PORT_STRING VERSION BANNER CON_ID
------------------------------ -------------- -------------------------------------------------------------------------------- ----------
IBMPC/WIN_NT64-9.1.0 12.2.0.1.0 Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production 0
SYS@test> @tpt/cofep 12.2.0.1 10.2.0.4
Compare Optimizer_Features_Enable Parameter differences
for values 12.2.0.1 and 10.2.0.4
old 7: for opt_features_enabled in ('&1','&2')
new 7: for opt_features_enabled in ('12.2.0.1','10.2.0.4')
old 9: where "'&1'" != "'&2'"
new 9: where "'12.2.0.1'" != "'10.2.0.4'"
from opt_param_matrix
*
ERROR at line 4:
ORA-00942: table or view does not exist
--//仔細看原指令碼,可以發現opt_param_matrix需要自己手工建立.
SYS@test> @ tpt/tools/optimizer/optimizer_features_matrix.sql
display a matrix of optimizer parameters which change when changing optimizer_features_enabled...
Table created.
DECLARE
*
ERROR at line 1:
ORA-12899: value too large for column "SYS"."OPT_PARAM_MATRIX"."PARAMETER" (actual: 56, maximum: 55)
ORA-06512: at line 6
ORA-06512: at line 6
To test, run: @cofep.sql 10.2.0.1 10.2.0.4
--//修改指令碼optimizer_features_matrix.sql:
CREATE TABLE opt_param_matrix(
opt_features_enabled VARCHAR2(100) NOT NULL
, parameter VARCHAR2(56) NOT NULL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
, value VARCHAR2(1000)
);
SYS@test> drop table opt_param_matrix purge ;
Table dropped.
SYS@test> @ tpt/tools/optimizer/optimizer_features_matrix.sql
display a matrix of optimizer parameters which change when changing optimizer_features_enabled...
Table created.
PL/SQL procedure successfully completed.
To test, run: @cofep.sql 10.2.0.1 10.2.0.4
--//測試:
SYS@test> @ tpt/cofep 11.2.0.4 12.2.0.1
Compare Optimizer_Features_Enable Parameter differences
for values 11.2.0.4 and 12.2.0.1
old 7: for opt_features_enabled in ('&1','&2')
new 7: for opt_features_enabled in ('11.2.0.4','12.2.0.1')
old 9: where "'&1'" != "'&2'"
new 9: where "'11.2.0.4'" != "'12.2.0.1'"
PARAMETER '11.2.0.4' '12.2.0.1' DESCRIPTION
---------------------------------------- ----------------- ------------ ---------------------------------------------------------------------
_optimizer_partial_join_eval FALSE TRUE partial join evaluation parameter
_optimizer_multi_table_outerjoin FALSE TRUE allows multiple tables on the left of outerjoin
_px_partial_rollup_pushdown OFF ADAPTIVE perform partial rollup pushdown for parallel execution
_optimizer_reduce_groupby_key FALSE TRUE group-by key reduction
_optimizer_cluster_by_rowid_batched FALSE TRUE enable/disable the cluster by rowid batching feature
_optimizer_inmemory_cluster_aware_dop FALSE TRUE Affinitize DOP for inmemory objects
_query_rewrite_use_on_query_computation FALSE TRUE query rewrite use on query computation
_pwise_distinct_enabled FALSE TRUE enable partition wise distinct
_vector_encoding_mode OFF MANUAL enable vector encoding(OFF/MANUAL/AUTO)
_px_concurrent FALSE TRUE enables pq with concurrent execution of serial inputs
_px_filter_skew_handling FALSE TRUE enable correlated filter parallelization to handle skew
_optimizer_ads_use_spd_cache FALSE TRUE use Sql Plan Directives for caching ADS queries
_px_wif_extend_distribution_keys FALSE TRUE extend TQ data redistribution keys for window functions
_optimizer_use_gtt_session_stats FALSE TRUE use GTT session private statistics
_optimizer_nlj_hj_adaptive_join FALSE TRUE allow adaptive NL Hash joins
_optimizer_ads_use_partial_results FALSE TRUE Use partial results of ADS queries
_sqlexec_hash_based_distagg_ssf_enabled FALSE TRUE enable hash based distinct aggregation for single set gby queries
_recursive_with_parallel FALSE TRUE Enable/disable parallelization of Recursive With
_recursive_with_branch_iterations 1 7 Expected number of iterations of the recurive branch of RW/CBY
_xt_sampling_scan_granules OFF ON Granule Sampling for Block Sampling of External Tables
_optimizer_band_join_aware FALSE TRUE enable the detection of band join by the optimizer
_optimizer_inmemory_use_stored_stats NEVER AUTO optimizer use stored statistics for in-memory tables
_key_vector_create_pushdown_threshold 0 20000 minimum grouping keys for key vector create pushdown
_optimizer_unnest_scalar_sq FALSE TRUE enables unnesting of of scalar subquery
_ds_xt_split_count 0 1 Dynamic Sampling Service: split count for external tables
_ds_sampling_method NO_QUALITY_METRIC PROGRESSIVE Dynamic sampling method used
_optimizer_ansi_join_lateral_enhance FALSE TRUE optimization of left/full ansi-joins and lateral views
_optimizer_proc_rate_level OFF BASIC control the level of processing rates
_adaptive_window_consolidator_enabled FALSE TRUE enable/disable adaptive window consolidator PX plan
_optimizer_cluster_by_rowid FALSE TRUE enable/disable the cluster by rowid feature
_distinct_agg_optimization_gsets OFF CHOOSE Use Distinct Aggregate Optimization for Grouping Sets
_optimizer_inmemory_autodop FALSE TRUE optimizer autoDOP costing for in-memory
_optimizer_inmemory_access_path FALSE TRUE optimizer access path costing for in-memory
_px_external_table_default_stats FALSE TRUE the external table default stats collection enable/disable
_optimizer_inmemory_minmax_pruning FALSE TRUE controls use of min/max pruning for costing in-memory tables
_mv_access_compute_fresh_data OFF ON mv access compute fresh data
_optimizer_multicol_join_elimination FALSE TRUE eliminate multi-column key based joins
_px_dist_agg_partial_rollup_pushdown OFF ADAPTIVE perform distinct agg partial rollup pushdown for px execution
_optimizer_vector_transformation FALSE TRUE perform vector transform
_optimizer_key_vector_pruning_enabled FALSE TRUE enables or disables key vector partition pruning
_bloom_filter_ratio 30 35 bloom filter filtering ratio
_optimizer_control_shard_qry_processing 65535 65534 control shard query processing
optimizer_features_enable 11.2.0.4 12.2.0.1 optimizer plan compatibility parameter
_px_parallelize_expression FALSE TRUE enables or disables expression evaluation parallelization
_optimizer_gather_stats_on_load FALSE TRUE enable/disable online statistics gathering
_optimizer_null_accepting_semijoin FALSE TRUE enables null-accepting semijoin
_px_replication_enabled FALSE TRUE enables or disables replication of small table scans
_px_wif_dfo_declumping OFF CHOOSE NDV-aware DFO clumping of multiple window sorts
_px_single_server_enabled FALSE TRUE allow single-slave dfo in parallel query
_optimizer_cluster_by_rowid_control 3 129 internal control for cluster by rowid feature mode
_optimizer_cbqt_or_expansion OFF ON enables cost based OR expansion
_optimizer_inmemory_bloom_filter FALSE TRUE controls serial bloom filter for in-memory tables
_optimizer_union_all_gsets FALSE TRUE Use Union All Optimization for Grouping Sets
_optimizer_enhanced_join_elimination FALSE TRUE Enhanced(12.2) join elimination
_optimizer_interleave_or_expansion FALSE TRUE interleave OR Expansion during CBQT
_optimizer_undo_cost_change 11.2.0.4 12.2.0.1 optimizer undo cost change
_ds_enable_view_sampling FALSE TRUE Use sampling for views in Dynamic Sampling
_optimizer_ansi_rearchitecture FALSE TRUE re-architecture of ANSI left, right, and full outer joins
_optimizer_cube_join_enabled FALSE TRUE enable cube join
_px_join_skew_handling FALSE TRUE enables skew handling for parallel joins
_px_adaptive_dist_method OFF CHOOSE determines the behavior of adaptive distribution methods
_optimizer_strans_adaptive_pruning FALSE TRUE allow adaptive pruning of star transformation bitmap trees
_optimizer_aggr_groupby_elim FALSE TRUE group-by and aggregation elimination
_px_groupby_pushdown CHOOSE FORCE perform group-by pushdown for parallel query
_px_scalable_invdist_mcol FALSE TRUE enable/disable px plan for percentile functions on multiple columns
_optimizer_eliminate_subquery FALSE TRUE consider elimination of subquery optimization
_gby_vector_aggregation_enabled FALSE TRUE enable group-by and aggregation using vector scheme
_optimizer_hybrid_fpwj_enabled FALSE TRUE enable hybrid full partition-wise join when TRUE
_px_object_sampling_enabled FALSE TRUE use base object sampling when possible for range distribution
_px_filter_parallelized FALSE TRUE enables or disables correlated filter parallelization
_optimizer_batch_table_access_by_rowid FALSE TRUE enable table access by ROWID IO batching
_px_cpu_autodop_enabled FALSE TRUE enables or disables auto dop cpu computation
_optimizer_inmemory_table_expansion FALSE TRUE optimizer in-memory awareness for table expansion
_optimizer_inmemory_gen_pushable_preds FALSE TRUE optimizer generate pushable predicates for in-memory
_optimizer_enable_plsql_stats FALSE TRUE Use statistics of plsql functions
_optimizer_use_table_scanrate OFF HADOOP_ONLY Use Table Specific Scan Rate
_optimizer_use_xt_rowid FALSE TRUE Use external table rowid
_optimizer_vector_base_dim_fact_factor 0 200 cost based vector transform base dimension to base fact ratio
78 rows selected.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2715001/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Jmeter的指令碼引數化JMeter指令碼
- [20180529]模擬會話引數變化.txt會話
- RestCloud ETL解決shell指令碼引數化RESTCloud指令碼
- Java對比有引數和無引數Java
- [20210112]完善查詢繫結變數指令碼bind_cap.txt變數指令碼
- beego 模板中對變數的對比Go變數
- (Jmeter新玩法)Python 調 Jmeter執行引數化jmx指令碼JMeterPython指令碼
- Flyway版本化管理資料庫指令碼資料庫指令碼
- bash shell指令碼接受多個引數指令碼
- 常用指令碼:獲取隱含引數指令碼
- 灰度變換函式:對數及對比度拉伸變換函式
- [20190930]oracle raw型別轉化number指令碼.txtOracle型別指令碼
- go 呼叫 shell 指令碼 如何傳遞引數Go指令碼
- shell的引數和指令碼流程改進指令碼
- [20210506]完善tix指令碼.txt指令碼
- [20201202]完善sosi指令碼.txt指令碼
- [20190930]oracle number型別儲存轉化指令碼.txtOracle型別指令碼
- [20191003]oracle number型別儲存轉化指令碼.txtOracle型別指令碼
- [20191013]oracle number型別儲存轉化指令碼.txtOracle型別指令碼
- 2.7.6 改變初始化引數值
- shell (3)指令碼引數傳遞與數學運算指令碼
- [20180413]bash 位置引數.txt
- shell指令碼中main函式中$#獲取不到指令碼傳入引數個數淺析指令碼AI函式
- shell指令碼中的變數及應用指令碼變數
- mysql匯入匯出指令碼的區別對比MySql指令碼
- [20210623]完善清除aud指令碼.txt指令碼
- JDK 版本變化JDK
- 形式引數和返回值型別的對比型別
- 【ERP】Odoo 版本功能對比Odoo
- 表結構對比版本
- Shell 中 $ 關於指令碼引數的幾種用法指令碼
- samtools flagstat引數對比對的bam檔案進行統計
- [20200620]expdp impdp exclude引數.txt
- vue17自定義指令(有引數,無引數)Vue
- Bash變數和引數變數
- python變數和引數Python變數
- 【pytest】使用parametrize將引數化變數傳遞到fixture變數
- [20231117]完善ashtt.sql指令碼.txtSQL指令碼