解决MySQL8.0时区的问题
软件版本
- Windows:Windows10
- MySQL:mysql-8.0.16-winx64.zip
问题描述
java将当前时间保存到MySQL数据库时,MySQL中的时间不正确
问题分析
- 原因一:java数据库连接使用UTC时区(世界标准时间),即serverTimezone=UTC
url: jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=true
- 原因二:MySQL使用的time_zone属性是+00:00,而北京时间比UTC时间早8小时,即UTC+08:00
检查MySQL
/*** 可查看全局的时区设置和会话的时区设置* global.time_zone负责java连接数据库时的时区设置* session.time_zone负责Navicat客户端连接数据库时的时区设置* /
mysql> select @@global.time_zone,@@session.time_zone;/*** 还有一种方法* System代表采用系统时区* CST是一种很乱的时区,它包括了4个时区* /
mysql> show variables like '%time_zone%'; // 验证时区,这行命令可以检测session.time_zone是否正确配置
mysql> select now();
解决方法
- 步骤一:修改java中的时区为东八区
// serverTimezone可以设置为北京时间GMT%2B8、上海时间Asia/Shanghai或者香港时间Hongkong
url: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=true
- 步骤二:修改MySQL数据库的时区为东八区
// 方法一:使用命令(优点:不需要重启MySQL服务,缺点:一旦MySQL服务被重启,设置就会消失)
mysql> set time_zone = '+8:00';
mysql> set global time_zone = '+8:00';
// 方法二:修改my.ini配置文件(优点:永久保存设置,缺点:需重启MySQL服务)
[mysqld]
// 设置默认时区
default-time_zone='+8:00'
解决MySQL8.0时区的问题相关推荐
- mysql8时区设置_解决MySQL8.0时区的问题步骤
软件版本 Windows:Windows10 MySQL:mysql-8.0.16-winx64.zip 问题描述 java将当前时间保存到MySQL数据库时,MySQL中的时间不正确 问题分析 原因 ...
- 解决MySQL8.0报错:Unknown system variable 'validate_password_policy'
解决MySQL8.0报错:Unknown system variable 'validate_password_policy' 一.问题描述 1.在安装MySQL8.0时,修改临时密码,因密码过于 ...
- mysql8修改密码之后无法登陆_解决MySQL8.0安装第一次登陆修改密码时出现的问题...
下面给大家介绍下mysql 8.0.16 初次登录修改密码 mysql数据库初始化后初次登录需要修改密码 初次登录会碰到下面这个错误 ql> alter user root identified ...
- 解决mysql8.0登录验证失败的问题
解决mysql8.0登录验证失败的问题 很多用户在安装新版的mysql8.0版本时,在其他的mysql工具登录,出现"Authentication plugin 'caching_sha2_ ...
- 【seata系列】centos服务器带你踩坑搭建seata以及解决MySQL8.0无法启动问题
目录 准备 配置 registry.conf file.conf 创建相关表和数据库 启动 踩坑 运行 准备 通过github下载安装包:https://github.com/seata/seata/ ...
- mysql 8.0认证失败_解决mysql8.0因密码认证插件导致的链接不上
简介 今天在迁移zabbix的数据库,每次链接到自己的mysql都报错, mysqlAuthentication plugin 'caching_sha2_password' cannot be lo ...
- JDBC连接时所犯错误1.字符集设置不合适2.连接MySQL8.0社区版时时区不一致3..包名不能以Java.命名4.驱动被弃用
Microsoft JDBC Driver 的主页为:https://msdn.microsoft.com/en-us/data/aa937724.aspx 下载所需驱动 今天连接时报了四次错,记录下 ...
- Mysql8.0.16 连接包报错解决方法
Mysql8.0.16 连接包报错解决方法 Mysql8.0 .16连接包报错: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized o ...
- mysql8.0.18ZIP版下载与安装(以及无my-default.ini文件和data文件夹的解决方法)
mysql8.0.18ZIP版下载与安装(以及无my-default.ini文件和data文件夹的解决方法) 参考文章: (1)mysql8.0.18ZIP版下载与安装(以及无my-default.i ...
最新文章
- 盛大 牛人 blog
- 使用内部类隐藏实现细节
- java listfiles 使用_Java中list()和listFiles()方法之间的区别
- putty 中文乱码
- python查询天气
- 语音媒体和信令的测试软件,IP多媒体子系统信令分析工具的设计与实现
- 多线程实现的4中方法
- Linux下MySQL server和client安装
- SQL Server-【知识与实战VIII】触发器(中)
- DirectX SDK 安装时出现错误 [Error Code:S1023] 的解决方案
- Java通过cad图生成3d模型,将CAD图纸转换为SolidWorks三维模型
- jensen不等式(jensen不等式对于凹函数)
- 11:Hive从0到1系列学习:函数之常用的内置函数
- java多线程之Guarded Suspension模式
- 【Vue】图片加载中显示Loading
- 简单实现dom4j解析xml
- 如何编辑图片上的文字?在线图片去字工具怎样使用?
- 市占率第一,是vivo的起点还是终点?
- 数据结构二叉排序树的查找
- C语言小游戏:文字冒险游戏