mediawiki导致的postgresql取当前时间为utc的问题

前面曾经遇到过一个奇怪的问题,诡异的问题:时间不同步导致FTP用户地址丢失,最近又发现了奇怪的问题,仍然是ftp用户丢失,找了很长时间bug,最后发现是postgresql数据库的now()函数返回的时间有问题,返回的是UTC时间,而默认情况下应该返回UTC+8才对。
如:

metadata=> select now();
now
——————————
2012-06-21 09:51:41.98586+00
(1 row)

开始还以为是系统时区设置有问题,又重新设置了一遍:

sudo dpkg-reconfigure tzdata
sudo service postgresql restart

但问题依旧,无意中用另外一个帐号尝试了一下,发现结果不同:

metadata=# select now();
now
——————————-
2012-06-21 17:53:19.154867+08
(1 row)

终于确定是此帐号的问题,将其中的timezone变量给删除掉

ALTER ROLE usersss RESET TimeZone;

再重新试验看看,果然问题解决了:

metadata=> select now();
now
——————————-
2012-06-21 17:59:15.767081+08
(1 row)

回想一下,感觉这应该是mediawiki的问题,mediawiki导入后就有异常了,估计是mediawiki里同时加入了帐号相关的变量。


已发布

分类

, ,

来自

评论

《“mediawiki导致的postgresql取当前时间为utc的问题”》 有 1 条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注