+ -
当前位置:首页 → 问答吧 → postgres select now();问题

postgres select now();问题

时间:2011-09-07

来源:互联网

环境: 
  windows server 2003 standard edition r2
  postgressql 8.4.0.1

问题: 
  当前系统是时间为 11:16pm(太平洋时区 -08)
  在postgres 中执行sql语句: “select now();”
  得到的结果竟然是:2011-09-07 00:17:22.953-07(估计结尾的-07应该表示的是时区),比本地时间多了正好一个小时
  postgres 是新装的,操作系统使用虚拟机(VMware Workstation)加载上去的
  怎么在postgres中设置时区我知道,现在的问题是为什么会出现这种现象? 按postgres的手册说 它优先检查是否手动设置了时间,其他检查是否有TZ系统变量,再次调用c库函数 localtime()。已经单独写过测试程序调用过localtime() 没有问题.

请坛子里边的 兄弟们帮忙提供一些线索

作者: guderianss   发布时间: 2011-09-07

set timezone=8;
SELECT NOW()

OR
修改postgresql.conf中的timezone

作者: wwwwb   发布时间: 2011-09-07

postgresql.conf:
timezone=8

重新启动POSTGRESQL

作者: wwwwb   发布时间: 2011-09-07

如果用户手动改动操作系统系统时区 还将出现上述问题
主要得问题是 为什么会出现这种情况
我测验过好几个其他操作系统虚拟镜像都没有问题 貌似只有这个有问题 但是这个镜像干净的 什么也没动过

作者: guderianss   发布时间: 2011-09-07