MySQL + springboot修改时区的方法小结
說明:這里總結(jié)記錄修改mysql時(shí)區(qū)的三種方法。
方法一:通過mysql命令行模式下動(dòng)態(tài)修改
1.1 查看mysql當(dāng)前時(shí)間,當(dāng)前時(shí)區(qū)
?| 123456789101112131415 | > select curtime();? #或select now()也可以+-----------+| curtime() |+-----------+| 15:18:10 |+-----------+> show variables like "%time_zone%";+------------------+--------+| Variable_name? | Value |+------------------+--------+| system_time_zone | CST? || time_zone??? | SYSTEM |+------------------+--------+2 rows in set (0.00 sec)#time_zone說明mysql使用system的時(shí)區(qū),system_time_zone說明system使用CST時(shí)區(qū) |
1.2 修改時(shí)區(qū)
?| 123 | > set global time_zone = '+8:00'; ##修改mysql全局時(shí)區(qū)為北京時(shí)間,即我們所在的東8區(qū)> set time_zone = '+8:00'; ##修改當(dāng)前會(huì)話時(shí)區(qū)> flush privileges; #立即生效 |
方法二:通過修改my.cnf配置文件來修改時(shí)區(qū)
?| 123 | # vim /etc/my.cnf ##在[mysqld]區(qū)域中加上default-time_zone = '+8:00'# /etc/init.d/mysqld restart ##重啟mysql使新時(shí)區(qū)生效 |
方法三:如果不方便重啟mysql,又想臨時(shí)解決時(shí)區(qū)問題,可以通過php或其他語言在初始化mysql時(shí)初始化mysql時(shí)區(qū)
這里,以php為例,在mysql_connect()下使用:
?| 1 | mysql_query("SET time_zone = '+8:00'") |
這樣可以在保證你不重啟的情況下改變時(shí)區(qū)。但是mysql的某些系統(tǒng)函數(shù)還是不能用如:now()。這句,還是不能理解。
——————————————————————————————————————————————————————————
在用springboot的框架時(shí)候,有的小伙伴建議使用一些配置,如下?
??@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
? ? private Date callStartTime;
配置自yml 或者apploaction.proterties 里面
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8總結(jié)
以上是生活随笔為你收集整理的MySQL + springboot修改时区的方法小结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据库连接池性能比对(hikari dr
- 下一篇: 使用Introspector(Java内