OceanBase遷移服務(wù)(OceanBaseMigration Service,OMS)是螞蟻OceanBase提供的一種支持同構(gòu)或異構(gòu)RDBMS與OceanBase之間進(jìn)行數(shù)據(jù)交互的服務(wù),它提供了數(shù)據(jù)在線遷移和實時增量同步的數(shù)據(jù)復(fù)制能力。
之前給大家分享了OMS遷移過程中踩過的一些坑,有各種的報錯、bug導(dǎo)致的問題。雖然這些阿里通過版本迭代予以了解決,但運維的魅力之一就是摁下了葫蘆浮起了瓢,解決的就是瓢的問題。
在OMS正向遷移(Oracle->OB)過程中報錯主要分兩部分,一部分是鏈路問題,OMS也需要在源端以及目標(biāo)端創(chuàng)建進(jìn)程來抽取數(shù)據(jù)分析日志并寫入目標(biāo)端。這部分的問題我們運維人員更多是想辦法排查并規(guī)避,更多的問題需要阿里工程師對OMS工具優(yōu)化。今天我們主要分享表結(jié)構(gòu)遷移和數(shù)據(jù)遷移過程中報錯常見問題及解決方法。
下面兩種報錯解決方式均通過具體的報錯解決案例來介紹
(一)表結(jié)構(gòu)遷移報錯
這種處理方式主要處理表結(jié)構(gòu)遷移過程中的報錯,以及數(shù)據(jù)遷移過程中因為表結(jié)構(gòu)問題,數(shù)據(jù)還未插入表中時產(chǎn)生的報錯
案例:隱藏列異常(OMS遷移ORACLE到OB過程中會在OB端表上創(chuàng)建隱藏列以及一個約束)
報錯現(xiàn)象:
圖1:OMS全量遷移過程中隱藏列報錯
解決步驟:
登錄OB客戶端->確認(rèn)建表語句
showcreate table table_nameG
圖2:報錯表建表語句
可以看到建表語句中并沒有創(chuàng)建上隱藏列,這時候就需要我們手工去修復(fù),可以去查一下正確的建表語句
查看建表語句方法一:
圖3:通過遷移任務(wù)結(jié)構(gòu)遷移部分查看
圖4:在結(jié)構(gòu)遷移的表結(jié)構(gòu)同步的子任務(wù)里可以看到具體表的信息
圖5:查看報錯表上下文找到DDL建表語句
查看建表語句方法二:
登錄OMS的租戶
圖6:登錄語句
切換OMS_META用戶,useoms_meta
圖7:查詢OMS_DDL表找到報錯表的建表語句
查詢到正確的建表語句之后,在OB目標(biāo)庫刪除有問題的表,然后執(zhí)行建表語句,創(chuàng)建隱藏列和索引
圖8:在OB端執(zhí)行正確建表語句
圖9:創(chuàng)建完表showcreate table檢查建表語句,復(fù)檢遷移作業(yè)
(二)數(shù)據(jù)遷移過程中報錯
這種方式主要處理表中已導(dǎo)入部分?jǐn)?shù)據(jù),在全量遷移途中報錯
案例:源端表空間move觸發(fā)bug導(dǎo)致正在遷移的分區(qū)找不到(ADGBug)
報錯現(xiàn)象:
圖10:遷移任務(wù)報錯頁面
圖11:oms后臺報錯日志,顯示找不到對象
解決步驟:
針對這個bug,OB研發(fā)更新了OMS校驗規(guī)則,更多的需要我們規(guī)避遷移過程中DDL操作,在解決了問題之后,需要登錄oms主機登錄管理docker,檢查配置文件
dockerexec -it oms bash
Cd/home/ds/run/134.80.184.66-9000:90243:0000000057/migrate/1
檢查overview-done文件如果有報錯表,手工刪除下,overview-runing中找到報錯表,隨便修改一個不存在的名字避開校驗
OB端清空報錯表
obclient> truncate table SMSERXXXX;
QueryOK, 0 rows affected (1.13 sec)
obclient>truncate table I168USEXXXX;
QueryOK, 0 rows affected (0.99 sec)
處理完之后
發(fā)起復(fù)檢
圖12:復(fù)檢之后作業(yè)正常繼續(xù)
在OB推行數(shù)據(jù)庫商業(yè)化的過程中會存在各種各樣的問題,需要我們大家協(xié)同發(fā)現(xiàn)問題,分析問題,解決問題。只有這樣才能打造一款堅實的國產(chǎn)化產(chǎn)品。國產(chǎn)化必將是未來幾年國內(nèi)各行各業(yè)經(jīng)濟(jì)和技術(shù)革新的一個趨勢。因此,基于近一段時間的問題的處理以及總結(jié),針對OMS遷移過程中的一些問題我們也能做出相應(yīng)的分類以及匯總,并總結(jié)出一定的處理方案。在這過程中,也使得我們使用人員對于遷移過程中涉及的原理有了更深的理解,這篇文章的分享就是我們近期在OMS遷移過程中探索的總結(jié),雖不能覆蓋所有問題,但類似問題的處理大同小異,都有共通之處,望給大家拋磚引玉。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/130083.html
摘要:年月日,遷移服務(wù)解決方案在城市峰會中正式發(fā)布。遷移服務(wù)向分布式架構(gòu)升級的直接路徑基于上述問題和挑戰(zhàn),同時經(jīng)過螞蟻十年數(shù)據(jù)庫架構(gòu)升級的先進(jìn)經(jīng)驗,螞蟻金服為客戶打造了這款一站式數(shù)據(jù)遷移解決方案遷移服務(wù),簡稱。 2019年1月4日,OceanBase遷移服務(wù)解決方案在ATEC城市峰會中正式發(fā)布。螞蟻金服資深技術(shù)專家?guī)熚膮R和技術(shù)專家韓谷悅共同分享了OceanBase遷移服務(wù)的重要特性和業(yè)務(wù)實踐...
摘要:年月日,遷移服務(wù)解決方案在城市峰會中正式發(fā)布。遷移服務(wù)向分布式架構(gòu)升級的直接路徑基于上述問題和挑戰(zhàn),同時經(jīng)過螞蟻十年數(shù)據(jù)庫架構(gòu)升級的先進(jìn)經(jīng)驗,螞蟻金服為客戶打造了這款一站式數(shù)據(jù)遷移解決方案遷移服務(wù),簡稱。 2019年1月4日,OceanBase遷移服務(wù)解決方案在ATEC城市峰會中正式發(fā)布。螞蟻金服資深技術(shù)專家?guī)熚膮R和技術(shù)專家韓谷悅共同分享了OceanBase遷移服務(wù)的重要特性和業(yè)務(wù)實踐...
摘要:作為阿里云大數(shù)據(jù)旗艦產(chǎn)品,的級別性能處理達(dá)到了全球領(lǐng)先性,被評為全球云端數(shù)據(jù)倉庫領(lǐng)導(dǎo)者。天弘基金天弘基金旗下的余額寶,是中國規(guī)模最大的貨幣基金。場景二阿里云產(chǎn)品消費賬單分析準(zhǔn)備工作完成案例中準(zhǔn)備工作步驟。 摘要: 一、 MaxCompute是什么 你的OSS數(shù)據(jù)是否作堆積在一旁沉睡已久存儲成本變?yōu)槠髽I(yè)負(fù)擔(dān)你是否想喚醒沉睡的數(shù)據(jù)驅(qū)動你的業(yè)務(wù)前行MaxCompute可以幫助你高效且低成本的...
摘要:使用預(yù)編譯處理的優(yōu)勢使用預(yù)處理器,可以提供缺失的樣式層復(fù)用機制減少冗余代碼,提高樣式代碼的可維護(hù)性。所以我們在實際項目中衡量預(yù)編譯方案時,還是得想想,比起帶來的額外維護(hù)開銷,預(yù)處理器有沒有解決更大的麻煩。 一、什么是css預(yù)編譯處理? CSS 預(yù)編譯處理,從字面上理解,就是預(yù)先編譯處理CSS。它擴(kuò)展了 CSS 語言,增加了變量、Mixin、函數(shù)等編程的特性,使 CSS 更易維護(hù)和擴(kuò)展。...
閱讀 1353·2023-01-11 13:20
閱讀 1699·2023-01-11 13:20
閱讀 1211·2023-01-11 13:20
閱讀 1902·2023-01-11 13:20
閱讀 4161·2023-01-11 13:20
閱讀 2751·2023-01-11 13:20
閱讀 1397·2023-01-11 13:20
閱讀 3664·2023-01-11 13:20