修改MySQL的时区,参数time_zone

转自 https://www.cnblogs.com/xingzc/p/7896460.html

 

首先需要查看mysql的当前时区,用time_zone参数

[html] view plain copy

  1. mysql> show variables like '%time_zone%';     
  2. +------------------+--------+  
  3. | Variable_name    | Value  |  
  4. +------------------+--------+  
  5. | system_time_zone | CST    |  
  6. | time_zone        | SYSTEM |  
  7. +------------------+--------+  
  8. 2 rows in set (0.00 sec)  



1 可以通过修改my.cnf
在 [mysqld] 之下加
default-time-zone=timezone
来修改时区。如:
default-time-zone = '+8:00'
修改完了记得记得重启msyql
注意一定要在 [mysqld] 之下加 ,否则会出现 unknown variable 'default-time-zone=+8:00'

2 另外也可以通过命令行在线修改

[html] view plain copy

  1. set time_zone = timezone  
  2. 比如北京时间(GMT+0800)  
  3. set time_zone = '+8:00'; 如下:  
  4. mysql> set time_zone='+8:00';  
  5. Query OK, 0 rows affected (0.00 sec)  
  6.   
  7. mysql> show variables like '%time_zone%';     
  8. +------------------+--------+  
  9. | Variable_name    | Value  |  
  10. +------------------+--------+  
  11. | system_time_zone | CST    |  
  12. | time_zone        | +08:00 |  
  13. +------------------+--------+  
  14. 2 rows in set (0.00 sec)  


 

3 再通过select now()来验证时区

[html] view plain copy

  1. mysql> show variables like '%time_zone%';     
  2. +------------------+--------+  
  3. | Variable_name    | Value  |  
  4. +------------------+--------+  
  5. | system_time_zone | CST    |  
  6. | <span style="color:#3366ff;">time_zone        | +08:00 </span>|  
  7. +------------------+--------+  
  8. 2 rows in set (0.00 sec)  
  9.   
  10. mysql> select now();  
  11. +---------------------+  
  12. | now()               |  
  13. +---------------------+  
  14. | <span style="color:#3333ff;">2013-08-05 10:35:31 </span>|  
  15. +---------------------+  
  16. 1 row in set (0.00 sec)  
  17.   
  18. mysql>  <span style="color:#ff0000;">set </span><span style="color:#ff0000;">time_zone='+0:00';  
  19. </span>Query OK, 0 rows affected (0.00 sec)  

[html] view plain copy

  1. mysql> show variables like '%time_zone%';  
  2. +------------------+--------+  
  3. | Variable_name    | Value  |  
  4. +------------------+--------+  
  5. | system_time_zone | CST    |  
  6. |<span style="color:#ff0000;"> time_zone        | +00:00 </span>|  
  7. +------------------+--------+  
  8. 2 rows in set (0.00 sec)  

[html] view plain copy

  1. mysql> select now();  
  2. +---------------------+  
  3. | now()               |  
  4. +---------------------+  
  5. | <span style="color:#ff0000;">2013-08-05 02:35:43 </span>|  
  6. +---------------------+  
  7. 1 row in set (0.00 sec)  


 

参考文献: http://dev.mysql.com/doc/refman/5.7/en/time-zone-leap-seconds.html

 




======补充==

GMT(Greenwich Mean Time)代表格林尼治标准时间,这个大家都知道。 
而CST却同时可以代表如下 4 个不同的时区: 

  • Central Standard Time (USA) UT-6:00
  • Central Standard Time (Australia) UT+9:30
  • China Standard Time UT+8:00
  • Cuba Standard Time UT-4:00


可见,CST可以同时表示美国,澳大利亚,中国,古巴四个国家的标准时间。 

前面提到的通过 Java 获取的CST时间用的是China Standard Time,而客户端JavaScript则默认采用的是美国的中部时间。 

所以将 Fri Aug 28 09:37:46 CST 2009 加上 6 个小时,再加上 8 个小时,就等于 Fri Aug 28 2009 23:37:46 GMT+0800 

可见,在以后的编程中为了避免错误,还是不要使用CST时间,而尽量采用GMT时间。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Spring Boot中配置MySQL的serverTimezone可以通过在application.properties或application.yml文件中添加以下配置实现: 对于application.properties文件: ``` spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase?serverTimezone=Asia/Shanghai ``` 对于application.yml文件: ``` spring: datasource: url: jdbc:mysql://localhost:3306/mydatabase?serverTimezone=Asia/Shanghai ``` 在这里,serverTimezone属性设置了MySQL时区为Asia/Shanghai。根据引用和引用的说明,serverTimezone属性设置会覆盖MySQLtime_zone变量,并确保Spring Boot会话的时区为东8区(Asia/Shanghai)。 此外,还可以使用系统的默认时区作为MySQL时区设置。根据引用,time_zone属性默认为System,即追随系统的时区设置。这意味着如果不显式地设置serverTimezone属性,MySQL将使用系统的默认时区作为服务器时区。 以上是关于在Spring Boot中配置MySQL的serverTimezone的方法。请根据您的具体需求选择适合的方式进行配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [SpringBoot mysql 时区问题总结](https://blog.csdn.net/zjy660358/article/details/117701956)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值