phpmyadmin sql默认时区设置面临的问题请解决

mrphzbgm  于 7个月前  发布在  PHP
关注(0)|答案(1)|浏览(95)

我试图在phpmyadmin中使用以下查询将当前时区更改为亚洲/加尔各答。但它不工作。
第一..

set time_zone = '+5:30'

月2

SET `time_zone` = 'Asia/Kolkata'

3日

SET GLOBAL time_zone = '+05:30';

月4

SET GLOBAL time_zone = "Asia/Kolkata";

但这不工作显示此错误

#1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation
qhhrdooz

qhhrdooz1#

设置全局时区实际上需要DBMS上的管理权限:它会影响数据库的所有用户,如果它发生更改,可能会导致其他软件的混乱。您的错误消息清楚地表明您没有该权限。将DBMS的全局时区设置为UTC被认为是一个很好的实践。
设置会话时区(前两个示例)不需要特权,因为它只影响您的会话。许多应用程序在每次连接到DBMS时都会设置时区,因为这允许将当前时区设置作为用户首选项进行处理。
你没有说你的前两个例子是否成功。如果SET SESSION time_zone='Asia/Kolkata'失败而SET SESSION time_zone='+05:30'成功,则意味着系统管理员尚未加载DBMS的时区表。问那个人read this。请注意,许多主机提供商拒绝加载这些表,即使它们是MySQL和MariaDb标准配置的一部分。
(If你的前两个例子都失败了,还有别的地方错了。
对于仅限印度的应用程序,没有可用的时区表不是问题,因为印度不使用白天时间。但对于许多地方来说,当地时间和UTC之间的偏移量每年会改变两次。时区表实现这些更改。例如,America/Halifax在夏季的-03:00和冬季的-04:00之间切换。

相关问题