Case
2005-12-12
Oracle Diagnostics:Why sysdate is fixed?
今天一个朋友在MSN上问到一个问题:为什么我的SYSDATE不变了?
他查询SYSDATE的值一直停留在2005-03-01 11:41:15。感觉很奇怪。
忍不住指导他研究一下,先是从系统级诊断,发现没有问题。
再从数据库角度来诊断,发现:
select current_date from dual; 的输出是正确的,而
select sysdate from dual; 却是不正确的。
猜测是某个参数导致了系统日期被固化,让他传来alert文件,果然发现了一个此前未注意到的参数: FIXED_DATE,
core_dump_dest = /u01/app/oracle/admin/unicode/cdump |
文档上的解释为:
FIXED_DATE
|
Parameter type |
String |
|
Syntax |
|
|
Default value |
There is no default value. |
|
Parameter class |
Dynamic: |
FIXED_DATE enables you to set a constant date that SYSDATE will always return instead of the current date. This parameter is useful primarily for testing. The value can be in the format shown above or in the default Oracle date format, without a time.
找到了这个参数也就找到了答案!
历史上的今天
- 2016-12-12 2016中国软件大会:面向开发和DBA的Oracle 12.2新特性
- 2016-12-12 Oracle 数据库 12.2新特性手册-Core Improvements内核卷
- 2016-12-12 Oracle 12.2 新特性:Lockdown Profile 的多租户权限控制
- 2012-12-12 Oracle云数据库初体验 之二 - Application Express
- 2008-12-12 我家的小帅哥 - 爱夸张的盖小咪
- 2006-12-12 使用Perl连接Mysql数据库
- 2006-12-12 eygle.com完成建站以来最大的一次迁移
- 2004-12-12 天下无贼-那一滴金砂的缘起缘落
这个比较有趣,也是第一次知道还有这个参数,好玩,哈哈,应该用sql_trace跟踪一下,看看设置参数前后,oracle做了什么。我懒了,eygle来跟踪一下吧。
这个跟踪不到的,是个内部操作!