使用IDEA连接数据库发生Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually. .错误提示,解决方法
一、查看数据库时区
1 | show variables like '%time_zone' ; |
如果显示下图,则需要设置时区
1 2 3 4 5 6 | + ------------------+--------+ | Variable_name | Value | + ------------------+--------+ | system_time_zone | | | time_zone | SYSTEM | + ------------------+--------+ |
二、设置时区
1.通过mysql命令行模式下动态修改
1 | set global time_zone = '+8:00' ; |
设置为北京时间
刷新mysql权限
1 | FLUSH PRIVILEGES |
这样修改第二次重启依然没有改过来
2、通过修改配置文件来修改时区
修改配置文件my.ini
增加
1 | default-time_zone = '+8:00' |
修改完如下,每个人的配置文件内容有差异,仅供参考
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | [mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=C:Program Filesmysql-8.0.16-winx64 # 设置mysql数据库的数据的存放目录 datadir=C:Program Filesmysql-8.0.16-winx64Data 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服务,可以了
再次查询
1 2 3 4 5 6 7 8 | mysql> show variables like '%time_zone' ; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | | | time_zone | +08:00 | +------------------+--------+ 2 rows in set , 1 warning (0.01 sec) |
到此这篇关于Mysql查看数据库时区并设置时区的文章就介绍到这了,更多相关Mysql查看数据库时区内容请搜索IT俱乐部以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT俱乐部!