mysql - Windows 10 上的 MySQL 8 - 时区
问题描述
我在 Windows 10 上运行了 MySQL 8。MySQL 8('SYSTEM')的默认 TimeZone 配置不适合我的 Windows 10 语言环境(意大利),因为 MYSQL 无法识别系统语言环境(意大利语字符串)。所以我编辑了 my.ini 文件添加:
default-time-zone="+01.00"
一切似乎都很好,直到 3 月 29 日。那天早上,意大利采用夏令时,将时区从 +1:00 移动到 +2:00。这迫使我每年 2 次相应地设置 my.ini 时区配置值。在星期六晚上。
为了避免这种行为,我填充了 mysql 时区表并将 GLOBAL time_zone var 设置为“Europe/Rome”,我得到了满意的结果。顺便说一下,在 db/system restart 我失去了这个值。我试图在 my.ini 中将其设置为:
default-time-zone="Europe/Rome"
但似乎该字段无法识别与时间值不同的值(因此无法自动获得 CET/CEST 变化)。
目前,我通过在运行 SET GLOBAL time_zone 查询的 Windows 启动时执行延迟脚本来解决它,但我正在寻找一个最佳实践解决方案,如果可能的话,解释无法在 my.ini 上无条件设置 default_time_zone 属性配置文件。
解决方案
推荐阅读
- sql - “'RETURNS' 附近的语法不正确。需要 AS、FOR 或 WITH。” (SQL 用户定义函数)
- swift-package-manager - 包装后Swift包管理器缺少库
- javascript - 与每个选项一起动态设置多选选择框的属性
- telegram-bot - Telegram Bot - 聊天 ID 是否一直保持不变?
- javascript - 如何在 App Maker 查询中引用一个值(就像我在 Apps 脚本中所做的那样)
- python - 你能在 MySQL 表中存储字节(Fernet 令牌)吗?Python
- parquet - 雪花连接器的镶木地板文件格式
- python - 带有 engine.Table_Names() 的空表(* SQLAlchemy 的新手*)
- reportportal - 间歇性地获取报告门户错误:不允许完成启动并给出“进行中”状态
- c - 使用 malloc() 函数设置全局数组大小获取转储核心