遇到一个奇怪的问题,DB运行的机器时间用date命令查看是18:00。
用postgresql的客户端连接工具运行sql: “select now()”,得到的时间也是18:00。
但用Hibernate执行 “select now()”,得到的时间却是19:00。
最后发现,hibernate运行的机器和postgresql运行机器不在同一个时区。
[root@ci12 ~]# date -R
Fri, 04 Nov 2011 18:06:30 +0800
[root@ydtest timeset]# date -R
Fri, 04 Nov 2011 19:06:30 +0900
一个时区是+0800,一个是+0900。
将2台机器的时区设置相同后,问题就解决了。
方法如下:
ln -sf /usr/share/zoneinfo/Asia/Chongqing /etc/localtime