MySQL8.0使用CURRENT_TIMESTAMP查询到时间是12小时制,而不是24小时

MySQL8.0使用CURRENT_TIMESTAMP查询到时间是12小时制,而不是24小时

问题描述

使用CURRENT_TIMESTAMP获取当前时间并设置默认值的时候,查询到时间是2024-04-22 01:46:16,而不是2024-04-22 13:46:16
如果是时区问题,一般都是相差8小时。而现在系统应该是按照12小时制,而不是24小时制。

检查时区

保险一点,也可以检查一下时区:
在MySQL中获取当前时区,你可以通过查询系统变量来实现:@@global.time_zone 和 @@session.time_zone。这两个变量分别表示全局时区设置和当前会话的时区设置。

SELECT @@global.time_zone, @@session.time_zone;
-- 查询结果可能会显示为 'SYSTEM',这意味着服务器或会话时区被设置为跟随系统的时区。如果时区被显式设置为其他值,这里会显示具体的时区名称,如 '+08:00' 表示东八区。

-- 如果你需要设置MySQL的时区,可以使用如下命令(示例为设置为UTC时区):
SET GLOBAL time_zone = '+00:00';  -- 设置全局时区
SET time_zone = '+00:00';         -- 设置当前会话时区

PS:如果确实是时区问题,下面可以不用看了。

解决

步骤1:进入MySQL服务器配置文件

找到MySQL服务器的配置文件,文件一般命名为my.cnf(linux系统)my.ini(Windows系统), 具体取决于你的操作系统和MySQL安装方式。
在Linux系统中,通常位于/etc/mysql/my.cnf或/etc/my.cnf。
在Windows系统中,通常位于C:\Program Files\MySQL\MySQL Server 8.0或者C:\ProgramData\MySQL\MySQL Server 8.0。

步骤2:找到时间格式设置

在配置文件中,找到时间格式设置的位置。
你可以使用搜索功能来查找关键字datetime_format或者time_format。这个设置通常在[mysqld]部分中,你需要在这个部分寻找。
没有也不要紧,自己加上就行

步骤3:修改时间格式为24小时制

在找到时间格式设置后,你需要将时间格式修改为24小时制。没有就自己加上datetime_format

# 时间格式设置为24小时制
datetime_format = %Y-%m-%d %H:%i:%s

步骤4:保存并重启MySQL服务器

完成步骤3后,保存配置文件重新启动MySQL服务器,以使更改生效。在Linux系统中,你可以使用以下命令重启MySQL服务器:

# 重启mysql服务
sudo systemctl restart mysql
# 查看mysql服务状态
service mysql status

在Windows系统中,在服务管理器中找到MySQL服务并重启它。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值