我最近将服务器时区更改为America/New_York
。
问题是当我运行我的php / mysql脚本以使用默认值CURRENT_TIMESTAMP
将数据添加到数据库中时,它会将日期添加为明天而不是今天。
然后当明天在我的服务器上午夜翻身时,日期会回到昨天?
答案 0 :(得分:2)
MySQL使用自己的时区设置,PHP使用自己的时区设置。
确保在配置PHP时区设置时,也要为MySQL设置相同的时区设置。
哦,顺便说一句,MySQL中的Timestamp数据类型不存储时区信息,如果在写入此字段时向MySQL提供时区,MySQL将根据其时区设置将其转换为UTC。
答案 1 :(得分:0)
SELECT @@global.time_zone, @@session.time_zone;
- 在mysql控制台中执行此操作
如果结果不正确 - 在配置文件中明确更改mysql服务器时区:
http://dev.mysql.com/doc/refman/5.1/en/time-zone-support.html