国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Flink】FlinkCDC獲取mysql數(shù)據(jù)時(shí)間類型差8小時(shí)時(shí)區(qū)解決方案

這篇具有很好參考價(jià)值的文章主要介紹了【Flink】FlinkCDC獲取mysql數(shù)據(jù)時(shí)間類型差8小時(shí)時(shí)區(qū)解決方案。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1、背景:

在我們使用FlinkCDC采集mysql數(shù)據(jù)的時(shí)候,日期類型是我們很常見的類型,但是FlinkCDC讀取出來會(huì)和數(shù)據(jù)庫的日期時(shí)間不一致,情況如下

FlinkCDC獲取的數(shù)據(jù)中create_time字段1694597238000轉(zhuǎn)換為時(shí)間戳2023-09-13 17:27:18

【Flink】FlinkCDC獲取mysql數(shù)據(jù)時(shí)間類型差8小時(shí)時(shí)區(qū)解決方案,Flink實(shí)戰(zhàn),flink,大數(shù)據(jù)

?而數(shù)據(jù)庫中原始數(shù)據(jù)如下,并沒有到下午5點(diǎn),這就導(dǎo)致了FlinkCDC讀出來的時(shí)間和數(shù)據(jù)庫中實(shí)際的時(shí)間不一致的情況,與數(shù)據(jù)庫對(duì)比可以發(fā)現(xiàn),這里的時(shí)間戳與數(shù)據(jù)庫時(shí)間剛好相差了 8 個(gè)小時(shí),在實(shí)際生產(chǎn)中這種情況是不行的

【Flink】FlinkCDC獲取mysql數(shù)據(jù)時(shí)間類型差8小時(shí)時(shí)區(qū)解決方案,Flink實(shí)戰(zhàn),flink,大數(shù)據(jù)

2、 產(chǎn)生這種情況的原因是什么呢?

FlinkCDC底層為Debezium,而Debezium默認(rèn)將MySQL中datetime類型轉(zhuǎn)成UTC的時(shí)間戳,底層的 Debezium 并沒有實(shí)現(xiàn) serverTimeZone 的配置,時(shí)區(qū)是寫死的無法更改,導(dǎo)致數(shù)據(jù)庫中設(shè)置的UTC+8到了FlinkCDC讀取出來相差了8個(gè)小時(shí)

3、如何解決呢

我們可以通過在自定義反序列化器中實(shí)現(xiàn)時(shí)區(qū)的修復(fù),需要提前準(zhǔn)備一個(gè)mysql,本案例版本為Mysql5.7,并且開啟binlog,如何開啟binlog過程如下面的博客文章來源地址http://www.zghlxwxcb.cn/news/detail-733155.html

到了這里,關(guān)于【Flink】FlinkCDC獲取mysql數(shù)據(jù)時(shí)間類型差8小時(shí)時(shí)區(qū)解決方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • MySQL時(shí)間分組:按小時(shí)統(tǒng)計(jì)數(shù)據(jù)(mysql按小時(shí)分組)

    MySQL時(shí)間分組是一類涉及MySQL數(shù)據(jù)庫的SQL語句,能夠以小時(shí)對(duì)數(shù)據(jù)進(jìn)行分組統(tǒng)計(jì)。 比如,如果你想根據(jù)一定的時(shí)間間隔,把MySQL數(shù)據(jù)庫中的記錄分成幾組,那么MySQL時(shí)間分組技術(shù)就派上用場了。 MySQL時(shí)間分組主要使用MySQL語句YEAR(), WEEK(), HOUR()和GROUP BY來實(shí)現(xiàn),按小時(shí)統(tǒng)計(jì)數(shù)據(jù)實(shí)

    2024年02月12日
    瀏覽(22)
  • Mysql 時(shí)區(qū)差8小時(shí)的多種問題 統(tǒng)統(tǒng)解決

    Mysql 時(shí)區(qū)差8小時(shí)的多種問題 統(tǒng)統(tǒng)解決

    最近在開發(fā)【Java面試 | 笑小楓】小程序,便發(fā)現(xiàn)老是有人半夜偷偷刷題,如下圖所示: 現(xiàn)在都這么卷了嗎?大半夜的都不睡覺了嗎?還在擼題~越想越不對(duì),趕緊看了一下,發(fā)現(xiàn)自己錄入題目的時(shí)間也好多都在凌晨。 好家伙,秒懂,時(shí)區(qū)錯(cuò)了。錯(cuò)就錯(cuò)了吧,影響也不大。 直

    2024年02月05日
    瀏覽(22)
  • 【時(shí)區(qū)】Flink JDBC 和CDC時(shí)間字段時(shí)區(qū) 測試及時(shí)間基準(zhǔn)

    【時(shí)區(qū)】Flink JDBC 和CDC時(shí)間字段時(shí)區(qū) 測試及時(shí)間基準(zhǔn)

    關(guān)聯(lián)文章: 各種時(shí)間類型和timezone關(guān)系淺析 1. 測試一般的數(shù)據(jù)庫不含time zone的類型的時(shí)區(qū)。 mysql timestamp(3) 類型 postgres timestamp(3) 類型 sqlserver datetime2(3) 類型 oracle類型 TIMESTAMP(3) 類型 在以下測試之中均為 ts 字段 2.測試CDC中元數(shù)據(jù) op_ts 時(shí)區(qū) 在以下測試中cdc表建表均使用 ts_ms T

    2024年02月06日
    瀏覽(24)
  • Flink SQL 時(shí)區(qū) -- 時(shí)間字符串轉(zhuǎn)時(shí)間戳并轉(zhuǎn)換時(shí)區(qū)

    將時(shí)間字符串格式化,轉(zhuǎn)變成時(shí)間戳,再加8小時(shí)后寫入clickhouse (該方法默認(rèn)精確度為秒,不適用毫秒) (1)UNIX_TIMESTAMP 作用:將時(shí)間字符串轉(zhuǎn)換成時(shí)間戳 用法:UNIX_TIMESTAMP(STRING datestr, STRING format) (2)CONVERT_TZ 作用:轉(zhuǎn)換時(shí)區(qū) 用法:CONVERT_TZ(string1, string2, string3) (實(shí)測僅獲

    2024年02月04日
    瀏覽(24)
  • MySQL 獲取前24小時(shí)每小時(shí)數(shù)據(jù)總數(shù)

    1、創(chuàng)建表結(jié)構(gòu) 2、表中填充數(shù)據(jù) 你可以使用以下 SQL 查詢語句來獲取 MySQL 數(shù)據(jù)庫中當(dāng)前前24小時(shí)每小時(shí)的數(shù)據(jù): 這個(gè)查詢語句會(huì)將 data_report 表中過去24小時(shí)內(nèi)每個(gè)小時(shí)的數(shù)據(jù)進(jìn)行統(tǒng)計(jì),并按照小時(shí)分組。其中, create_time 是你表中記錄創(chuàng)建時(shí)間的字段名,你需要將其替換成實(shí)

    2024年02月02日
    瀏覽(17)
  • 【Flink】 FlinkCDC讀取Mysql( DataStream 方式)(帶完整源碼,直接可使用)

    【Flink】 FlinkCDC讀取Mysql( DataStream 方式)(帶完整源碼,直接可使用)

    簡介: ? ? FlinkCDC讀取Mysql數(shù)據(jù)源,程序中使用了自定義反序列化器,完整的Flink結(jié)構(gòu),開箱即用。 本工程提供 1、項(xiàng)目源碼及詳細(xì)注釋,簡單修改即可用在實(shí)際生產(chǎn)代碼 2、成功編譯截圖 3、自己編譯過程中可能出現(xiàn)的問題 4、mysql建表語句及測試數(shù)據(jù) 5、修復(fù)FlinkCDC讀取Mysql數(shù)

    2024年02月07日
    瀏覽(18)
  • FlinkCDC第三部分-同步mysql到mysql,ctrl就完事~(flink版本1.16.2)

    FlinkCDC第三部分-同步mysql到mysql,ctrl就完事~(flink版本1.16.2)

    本文介紹了? 來源單表-目標(biāo)源單表同步,多來源單表-目標(biāo)源單表同步。 注:1.16版本、1.17版本都可以使用火焰圖,生產(chǎn)上最好關(guān)閉,詳情見文章末尾 Flink版本:1.16.2 環(huán)境:Linux CentOS 7.0、jdk1.8 基礎(chǔ)文件: flink-1.16.2-bin-scala_2.12.tgz、 flink-connector-jdbc-3.0.0-1.16.jar、(maven倉庫目錄:

    2024年02月11日
    瀏覽(23)
  • android 獲取手機(jī)當(dāng)前時(shí)區(qū),解決時(shí)間偏移量和夏令時(shí)差問題

    ?//獲取當(dāng)前時(shí)區(qū) ? ? public static int getTimeZone() { ? ? ? ? Date date=new Date(); ? ? ? ? //取得本地時(shí)間 ? ? ? ? Calendar cal = Calendar.getInstance(); ? ? ? ? //取得時(shí)間偏移量 ? ? ? ? int offset = cal.get(Calendar.ZONE_OFFSET)/(1000*60*60); ? ? ? ? //取得夏令時(shí)差 ? ? ? ? int dstOffset=cal.get(Calenda

    2024年02月08日
    瀏覽(17)
  • docker啟動(dòng)容器指定時(shí)區(qū) 解決mysql時(shí)間非北京時(shí)間問題

    運(yùn)行docker鏡像的時(shí)候可以指定環(huán)境變量TZ來設(shè)置使用那個(gè)時(shí)區(qū)的時(shí)間。如果不指定有些鏡像在制作的時(shí)候設(shè)置了跟自己想用的時(shí)區(qū)不一樣的時(shí)區(qū)就會(huì)出現(xiàn)尷尬的問題。 指定使用東八區(qū)時(shí)區(qū)命令如下: docker run -e TZ=Asia/Shanghai … docker啟動(dòng)mysql容器命令,指定庫表編碼:

    2024年02月14日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包