Mysql查看数据库时区并设置时区

使用IDEA连接数据库发生Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually. .错误提示,解决方法

一、查看数据库时区

show variables like'%time_zone';


如果显示下图,则需要设置时区 

+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone |        |
| time_zone        | SYSTEM |
+------------------+--------+


二、设置时区

1.通过mysql命令行模式下动态修改

 set global time_zone = '+8:00';
设置为北京时间

刷新mysql权限

FLUSH PRIVILEGES
这样修改第二次重启依然没有改过来

2、通过修改配置文件来修改时区

修改配置文件my.ini

增加

default-time_zone = '+8:00'
修改完如下,每个人的配置文件内容有差异,仅供参考 

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:\Program Files\mysql-8.0.16-winx64
# 设置mysql数据库的数据的存放目录
datadir=C:\Program Files\mysql-8.0.16-winx64\Data
default-time_zone = '+8:00'
#  重启MySQL服务   /etc/init.d/mysqld restart
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
 
然后重启mysql服务,可以了

再次查询

mysql> show variables like'%time_zone';
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone |        |
| time_zone        | +08:00 |
+------------------+--------+

————————————————
版权声明:本文为CSDN博主「Spinoza-M」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_29752857/article/details/102948830

你可能感兴趣的:(mysql,数据库)