首页 > 数据库 > Oracle > [20250214]不要乱设置隐含参数.txt
[20250214]不要乱设置隐含参数.txt
--//今天看了一篇文章"永远不要轻易设置Oracle的隐藏参数,哪怕是DRM"
--//链接:https://www.cnblogs.com/jyzhao/p/18668366/yong-yuan-bu-yao-qing-yi-she-zhioracle-de-yin-cang
--//转抄其中内容:
因为关于Oracle的隐藏参数,江湖上一直都有两派对立的观点:
1.不要设置任何隐藏参数,只有当遇到特殊问题时在售后指导下临时使用,在问题解决后还要及时去掉
2.这一系列隐藏参数是众多客户踩出来的最佳实践,上线前必须要设置,才能避免重复踩坑,确保系统运行稳定
两派观点各有各的依据,不针对具体客户场景其实也很难讲谁对谁错。
原厂通常是偏向前者,第三方服务厂商则更多是后者,而且这个最佳实践的参数设置通常还被视作宝贵的技术财产。
但是最难的实际上是客户,客户往往会感到困惑。有时甚至被洗脑,认为某些隐藏参数的设置就是金科玉律。
--//作为用户,我讲一些自己的看法,实际上作为最末端的使用者,我个人很少改动这些参数,除非生产系统遇到不可绕开的bug或者问
--//题。前一段时间正好遇到一个问题,我将一个小表设置result_cache=force,当我查询时发现我的设置无效.
--//仔细检查发现result_cache_max_size=0,真心不知道安装者为什么这样操作。你可以设置小一点,没有必要关闭,除非就是对方在
--//实施一些项目,遇到怎么问题。当你提出疑问的时候,许多实施者视乎像公司机密一样不给用户做更详细的解析。
--//而且你可以感觉到实际上对方仅仅是机械的进行这样的操作,非常的刻板。
--//列出生产系统设置修改的隐含参数.
R:\>grep "^*._" aa.ora
*._ash_size=262144000
*._cleanup_rollback_entries=400
*._clusterwide_global_transactions=FALSE
*._cursor_obsolete_threshold=1024
*._datafile_write_errors_crash_instance=FALSE
*._disable_last_successful_login_time=TRUE
*._enable_spacebg=FALSE
~~~~~~~~~~~~~~~~~~~~~~~~
*._gc_policy_time=0
*._gc_undo_affinity=FALSE
*._log_segment_dump_parameter=FALSE
*._log_segment_dump_patch=FALSE
*._optimizer_adaptive_cursor_sharing=FALSE
*._optimizer_ads_use_result_cache=FALSE
*._optimizer_aggr_groupby_elim=FALSE
*._optimizer_cartesian_enabled=FALSE
*._optimizer_extended_cursor_sharing_rel='NONE'
*._optimizer_extended_cursor_sharing='NONE'
*._optimizer_gather_feedback=FALSE
*._optimizer_gather_stats_on_load=FALSE
*._optimizer_use_feedback=FALSE
*._partition_large_extents='FALSE'
*._PX_use_large_pool=TRUE
*._rollback_segment_count=500
*._serial_direct_read='NEVER'
*._undo_autotune=FALSE
*._use_adaptive_log_file_sync='FALSE'
*._use_single_log_writer='TRUE'
--//比如:
*._use_adaptive_log_file_sync='FALSE'
--//以前网上遇到许多该参数导致的问题,我想现在不设置基本不会出现问题,而且我们生产系统负载也不大。
--//如果有问题,oracle不会这样设计。
--//看看上面的设置,实际上我个人认为许多完全没有必要设置。比如
*._use_single_log_writer='TRUE'
--//在前2年我遇到类似问题,实际上我们当时的虚拟机器性能太差,我上网查一下看到许多人遇到类似问题,实际上现在的版本根本没
--//有这样必要设置。
--//再比如:
*._optimizer_use_feedback=FALSE
--//这个参数是喜忧参半的设置,我遇到设置为true带来的好处,也遇到奇怪的问题,运行正常,缓慢交错出现,然后形成一大堆子光标
--//的情况,我还遇到设置_optim_peek_user_binds=false的情况,完全没有必要。
--//检查正好发现文章提到的问题
*._gc_policy_time=0
*._gc_undo_affinity=FALSE
--//我大致浏览一下*._enable_spacebg=FALSE我设置的,还有_disable_last_successful_login_time设置有用外.其它我个人都不确定.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-3072923/ ,如需转载,请注明出处,否则将追究法律责任。