您好,登錄后才能下訂單哦!
本文主要給大家介紹遇到mysql timezone帶來(lái)數(shù)據(jù)不一致問(wèn)題怎么處理,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對(duì)性,對(duì)大家的參考意義還是比較大的,下面跟筆者一起了解下遇到mysql timezone帶來(lái)數(shù)據(jù)不一致問(wèn)題怎么處理吧。
mysql> select *,from_unixtime(create_time) from 表名 where source_id=xxx\G *************************** 1. row *************************** id: xxx uid: xxx source_id: xxx create_time: 1495324892 type: 0 source_status: 0 nick_name: 環(huán)境監(jiān)控組-xxx start_time: 1495324883 remark: 忽略視頻 pre_check_status: 0 source: 3 from_unixtime(create_time): 2017-05-21 00:01:32 1 row in set (0.00 sec)
因?yàn)檫\(yùn)營(yíng)庫(kù)是2主2從,我對(duì)比了主從的數(shù)據(jù),發(fā)現(xiàn)確實(shí)不一樣,一個(gè)是早上8點(diǎn),另外一個(gè)是凌晨,使用了from_unixtime函數(shù),結(jié)果相差8個(gè)小時(shí),比較像是時(shí)區(qū)的問(wèn)題
mysql> select from_unixtime(1495324892); +---------------------------+ | from_unixtime(1495324892) | +---------------------------+ | 2017-05-21 08:01:32 | +---------------------------+ 1 row in set (0.00 sec) mysql> select from_unixtime(1495324892); +---------------------------+ | from_unixtime(1495324892) | +---------------------------+ | 2017-05-21 00:01:32 | +---------------------------+ 1 row in set (0.00 sec)
懷疑是linux機(jī)器的時(shí)區(qū)問(wèn)題,但查詢發(fā)現(xiàn)都是一樣的
Thu May 25 15:11:29 CST 2017
既然與linux時(shí)區(qū)無(wú)關(guān),那應(yīng)該跟MySQL的時(shí)間有關(guān)了,再次分別查詢主從的時(shí)間
mysql> select now(); +---------------------+ | now() | +---------------------+ | 2017-05-25 15:12:28 | +---------------------+ 1 row in set (0.00 sec) mysql> select now(); +---------------------+ | now() | +---------------------+ | 2017-05-25 07:09:31 | +---------------------+ 1 row in set (0.00 sec)
果然是MySQL的時(shí)間問(wèn)題
mysql> show variables like "%time_zone%"; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | HKT | | time_zone | SYSTEM | +------------------+--------+ 2 rows in set (0.00 sec) mysql> show variables like "%time_zone%"; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | UTC | | time_zone | SYSTEM | +------------------+--------+ 2 rows in set (0.00 sec)
發(fā)現(xiàn)一個(gè)MySQL處于UTC時(shí)間,世界標(biāo)準(zhǔn)時(shí)間,而另外一個(gè)是香港時(shí)間,中國(guó)是東八區(qū),比世界標(biāo)準(zhǔn)時(shí)間多8個(gè)小時(shí),這就解釋了為什么8點(diǎn)打卡,卻顯示在凌晨上班。于是把有問(wèn)題的MySQL,重新修改時(shí)區(qū)
set global time_zone = '+8:00'; set time_zone = '+8:00'; flush privileges;
看完以上關(guān)于遇到mysql timezone帶來(lái)數(shù)據(jù)不一致問(wèn)題怎么處理,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識(shí)信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。