共計(jì) 1586 個(gè)字符,預(yù)計(jì)需要花費(fèi) 4 分鐘才能閱讀完成。
本文丸趣 TV 小編為大家詳細(xì)介紹“Mysql 時(shí)區(qū)錯(cuò)誤問(wèn)題怎么解決”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Mysql 時(shí)區(qū)錯(cuò)誤問(wèn)題怎么解決”文章能幫助大家解決疑惑,下面跟著丸趣 TV 小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。
問(wèn)題描述
在做項(xiàng)目的時(shí)候突然遇到以下的報(bào)錯(cuò),可以看到是說(shuō) 數(shù)據(jù)庫(kù)的時(shí)區(qū)錯(cuò)誤,這里使用的是 Mysql 8.0.15 數(shù)據(jù)庫(kù)。
這里試用了 idea 提供的數(shù)據(jù)庫(kù)可視化插件。
以下報(bào)錯(cuò)使得無(wú)法訪問(wèn)數(shù)據(jù)庫(kù)。
org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: java.sql.SQLException: The server time zone value ?D1ú±ê×?ê±?? is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
### The error may exist in StudentMapper.xml
### The error may involve ll.getAll
### The error occurred while executing a query
### Cause: java.sql.SQLException: The server time zone value ?D1ú±ê×?ê±?? is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
原因分析
這里首先考慮是數(shù)據(jù)庫(kù)本身的默認(rèn)時(shí)區(qū)設(shè)置的問(wèn)題,
其次考慮在設(shè)置 idea 數(shù)據(jù)庫(kù)可視化插件連接的時(shí)候的時(shí)區(qū)的設(shè)置問(wèn)題
解決方案:
通過(guò)以下步驟解決了此問(wèn)題:
打開(kāi)命令窗口,進(jìn)入 mysql 服務(wù):
接著查詢時(shí)區(qū):
show variables like %time_zone%
這里顯示 SYSTEM 表示跟隨系統(tǒng),一般情況下是沒(méi)有問(wèn)題的,但是偶爾也會(huì)出現(xiàn)問(wèn)題,這里我們就直接更改成 +8:00
set global time_zone= +08:00
注意:這只是臨時(shí)修改,重啟 mysql 服務(wù)后就會(huì)失效
下面介紹永久修改:
永久的修改:修改 mysql 的配置文件 my.ini,添加:default-time-zone=’+08:00’,重啟 mysql 生效, 注意一定要在 [mysqld] 之下加,否則會(huì)出現(xiàn) unknown variable‘default-time-zone=+8:00’
接下來(lái)再去 idea 里面測(cè)試一下。
發(fā)現(xiàn)結(jié)果還是報(bào)錯(cuò),那么據(jù)考慮是 idea 數(shù)據(jù)庫(kù)可視化插件的鏈接配置問(wèn)題。
接下來(lái)修改 idea 數(shù)據(jù)庫(kù)可視化插件配置:
在這里加上時(shí)區(qū)’+8:00’, 進(jìn)行測(cè)試。完美解決。
讀到這里,這篇“Mysql 時(shí)區(qū)錯(cuò)誤問(wèn)題怎么解決”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道。