How do I change MySQL timezone?

yipeiwu_com6年前Mysql基础


However, there are ways for you to get results that are in your preferred timezone. First determine how many hours your desired timezone is off from MST. For example, EST is +2 hours. PST is -1 hour.

Knowing the time offset, you can replace all your SQL statements of 


SELECT NOW();

with


SELECT DATE_ADD(NOW(), INTERVAL 2 HOUR);

which will give you an EST date result. For a result in PST, you would do:


SELECT DATE_SUB(NOW(), INTERVAL 1 HOUR);

If you are working with time in seconds instead of dates, then factor in the offset in seconds. Because there are 3600 seconds in an hour, and EST is 2 hours later than MST, the following converts timestamps from MST to EST:


SELECT unix_timestamp() + (3600 * 2);

SELECT FROM_UNIXTIME(UNIX_TIMESTAMP() + (3600 * 2));

See the MySQL Manual's Date and Time Functions for more information.

Depending on your application, you may also need to do one of the following (but not both):

1. Find every place in your code where a date or time is displayed to the browser and have a user defined function change it to add or subtract the appropriate number of hours before displaying it.

2. Find every place in your code where dates or times are input into your system and have a user defined function add or subtract the appropriate number of hours before storing it.

相关文章

PHP数据库操作之基于Mysqli的数据库操作类库

此类库简单、易用,便于你自己修改和对功能的改善,能解决大部分 PHP 项目中执行的 SQL 操作。 初步工作 首先,请大家下载这个类库 M.class.php 再下载一个 My...

PHP+MySQL高并发加锁事务处理问题解决方法

本文实例讲述了PHP+MySQL高并发加锁事务处理问题解决方法。分享给大家供大家参考,具体如下: 1、背景: 现在有这样的需求,插入数据时,判断test表有无username为‘mraz...

Linux下进行MYSQL编程时插入中文乱码的解决方案

插入中文是乱码,尝试了许多方法,比如我先把vim里设置为:set fileencoding=utf-8不起作用,后来想想也对,和vim没什么关系 然后就尝试c#代码,用Enco...

php实现可用于mysql,mssql,pg数据库操作类

本文实例讲述了可用mysql,mssql,pg三种数据库的数据库操作类,你只要作任何修改就可以方便的改变你数据库的类型.分享给大家供大家参考。具体分析如下: 函数清单,索引: Open:...

php上传文件并存储到mysql数据库的方法

本文实例讲述了php上传文件并存储到mysql数据库的方法。分享给大家供大家参考。具体分析如下: 下面的代码分别用于创建mysql表和上传文件保存到mysql数据库 创建mysql表:...