设置一下@@global.time_zone试试 set @@global.time_zone = '+08:00' 然后insert,应该能设置正确的值。 你这种情况,在启动mysql之前,应该设置global.time_zonemysqld_safe --timezone='+08:00'
检查你的MYSQL时区设置。mysql> show variables like '%time_zone'; +------------------+---------------------+ | Variable_name | Value | +------------------+---------------------+ | system_time_zone | China Standard Time | | time_zone | SYSTEM | +------------------+---------------------+ 2 rows in set (0.00 sec)mysql>
每个记录的这个字段就是默认的CREATE TABLE IF NOT EXISTS `order_main` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
`orderid` varchar(10) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
`m_id` int(10) unsigned NOT NULL,
`orderStatus` tinyint(2) NOT NULL,
`logtimie` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=24 ;
now()
2010-04-23 01:51:41
set @@global.time_zone = '+08:00'
然后insert,应该能设置正确的值。
你这种情况,在启动mysql之前,应该设置global.time_zonemysqld_safe --timezone='+08:00'
+------------------+---------------------+
| Variable_name | Value |
+------------------+---------------------+
| system_time_zone | China Standard Time |
| time_zone | SYSTEM |
+------------------+---------------------+
2 rows in set (0.00 sec)mysql>
要么调整OS的时间,要么用这个函数UTC_TIMESTAMP()