MYSQL时间和系统时间不对怎么设置

MYSQL时间和系统时间不对怎么设置,第1张

把php.ini中的date.timezone =修改成 date.timezone = PRC重启即可 还有我们一般使用“date -s”命令来修改系统时间。比如将系统时间设定成2005年7月26日的命令如下。 #date -s 03/28/2008 将系统时间设定成下午11点12分0秒的命令如下。 #date -s 11:24:00 注意,这里说的是系统时间,是linux由 *** 作系统维护的。 在系统启动时,Linux *** 作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性,Linux每隔一段时间会将系统时间写入CMOS。由于该同步是每隔一段时间(大约是11分钟)进行的,在我们执行date -s后,如果马上重起机器,修改时间就有可能没有被写入CMOS,这就是问题的原因。如果要确保修改生效可以执行如下命令。 #clock -w 这个命令强制把系统时间写入CMOS。

1。在mysql的命令模式下使用

mysql >select CURTIME()

mysql >select now()

看当前时间是否正确,可以看到mysql当前使用的是那一个时区的时间。

2。在mysql命令行中更改时区

mysql >SET time_zone = '+8:00' # 此为北京时,我们所在东8区

mysql>flush privileges # 立即生效

此时mysql时区已更改正确,与系统时区都使用为 Shanghai时间了。

#### 这种方法好像只能在终端上使用,退出终端后时间又会变成原来的,看来只能重启mysql了。

3。重启mysql也应没有问题,此时mysql会主动读取系统时间。

方法二:

如果mysql数据库可以重启,直接重启,mysql应可以立即主动读取系统时间,如果不行则更改mysql的配置文件(mysql.cnf)

在my.cnf的 [mysqld]区域中加上

default-time_zone = '+8:00' #此为北京时。

补充:

如果想临时解决时间显示问题,可以用php或其他语言动态修改下mysql的时区。

具体方法:

在mysql_connect()下使用mysql_query("SET time_zone = '+8:00'")。

这样可以在保证你不重启的情况下改变时区。但是mysql的某些系统函数还是不能用如:now()。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7471865.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存