MySQL设置时区和默认编码

Posted 头大的冯冯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL设置时区和默认编码相关的知识,希望对你有一定的参考价值。

情况描述

学习spring boot时要在Windows本地安装mysql5.7,配置好之后项目,启动之后提示需要设置时区,并且在使用过程中发现出现乱码,中文无法显示,出现上述问题的主要是MySQL5.7中没有设置时区和编码。

解决方案

1、在spring boot的配置文件application.properties中设置MySQL的数据源url

spring.datasource.url=jdbc:mysql://localhost:3306/yunzhi_spring_boot?characterEncoding=utf-8&serverTimezone=GMT%2B8

解释:

characterEncoding为设置数据库编码,采用utf-8;

serverTimezone为设置时区,“GMT%2B8”即GMT+8,东八区北京时间;

有兴趣可以了解一下GMT和UTC的区别。

2、如果每次都这样设置,感觉好麻烦,直接修改MySQL的配置文件my.ini,设置两个参数:

default-time-zone=+08:00character-set-server=utf8

然后保存,重启MySQL服务。

项目中的MySQL url就可以简化为:

spring.datasource.url=jdbc:mysql://localhost:3306/yunzhi_spring_boot

 

链接:https://mp.weixin.qq.com/s/Fh-gflUMxEOkH1NIfuDc-Q

以上是关于MySQL设置时区和默认编码的主要内容,如果未能解决你的问题,请参考以下文章

MySQL怎么设置时区为格林威治时间。

MySQL时区设置

将 MySQL 数据库时区设置为 GMT

通过 PhPMyAdmin 在 MySql Server 上设置默认时区

开发查询mysql的datetime类型数据时间差了14小时解决

mysql设置时间