记:sysdate的sqlplus与plsql查询不一致故障一例
1、故障现象:
通过plsql查询sysdate时间与sqlplus查询的时间不一致:
plsql查询时间:
sqlplus查询时间:
2、分析故障:
2.1、对比节点间的plsql查询结果
可以发现正常节点的systimestamp时区是+8:00,故障节点的systimestamp时区为-04:00。
这里可以得出结论是时区的问题了
2.2、sqlplus查询systimestamp
由于sqlplus查出的systimestamp时区也是+8:00,所以进一步可以判断是crs和监听的时区问题。
2.3、查看操作系统crs和监听时区
查看crs应用的时区:TZ=US/Eastern
查看监听时区:
这里可以看到,监听和crs确实是时区应用错误了。或者用命令查看:ps eauwww <pid>
3、故障恢复:
3.1、修改crs时区:
TZ=Asia/Shanghai
3.2、重启crs
crsctl stop crs
crsctl start crs
4、验证结果
故障恢复。