如何在MySQL中修改时区

如何在MySQL中修改时区,第1张

通过以下参数来进行时区设置:

1. an absolute offset--绝对偏移量 例: alter session set time_zone = '-05:00'

2. database time zone--数据库时区 例:alter session set time_zone = dbtimezone 这是数据库默认的时区

3. os local time zone-- *** 作系统本地时区 例:alter session set time_zone = local 获得系统本地时区

4. a named region--直接用名字指定时区 例:alter session set time_zone = 'america/new_york'

MySQL 时区默认是服务器的时区。

查看:

复制代码代码如下:

mysql>SHOW VARIABLES LIKE '%time_zone%'

+------------------+--------+

| Variable_name| Value |

+------------------+--------+

| system_time_zone | CST|

| time_zone| SYSTEM |

+------------------+--------+

2 rows IN SET (0.00 sec)

可以通过修改my.cnf, 在 [mysqld] 之下加来修改时区。

default-time-zone=timezone

例如:

default-time-zone='+8:00'

修改后记得重启msyql。

注意一定要在 [mysqld] 之下加 ,否则会出现错误: unknown variable ‘default-time-zone=+8:00′

另外也可以通过命令:

SET time_zone=timezone

例如:比如北京时间(GMT+0800)

SET time_zone='+8:00'

这个和php的时区设置又有点差别,比如北京时间在php中是:

date_default_timezone_set('Etc/GMT-8')

美国pst时间(GMT-08:00)

SET time_zone = '-8:00'

复制代码代码如下:

mysql>SET time_zone = '+8:00'

Query OK, 0 rows affected (0.00 sec)

mysql>SELECT now()

+---------------------+

| now() |

+---------------------+

| 2008-12-29 11:26:36 |

+---------------------+

1 row IN SET (0.00 sec)

mysql>SET time_zone = '-8:00'

Query OK, 0 rows affected (0.00 sec)

mysql>SELECT now()

+---------------------+

| now() |

+---------------------+

| 2008-12-28 19:27:09 |

+---------------------+

1 row IN SET (0.00 sec)

docker中的mysql时区是使用了世界标准时间(UTC),把时区改成东八区方法: 1、启动容器时设置: 添加如下配置: 2、进入docker配置:(重启才能生效--永久生效) 3、临时修改(从mysql上修改,重启失效)


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

原文地址: http://outofmemory.cn/zaji/7287151.html

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

发表评论

登录后才能评论

评论列表(0条)

保存