最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL時間差8小時的解決方案

 更新時間:2024年07月08日 09:01:51   作者:程序員iteng  
本文介紹了在開發(fā)中遇到的時間問題,包括MySQL時間與系統(tǒng)時間不符、JDBC連接時區(qū)設(shè)置以及使用Jackson時可能出現(xiàn)的JSON時區(qū)問題,重點講解了如何修改MySQL時區(qū)、設(shè)置JDBC連接參數(shù)和調(diào)整JSON日期格式的時區(qū),需要的朋友可以參考下

在開發(fā)中,有可能會遇到這種情況:

  • 插入數(shù)據(jù)庫中的時間時正常。
  • 但是將時間傳到前端頁面上顯示時,會早8個小時。

這個問題我們可以從兩方面來分析:

  • MySQL 本身的問題。
  • JDBC 連接的問題。

1. MySQL 本身的問題

1-1. 驗證MySQL時間

首先,我們執(zhí)行如下 SQL 看看 MySQL 上的時間跟我的電腦時間是否是一致的:

select now();

在這里插入圖片描述

如果 MySQL 的這個時間跟系統(tǒng)的時間差了 8 小時,MySQL 本身的時間都不對,那你將來插入/查詢的時間肯定也不對。

出現(xiàn)這個問題,多半是 MySQL 的時區(qū)不太對,我們重新給其設(shè)置一下時區(qū)即可。

1-2. 修改Mysql時區(qū)

首先我們通過如下指令來查看一下 MySQL 當(dāng)前的時區(qū):

show variables like '%time_zone%';

在這里插入圖片描述

  • 可以看到,MySQL 說它的時區(qū)是 SYSTEM
  • 那 SYSTEM 又是啥呢?第一條說了 SYSTEM 是 UTC(協(xié)調(diào)世界時,又稱世界標(biāo)準(zhǔn)時間或世界協(xié)調(diào)時間)。
  • 而我們的北京時間比 UTC 快了 8 小時,即 UTC+8

配置文件修改Mysql時區(qū)

default-time-zone='+08:00'

windows

根據(jù)Mysql安裝目錄,修改my.ini文件

在這里插入圖片描述

Linux

找到/etc/mysql/mysql.conf.d/mysqld.cnf修改

在這里插入圖片描述

修改完成后,重啟 MySQL,再來查看 MySQL 的時區(qū)

SQL修改Mysql時區(qū)

通過 SQL 來修改時區(qū):

set global time_zone='+8:00';

注意我們所在的時區(qū)是東八區(qū)

2.JDBC 連接的問題

當(dāng)確認了 MySQL 沒有問題后,如果你的 MySQL 時間還是不對,那么就有可能是 JDBC 連接的問題了。

JDBC 連接設(shè)置參數(shù):serverTimezone=Asia/Shanghai

JDBC 連接參數(shù)中的時區(qū)優(yōu)先級高于 MySQL 服務(wù)器的時區(qū)參數(shù),所以這個連接參數(shù)大家也要尤其注意。

jdbc:mysql://localhost:3306/team_pan?serverTimezone=Asia/Shanghai

3. 返回 JSON 時間不對

如果在項目中用了 jackson,并且使用 @JsonFormat 注解來格式化日期,就有可能出現(xiàn)時區(qū)問題,如下:

@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "Asia/Shanghai")

大家看到,這段代碼如果沒有設(shè)置 timezone 屬性,那么默認的時區(qū)就是 UTC,也會導(dǎo)致最終的時間差了 8 小時。

到此這篇關(guān)于MySQL時間差8小時的解決方案的文章就介紹到這了,更多相關(guān)MySQL時間差8小時內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mysql視圖和觸發(fā)器使用過程

    Mysql視圖和觸發(fā)器使用過程

    這篇文章主要介紹了MySql視圖與觸發(fā)器使用過程,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-12-12
  • Mysql實驗之使用explain分析索引的走向

    Mysql實驗之使用explain分析索引的走向

    索引是mysql的必須要掌握的技能,同時也是提供mysql查詢效率的手段。通過以下的一個實驗可以理解?mysql的索引規(guī)則,同時也可以不斷的來優(yōu)化sql語句
    2018-01-01
  • 手把手教你用SQL獲取年、月、周幾、日、時

    手把手教你用SQL獲取年、月、周幾、日、時

    時間處理是我們?nèi)粘i_發(fā)中經(jīng)常遇到的需求,下面這篇文章主要給大家介紹了關(guān)于如何用SQL獲取年、月、周幾、日、時的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-12-12
  • MySQL存儲過程的優(yōu)化實例

    MySQL存儲過程的優(yōu)化實例

    在編寫MySQL存儲過程的過程中,我們會時不時地需要對某些存儲過程進行優(yōu)化,其目的是確保代碼的可讀性、正確性及運行性能。本文以作者實際工作為背景,介紹了對某一個MySQL存儲過程優(yōu)化的整個過程。
    2016-07-07
  • 一文搞懂MySQL索引頁結(jié)構(gòu)

    一文搞懂MySQL索引頁結(jié)構(gòu)

    本文主要介紹了MySQL索引頁結(jié)構(gòu),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • MySQL可以使用斜線來當(dāng)字段的名字

    MySQL可以使用斜線來當(dāng)字段的名字

    無意中發(fā)現(xiàn)MySQL可以使用斜線來當(dāng)字段的名字,下面有個示例,需要的朋友可以參考下
    2014-03-03
  • 一步步教你在Navicat上如何停止正在運行的MYSQL語句

    一步步教你在Navicat上如何停止正在運行的MYSQL語句

    很多時候我們會提交一些耗時比較長的sql,可能出現(xiàn)mysql服務(wù)器內(nèi)存或者CPU暴增,引起報警,甚至影響其他業(yè)務(wù),下面這篇文章主要給大家介紹了關(guān)于在Navicat上如何停止正在運行的MYSQL語句的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • MySQL 處理重復(fù)數(shù)據(jù)的方法(防止、刪除)

    MySQL 處理重復(fù)數(shù)據(jù)的方法(防止、刪除)

    這篇文章主要介紹了MySQL 處理重復(fù)數(shù)據(jù)的方法,文中示例代碼非常詳細,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • MySQL約束條件及設(shè)置方式

    MySQL約束條件及設(shè)置方式

    文章主要介紹了數(shù)據(jù)庫中約束條件的設(shè)置,包括主鍵約束、自增約束、非空約束、唯一性約束、無符合約束、默認約束和外鍵約束,以及如何在數(shù)據(jù)庫中設(shè)置這些約束條件
    2025-01-01
  • mysql between實現(xiàn)選取介于兩個值之間的數(shù)據(jù)范圍

    mysql between實現(xiàn)選取介于兩個值之間的數(shù)據(jù)范圍

    這篇文章主要介紹了mysql between實現(xiàn)選取介于兩個值之間的數(shù)據(jù)范圍,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07

最新評論

会宁县| 石林| 商洛市| 鹿邑县| 柘城县| 托克逊县| 塔河县| 呼玛县| 阿荣旗| 永安市| 绍兴县| 定远县| 滦南县| 宝兴县| 公主岭市| 固始县| 福清市| 无为县| 铁力市| 西宁市| 襄樊市| 垣曲县| 达孜县| 星子县| 迭部县| 德惠市| 丰都县| 河曲县| 尉氏县| 阳春市| 新乐市| 密山市| 铜川市| 蒙阴县| 浪卡子县| 黄大仙区| 昌都县| 陈巴尔虎旗| 德保县| 崇礼县| 泰宁县|