如何检查Oracle数据库实例的兼容和优化程序版本。我想知道是否有任何特定的命令来检查SqlPlus上面的两个版本。对于兼容版本,我知道以下命令可以完成这项工作:
select * from database_compatible_level;
我想要类似的命令,它会告诉我优化器版本。请帮忙。
答案 0 :(得分:0)
以sysdba身份运行以下命令,以了解为这些参数设置的当前值。
SQL>conn sys as sysdba
SQL>show parameter OPTIMIZER_FEATURES_ENABLE;
SQL>show parameter COMPATIBLE;
答案 1 :(得分:0)
任何数据库用户都可以使用 EXPLAIN PLAN
命令检查 OPTIMIZER_FEATURES_ENABLE 设置:
SQL> explain plan for select * from dual;
Explained.
SQL> select trim(plan_table_output) optimizer_features_enable
2 from table(dbms_xplan.display(format => 'advanced'))
3 where plan_table_output like '%OPTIMIZER_FEATURES_ENABLE%';
OPTIMIZER_FEATURES_ENABLE
--------------------------------------------------------------------------------
OPTIMIZER_FEATURES_ENABLE('19.1.0')
SQL>
查看大多数数据库参数需要 SELECT_CATALOG_ROLE
或 SELECT ANY DICTIONARY
,但幸运的是该参数在解释计划的 Outline 部分中公开。解释计划中的值在技术上仅针对语句,但只要您不更改会话或语句级别的参数,上述查询的值将继承自系统参数。