日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Oracle遷移PostgreSQL實戰(zhàn):低業(yè)務(wù)中斷、可校驗、可回退的完整方案

Oracle遷移PostgreSQL實戰(zhàn):低業(yè)務(wù)中斷、可校驗、可回退的完整方案 搞Oracle到PostgreSQL遷移這件事圈子里聊得最多的不是工具選哪個而是怎么讓業(yè)務(wù)別停太久、數(shù)據(jù)到底搬對沒有、出了問題能不能跑回去這三個靈魂拷問。我最近完整跟完了一個核心交易系統(tǒng)的遷移項目正好把整套打法梳理一遍給準備上車的朋友當(dāng)個參考。先說結(jié)論Oracle遷PostgreSQL難點從來不在怎么導(dǎo)數(shù)據(jù)而在遷移鏈條的整體設(shè)計。你只有把低業(yè)務(wù)中斷、可校驗、可回退當(dāng)成一個整體目標來拆解才能避免那種數(shù)據(jù)導(dǎo)完了、業(yè)務(wù)起不來、回也回不去的尷尬局面。1. 遷移項目啟動前先想清楚怎么切再動手1.1 遷移背景與目標拆解我們這個項目是從Oracle 11g遷到PostgreSQL 14源庫大概有3TB數(shù)據(jù)核心業(yè)務(wù)表最大的一張超過8億行還有不少用到了CLOB、分區(qū)、存儲過程的老業(yè)務(wù)。業(yè)務(wù)側(cè)給的要求很明確停機窗口最多4小時切換后一個月內(nèi)如果發(fā)現(xiàn)重大問題必須能回退并且遷移完成后要拿出讓業(yè)務(wù)信服的數(shù)據(jù)一致性證明。這三條要求翻譯成技術(shù)語言就是低業(yè)務(wù)中斷不能搞先停庫全量導(dǎo)出再全量導(dǎo)入的老套路必須走全量增量同步的雙軌方案把真正的停機時間壓縮到只需要處理增量追趕和切換驗證這兩個環(huán)節(jié)??尚r炦w移完成后要用行數(shù)、校驗和、抽樣比對等手段證明數(shù)據(jù)沒丟、沒多、沒錯。不是拿兩條SQL對一下數(shù)量就完事而是要能經(jīng)得起業(yè)務(wù)和審計的追問。可回退切換后保留完整的回退通道包括源庫持續(xù)運行、反向同步機制、回退演練預(yù)案。一旦業(yè)務(wù)驗證不通過能在一個小時內(nèi)切回Oracle且不丟新增數(shù)據(jù)。這三個目標不是并列關(guān)系而是互相牽制的。比如為了可回退你可能需要在一段時間內(nèi)同時維護兩套庫的寫入為了低中斷你的增量同步工具必須足夠穩(wěn)定否則追趕不上就會無限拉長停機窗口為了可校驗又必須在遷移過程中保留足夠的審計痕跡方便回退時對賬。1.2 遷移前的源庫調(diào)研與風(fēng)險清單很多項目死在第一步?jīng)]搞清楚源庫里到底有什么就開始動手。我建議遷移前至少花一到兩周做一次徹底的源庫體檢輸出一份風(fēng)險清單。我們當(dāng)時重點排查了以下幾類東西對象清單表、索引、約束、序列、視圖、物化視圖、存儲過程、函數(shù)、包、觸發(fā)器、同義詞、DB Link。每一項都要統(tǒng)計數(shù)量并評估改造工作量。千萬別小看同義詞和DB Link業(yè)務(wù)SQL里如果大量使用遷移后全都要改。SQL使用情況抓取AWR報告和近一段時間的慢SQL重點看用了哪些Oracle獨有語法比如CONNECT BY層次查詢、()外連接、ROWNUM分頁、NVL、SYSDATE、MERGE、LISTAGG等。這些是SQL改造的重災(zāi)區(qū)。數(shù)據(jù)類型分布NUMBER、VARCHAR2、DATE、CLOB、BLOB、LONG、RAW、ROWID等類型的字段數(shù)量和最大長度。尤其是CLOB和LONG遷移后要用TEXT替代但業(yè)務(wù)代碼里對CLOB的操作方式可能需要調(diào)整。存儲過程復(fù)雜度統(tǒng)計有多少存儲過程、總代碼行數(shù)、用到了哪些Oracle獨有包DBMS_SQL、DBMS_JOB、DBMS_ALERT、UTL_FILE等。這部分改造成本往往被嚴重低估。我們項目里有1300多個存儲過程最終花了整個項目40%的工時在改寫上面。依賴關(guān)系應(yīng)用與數(shù)據(jù)庫的交互方式包括連接方式JDBC、OCI、ODBC、事務(wù)隔離級別、會話級參數(shù)設(shè)置、臨時表使用情況。應(yīng)用層的連接串、驅(qū)動、SQL寫法都要納入改造范圍。體檢報告出來后要讓業(yè)務(wù)方、DBA、開發(fā)三方一起評審明確哪些東西可以原樣遷哪些必須改造遷哪些是僵尸對象可以果斷拋棄。這一步做扎實了后面所有的方案才有依據(jù)。2. 低業(yè)務(wù)中斷的核心打法全量增量雙軌遷移2.1 遷移工具選型與取舍工具選型沒有標準答案核心看你的源庫版本、目標庫版本、數(shù)據(jù)總量、同步實時性要求和團隊熟悉度。我們當(dāng)時對比了三條路線Ora2Pg開源免費Perl寫的能把表結(jié)構(gòu)、數(shù)據(jù)、序列、視圖、存儲過程整體轉(zhuǎn)換支持直接連Oracle導(dǎo)出再導(dǎo)入PostgreSQL。優(yōu)點是自動化程度高缺點是大表導(dǎo)出用COPY方式對源庫有一定壓力而且存儲過程轉(zhuǎn)換質(zhì)量一般只能轉(zhuǎn)個骨架復(fù)雜邏輯基本還得人工改。pgloader同樣開源從Oracle讀數(shù)據(jù)到PostgreSQL非??煊玫囊彩荂OPY協(xié)議支持并行加載。但DDL遷移能力弱主要用來搬數(shù)據(jù)。自研抽取同步腳本用Python寫一套基于JDBC的全量導(dǎo)出和增量抽取腳本配合調(diào)度平臺實現(xiàn)斷點續(xù)傳和數(shù)據(jù)校驗。靈活性最高但開發(fā)量不小。我們最終采用了Ora2Pg轉(zhuǎn)結(jié)構(gòu)pgloader搬全量自研增量同步腳本Debezium做變更捕獲的組合方案。結(jié)構(gòu)轉(zhuǎn)換用Ora2Pg生成初始DDL再人工修全量數(shù)據(jù)用pgloader并行加載增量部分考慮到源庫是Oracle 11gDebezium的Oracle插件要裝額外組件最后是自己寫了一套基于日志的增量抽取程序。這里給個建議如果是Oracle 12c及以上Debezium是較好的增量同步方案社區(qū)活躍且支持斷點續(xù)傳11g就得掂量掂量了。2.2 全量遷移的并行與限速策略全量數(shù)據(jù)遷移最容易翻車的地方是導(dǎo)太猛把源庫IO打滿業(yè)務(wù)直接告警導(dǎo)太慢又趕不上停機窗口。所以并行度和限速必須提前設(shè)計。我們按表維度拆分任務(wù)用了一個簡單的規(guī)則小于100萬行的表單表單任務(wù)順序執(zhí)行100萬到1000萬行的表按主鍵范圍拆成4到8個分片并行超過1000萬行的表按主鍵范圍拆成16到32個分片每個分片獨立連接、獨立事務(wù)。同時設(shè)置了全局并發(fā)上限保證源庫的活躍會話數(shù)不超過20。pgloader本身有個batch concurrency參數(shù)可以控制并行度但實測下來對Oracle源庫支持一般所以我更推薦自己寫一個簡單的調(diào)度器用一張任務(wù)表記錄每個分片的狀態(tài)調(diào)度線程從里面撈待執(zhí)行的任務(wù)分發(fā)給工作線程工作線程處理完更新狀態(tài)出錯自動重試三次還是失敗就進入人工處理隊列。這里有個非常關(guān)鍵的細節(jié)全量遷移必須在增量同步啟動之前完成并且要記錄全量導(dǎo)出的數(shù)據(jù)快照時間點。我們的做法是全量開始前先在源庫開啟歸檔日志和補充日志然后啟動增量抽取程序?qū)崟r解析日志寫入Kafka全量導(dǎo)出的每張表在導(dǎo)出前記錄一個SCNSystem Change Number快照導(dǎo)出完成后用這個SCN到增量同步里做數(shù)據(jù)拼接。這樣才能保證全量導(dǎo)出期間產(chǎn)生的增量變更不會丟。2.3 增量同步與業(yè)務(wù)雙寫設(shè)計增量同步的目標是讓PostgreSQL和Oracle的數(shù)據(jù)差距保持在分鐘級以內(nèi)這樣停機切換時只需要把最后幾分鐘的增量追上就能關(guān)窗口。我們的增量鏈路是Oracle歸檔日志 → LogMiner解析 → Kafka → 自研消費者程序 → 應(yīng)用到PostgreSQL。為什么用LogMiner而不是直接用OGG主要是因為OGG授權(quán)成本和部署復(fù)雜度在當(dāng)時的環(huán)境下不劃算。LogMiner有幾個坑要提前踩必須提前開啟最小補充日志Supplemental Log否則LogMiner拿不到更新前的字段值UPDATE語句沒法正確重放。LogMiner解析出來的DDL語句不能直接拿到PostgreSQL執(zhí)行需要做語法轉(zhuǎn)換比如ALTER TABLE xxx ADD (col NUMBER)要改成ALTER TABLE xxx ADD COLUMN col NUMERIC。大事務(wù)解析會產(chǎn)生大量Redo記錄LogMiner內(nèi)存可能扛不住要設(shè)置合理的UTL_FILE落地目錄分段讀取。增量應(yīng)用端的沖突處理也需要設(shè)計。雙軌運行期間如果應(yīng)用還在繼續(xù)寫Oracle我們的增量程序會把這些變更實時投遞到PostgreSQL兩邊數(shù)據(jù)保持一致。但如果某個時刻增量應(yīng)用出現(xiàn)問題、落后太多或者業(yè)務(wù)在驗證階段直接在PostgreSQL上面做了修改就會產(chǎn)生回環(huán)沖突。我們的策略是切換之前所有寫操作只走OraclePostgreSQL只接受增量投遞的歷史數(shù)據(jù)切換之后應(yīng)用層切到PostgreSQLOracle那邊不再接收業(yè)務(wù)寫流量。這套單向?qū)憽㈦p向讀的策略在切換前把沖突可能性降到最低。2.4 停機窗口內(nèi)的切換步驟清單就算增量同步再穩(wěn)定切換當(dāng)天也必須有SOP每一步到什么狀態(tài)、由誰確認都要提前定義好。我們的切換清單大概是這樣的業(yè)務(wù)側(cè)發(fā)布維護通知應(yīng)用層開啟只讀模式或直接停止寫流量等待增量同步追上確認Oracle和PostgreSQL的數(shù)據(jù)延遲為0停止Oracle側(cè)的寫操作記錄停止時間點增量程序消費完Kafka里所有消息應(yīng)用完最后一筆變更執(zhí)行數(shù)據(jù)校驗?zāi)_本下一節(jié)細說確認兩邊數(shù)據(jù)一致關(guān)閉增量同步程序防止PostgreSQL繼續(xù)接收Oracle的變更應(yīng)用層修改數(shù)據(jù)庫連接配置切換到PostgreSQL執(zhí)行一批關(guān)鍵的冒煙測試SQL確認核心業(yè)務(wù)功能正常觀察5到10分鐘確認無異常后對外宣布切換完成。整個切換過程耗時大概1.5小時算上全量數(shù)據(jù)校驗、應(yīng)用重連、緩存預(yù)熱最終停機窗口控制在3小時左右滿足4小時的要求。這里要注意第5步的數(shù)據(jù)校驗不能等全部跑完才判斷我們在切換前就做過多次全量預(yù)校驗在增量持續(xù)運行的情況下切換當(dāng)天只做增量部分的差異性校驗和隨機抽表比對。3. 數(shù)據(jù)校驗方案讓業(yè)務(wù)信服的三個層次3.1 第一層行數(shù)與總量校驗最基礎(chǔ)的校驗是行數(shù)比對。對每張表執(zhí)行SELECT COUNT(*)兩邊對不上就說明有問題。但COUNT在大表上很慢動輒幾分鐘甚至更久。我們當(dāng)時是用pg_comparison這類工具直接對比但更通用的做法是按主鍵范圍分段統(tǒng)計行數(shù)每段一個任務(wù)并行跑最后匯總。如果源表和目標表都沒有主鍵Oracle里確實存在這種爛表那校驗就只能退而求其次按所有字段做GROUP BY后再COUNT或者用COUNT(*)配合SUM(HASH)來粗查。這類表數(shù)量不多還好如果很多強烈建議在建表階段就幫它們補上主鍵或唯一約束否則后續(xù)的數(shù)據(jù)一致性驗證基本沒法做。行數(shù)校驗是必要條件但不是充分條件行數(shù)一樣不代表數(shù)據(jù)一樣所以還要做第二層。3.2 第二層字段級CRC校驗與哈希比對第二層是對每一行的所有字段拼起來做哈希兩邊比對哈希值是否一致。具體做法是在源庫Oracle寫一段SQL把每行需要比對的字段用DBMS_CRYPTO.HASH或STANDARD_HASH算出一個哈希值SELECT id, STANDARD_HASH(col1 || | || col2 || | || col3, SHA256) AS row_hash FROM my_table;在目標庫PostgreSQL用同樣的拼接規(guī)則算哈希SELECT id, encode(sha256(convert_to(col1 || | || col2 || | || col3, UTF8)), hex) AS row_hash FROM my_table;兩邊按主鍵關(guān)聯(lián)對比row_hash是否一致把所有不一致的主鍵ID撈出來交給業(yè)務(wù)確認。這里有幾個坑必須注意拼接字符串里的分隔符不能和字段值本身沖突。我一般用兩個特殊字符比如||~|~||并提前檢查字段值里是否包含這些字符。字段值里的NULL要統(tǒng)一處理。Oracle里空字符串就是NULL而PostgreSQL里空字符串和NULL是不同的。我們統(tǒng)一約定NULL或空串都替換成一個特殊標記比如NULL。浮點類型BINARY_DOUBLE、NUMBER帶小數(shù)在Oracle和PostgreSQL二進制存儲上有差異直接拼接字符串做哈??赡艹霈F(xiàn)看起來一樣、哈希不一樣的誤報。處理方法是對數(shù)值類型先做格式化統(tǒng)一保留到小數(shù)點后6位或更多確保兩邊字符串一致。大數(shù)據(jù)量下表字段特別多時哈希計算會非常消耗源庫CPU。我們當(dāng)時在源庫用只讀快照或者備庫上跑哈希校驗避免影響生產(chǎn)。3.3 第三層業(yè)務(wù)規(guī)則抽樣比對哈希校驗?zāi)鼙WC技術(shù)層面的數(shù)據(jù)一致但業(yè)務(wù)方更關(guān)心他們用起來對不對。所以我們額外設(shè)計了一套業(yè)務(wù)規(guī)則的抽樣比對從核心業(yè)務(wù)表里隨機抽取若干個ID把該ID關(guān)聯(lián)的訂單、明細、流水全查出來業(yè)務(wù)方人工核對把一批統(tǒng)計報表SQL分別在Oracle和PostgreSQL上跑一遍比對聚合結(jié)果是否一致把幾個典型的復(fù)雜查詢多表關(guān)聯(lián)、子查詢、窗口函數(shù)在新庫上執(zhí)行業(yè)務(wù)方確認執(zhí)行結(jié)果和口徑符合預(yù)期。這個環(huán)節(jié)的意義不止于查數(shù)據(jù)還在于讓業(yè)務(wù)方建立對遷移結(jié)果的信任。技術(shù)團隊說一百句校驗過了不如業(yè)務(wù)方自己抽幾個單子確認來得踏實。3.4 校驗工具與自動化我們整個校驗體系是跑在一個自研的校驗平臺上的支持配置表清單、校驗類型、閾值和通知渠道。技術(shù)上不復(fù)雜核心就是一個任務(wù)調(diào)度器加一堆校驗?zāi)_本。不過如果你沒有自研條件有幾個現(xiàn)成工具可以參考pg_comparison專門做PostgreSQL與PostgreSQL/Oracle等多庫數(shù)據(jù)對比支持行數(shù)、全量、抽樣對比能輸出差異報告。DataGrip/DBeaver的數(shù)據(jù)對比功能適合小表、交互式核對不適合大批量自動化。xtc校驗工具一些開源實現(xiàn)里有基于CRC或MD5的文件級校驗?zāi)芰Φ苯佑迷跀?shù)據(jù)庫遷移上還是得改造。我的建議是工具只是輔助校驗方案和口徑才是核心。先把口徑和字段映射規(guī)則定義清楚工具只是幫你把規(guī)則跑起來。4. 可回退機制給業(yè)務(wù)一顆定心丸4.1 回退方案設(shè)計的兩種路線回退最理想的方案是雙活也就是切換后Oracle和PostgreSQL都保持可寫應(yīng)用層按比例把流量分攤到兩邊某一側(cè)出問題可以隨時把流量全部切到另一側(cè)。但雙活對數(shù)據(jù)一致性的要求極高寫入沖突處理的復(fù)雜度也很大普通項目很難真正做到。我們實際采用的是切換后保留源庫只讀反向同步增量的半雙活方案。具體來說切換時Oracle側(cè)停止業(yè)務(wù)寫入但數(shù)據(jù)庫實例不關(guān)閉歸檔日志繼續(xù)保留切換后增量同步程序反向工作監(jiān)聽PostgreSQL的變更用PostgreSQL的邏輯復(fù)制功能把變更同步回Oracle如果業(yè)務(wù)驗證期間發(fā)現(xiàn)重大問題需要回退我們先把PostgreSQL寫入停止等最后一批變更同步到Oracle然后應(yīng)用連接切回Oracle就能在較短時間內(nèi)恢復(fù)服務(wù)。這個方案的關(guān)鍵在于反向同步的可靠性和時延。PostgreSQL的邏輯復(fù)制Logical Replication機制比較成熟但把邏輯復(fù)制的變更重放到Oracle端還是得靠自研程序或中間件。我們當(dāng)時是寫了一個消費者從PostgreSQL的WAL里解析出變更再合成SQL語句應(yīng)用到Oracle。這里有個現(xiàn)實問題PostgreSQL邏輯復(fù)制默認只適合PostgreSQL到PostgreSQL跨庫重放得自己處理類型映射和SQL方言差異工作量不小。4.2 回退窗口與觀察期設(shè)計回退不是無限期的業(yè)務(wù)方也不能想什么時候退就什么時候退。我們在項目計劃里明確了一個回退觀察期切換后一個月內(nèi)業(yè)務(wù)如果發(fā)現(xiàn)重大數(shù)據(jù)或功能問題啟動回退流程超過一個月認為遷移已經(jīng)穩(wěn)定不再支持自動回退Oracle源庫進入只讀歸檔狀態(tài)。這個觀察期不是隨便定的是根據(jù)業(yè)務(wù)體量和風(fēng)險容忍度協(xié)商出來的。觀察期越長反向同步的維護成本和資源成本越高太短業(yè)務(wù)不放心。我見過有些項目觀察期只有一周結(jié)果第四天暴雷回退的時候反同步數(shù)據(jù)量太大差點沒退干凈。一般來說業(yè)務(wù)量大的核心系統(tǒng)觀察期建議不低于兩周最好是一個月非核心系統(tǒng)可以適當(dāng)縮短。4.3 回退演練不能等到出事才練回退方案寫了幾頁紙但真正出事的時候能不能按流程執(zhí)行只有練過才知道。我們在正式切換之前做了兩次完整的回退演練每次都能暴露問題。第一次演練暴露出一個經(jīng)典問題切換后業(yè)務(wù)在PostgreSQL上生成了大量新數(shù)據(jù)回退時要把這些數(shù)據(jù)反向同步回Oracle結(jié)果因為表結(jié)構(gòu)里有個字段類型映射不一致導(dǎo)致批量INSERT失敗。這類問題如果不演練真到回退的時候就是災(zāi)難。第二次演練我們提前修正了映射又測了流量切換的腳本確認應(yīng)用重啟后能讀到Oracle的最新數(shù)據(jù)整個回退耗時控制在40分鐘內(nèi)。所以我的建議是回退演練必須包含數(shù)據(jù)層和應(yīng)用層兩層驗證。數(shù)據(jù)層驗證反向同步是否完整、一致應(yīng)用層驗證連接切換、緩存清理、配置修改是否順利。只測數(shù)據(jù)不測應(yīng)用回退后業(yè)務(wù)還是起不來。5. 常見問題與排查技巧實錄整個遷移過程中我們踩過的坑和排查過的問題不少挑幾個有代表性的寫在這里供大家參考。5.1 Oracle的CONNECT BY在PostgreSQL里怎么改Oracle的層次查詢CONNECT BY PRIOR是遷移的高頻改造點。PostgreSQL沒有直接對應(yīng)的語法要用遞歸CTEWITH RECURSIVE改寫。比如Oracle里SELECT emp_id, mgr_id, LEVEL FROM emp START WITH mgr_id IS NULL CONNECT BY PRIOR emp_id mgr_id;改成PostgreSQLWITH RECURSIVE emp_tree AS ( SELECT emp_id, mgr_id, 1 AS level FROM emp WHERE mgr_id IS NULL UNION ALL SELECT e.emp_id, e.mgr_id, t.level 1 FROM emp e JOIN emp_tree t ON e.mgr_id t.emp_id ) SELECT emp_id, mgr_id, level FROM emp_tree;這里注意遞歸CTE的性能調(diào)優(yōu)空間比較大如果樹的深度和寬度都很大比如超過10層、幾十萬節(jié)點建議提前用真實數(shù)據(jù)量壓測必要時加search_depth之類的優(yōu)化手段。5.2ROWNUM和ROW_NUMBER()的等價改寫Oracle里用ROWNUM做分頁很常見SELECT * FROM ( SELECT t.*, ROWNUM rn FROM big_table t ) WHERE rn BETWEEN 101 AND 200;PostgreSQL里直接用LIMIT/OFFSETSELECT * FROM big_table ORDER BY id LIMIT 100 OFFSET 100;這里有個容易踩的隱形坑Oracle的ROWNUM是在排序之前生成的所以如果原SQL里寫了ORDER BY再套ROWNUM語義上是先取前N行再排序和PostgreSQL的LIMIT語義先排序再取前N行不一樣。改寫時必須先確認原SQL的業(yè)務(wù)意圖不然數(shù)據(jù)就錯了。5.3 CLOB字段遷移到TEXT后的性能問題Oracle的CLOB在PostgreSQL里一般對應(yīng)TEXT類型。看起來簡單但實測發(fā)現(xiàn)一個現(xiàn)象某些業(yè)務(wù)對CLOB字段做頻繁的UPDATE和SELECT在Oracle里有專門的LOB段和空間管理性能還行到PostgreSQL的TEXT上如果寫入的文本很大幾十KB到幾MBTOAST機制會觸發(fā)壓縮和外部存儲性能會有波動。我們的處理辦法把大文本字段單獨拆到一張擴展表里和主表用外鍵關(guān)聯(lián)需要時才JOIN出來。如果業(yè)務(wù)確實要頻繁讀寫大文本還可以把external存儲打開避免每次查詢都加載整個大字段。5.4 空字符串與NULL的語義差異Oracle里和NULL是等價的SELECT NVL(, x) FROM dual返回x。PostgreSQL里不是NULL。這一條差異在數(shù)據(jù)遷移時特別容易產(chǎn)生臟數(shù)據(jù)。我們在校驗階段發(fā)現(xiàn)不少表的某些字段兩邊值看起來不一致查了半天才發(fā)現(xiàn)是源庫存在空字符串遷移時我們統(tǒng)一轉(zhuǎn)換成了NULL但業(yè)務(wù)代碼里有用判斷的邏輯導(dǎo)致行為變了。后來我們定了規(guī)范Oracle到PostgreSQL遷移時空字符串按照Oracle語義統(tǒng)一轉(zhuǎn)NULL同時業(yè)務(wù)代碼里所有 的判斷改為IS NULL。這個規(guī)范在改造階段就要同步給開發(fā)團隊。5.5 分區(qū)表遷移的正確姿勢Oracle的分區(qū)表遷移到PostgreSQL有幾種方案用PostgreSQL原生分區(qū)表基于聲明式分區(qū)或者用繼承分區(qū)或者用pg_partman這類擴展。我們的經(jīng)驗如果分區(qū)數(shù)量不大幾十到幾百個用原生聲明式分區(qū)就夠了如果分區(qū)數(shù)量上千原生分區(qū)的元數(shù)據(jù)管理會有壓力可以考慮用pg_partman管理自動建分區(qū)。遷移時的一個常見坑Oracle分區(qū)表的全局索引和分區(qū)索引在PostgreSQL里沒有完全對應(yīng)的概念需要根據(jù)業(yè)務(wù)SQL的過濾條件重新設(shè)計索引策略。不要照搬Oracle的索引結(jié)構(gòu)否則查詢性能會很差。5.6 序列遷移的斷檔問題Oracle的SEQUENCE不保證連續(xù)PostgreSQL的SEQUENCE也一樣。但兩邊序列的CACHE和INCREMENT配置不同步可能導(dǎo)致ID沖突或斷檔。我們遷移時把Oracle序列的LAST_NUMBER和INCREMENT_BY記錄到PostgreSQL序列的同名參數(shù)上還要考慮增量同步階段兩邊應(yīng)用各拿各的序列號等切換后PostgreSQL序列起始值必須比Oracle當(dāng)前值大很多否則切過來后新生成的ID可能和同步回來的歷史數(shù)據(jù)撞車。這個問題真的很隱蔽但如果爆了就是主鍵沖突直接拖垮切換。建議切換前用腳本檢查所有序列的當(dāng)前值確保PostgreSQL側(cè)的值遠高于Oracle側(cè)。5.7 常見問題速查表問題現(xiàn)象常見原因排查/處理辦法校驗時哈希不一致字段拼接順序不一致、NULL/空串沒統(tǒng)一、浮點精度差異統(tǒng)一拼接規(guī)則字段值做標準化增量同步延遲持續(xù)增大Kafka消費能力不足、目標庫應(yīng)用能力差、大事務(wù)卡住增加消費者并行度排查大事務(wù)必要時手動補數(shù)切換后應(yīng)用報驅(qū)動錯誤JDBC連接串或驅(qū)動版本不兼容Postgres JDBC驅(qū)動與Oracle JDBC驅(qū)動用法不同檢查URL參數(shù)、schema設(shè)置存儲過程執(zhí)行失敗PL/SQL和PL/pgSQL語法差異人工改寫重點處理游標、動態(tài)SQL、異常處理查詢性能嚴重下降統(tǒng)計信息未收集、索引缺失、優(yōu)化器差異切換后立即執(zhí)行ANALYZE根據(jù)執(zhí)行計劃補索引回退時反向同步失敗類型映射不一致、主鍵沖突、循環(huán)依賴提前演練建立主鍵沖突處理規(guī)則類型映射表要用同一份我自己走完這個項目后最深的體會是數(shù)據(jù)庫遷移拼的不是單點技術(shù)有多強而是流程管理和風(fēng)險把控。這三個目標——低中斷、可校驗、可回退——每一個都對應(yīng)著一整套方案和工具鏈而它們之間又互相影響。建議準備動手的朋友先把你現(xiàn)有的停機窗口、數(shù)據(jù)量、業(yè)務(wù)容忍度都擺出來用這些邊界條件去倒推每一步該怎么做。方案設(shè)計得越細執(zhí)行的時候才越穩(wěn)。再補充一點遷移過程中所有腳本和命令一定要先在小環(huán)境里完整演練一遍帶上真實數(shù)據(jù)量的1%到5%壓測一下性能別等到正式切換才發(fā)現(xiàn)導(dǎo)出速度、校驗耗時、增量延遲這些數(shù)字完全不可控。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色婷婷香蕉| 国产av强奸美女| 97香焦色区| 久久久久久日韩| 花花AV导航| 久久久久久久97| 熟女自慰久久久| 人人色97| 中出91| 久久久久久亚洲中文| 欧美 亚洲 在线| 欧美日韩性感| 盗摄 精品 另类 一区| 超碰激情808| www.久久久久| 女色视频社区| 丁香五月成人| 色五月首页| 久久久久亚洲Aⅴ无码| 91久久九九精品国产综合| 97情超碰色| 东北老女人的激情视频| 人妻无码视频一区二区三区久久| 欧美色图 人妻| 极品五月天噜噜| 好吊妞转入那个网| 欧美日韩青操| 美日韩一二三区| 久久综合精品一区二区三区| av情色影音| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 草伊人高潮喷水超碰| 日本片日本片祼观看网站在线看中文版网页在线看 | 一级AV性爱| 五十路一区无码| 精品无吗m| 中文字幕丰满子伦无码专区在线视频最新| 老熟女乱伦片| 无码 黑人一区二区三区| 97超碰香蕉| 久久精品熟妇丰满人妻99| 成人日本片久久久蜜桃| 女生看匆91网站| 久操视频在线| 亚洲成人ab| 人人妻人人玩人人澡人人爽| a片 xxxx受爽视频| 男人女人18禁片免费看网站| 黄片qw| 国产乱伦亚洲| 91人妻Pr| 超91综合网| 很很干很很操| 国产免费久久精品99re韩国| 91精品国| 日本人妻最新在线中| 精品蜜乳AV免费观看| 中文字幕人成乱码熟女香港| 午夜欧美女人操逼| 国产超碰在线一区| 妇女乱色二区| 日本一级真人黄色性爱视频| 中文字幕一二区二三区人妻专区| 久久AV无码网址| 亚洲另类在线观看| 色盈盈影院| 国产99999久久精品| 91视频综合在线| 风月影院十八禁| 一级性爱视频免费观看 | 一级AV性爱| 操逼逼无码| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 久久久久久久97| 午夜男女爽爽爽影院视频| 操逼片中文| 东北夫妻性偷拍| 日韩久草| 亚洲欧美国产中文视频| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 日韩欧美国产高清视频| 99精品丰满人妻无| 国产AV人人夜夜澡人人爽麻豆| 成人一二三区| 91碰超| 亚洲熟妇图片| 色欲天天综合久久久无码网中文| 无码天天操| 91在线美女| 久久久久久久久国产| 国产日本一区二区三区蜜臀在线观看| 综合五月婷婷| 97精品全部| 亚洲国产一区二区入口| 男人天堂.AB| 91精品少妇搡搡搡| 天天激情综合站| 97视频观看| 亚洲精品黄码久久久久| 国产Aα| 视频二区美腿丝袜制服人妻欧美| 亚洲男人天堂2| 久久久久久网址| 91碰碰碰| 九九热九九| 日韩人妻无码专区| 97中文综合| 日韩一级特黄av毛片| 伊人大香蕉在线| 97视频免费播放| 国产精品视频白浆免费| 日日干男人的天堂| 91碰超| 嫩草 人人网精品| 中文字幕国产在线天堂| 超碰亚洲欧美日韩无| 国际精品久久久| 极品白嫩美女白浆成人福利在线看| 日日A∨| 中文字幕久久婷婷丁香五月天| 毛片电影一区二区三区| 青草伊人网| 中文字幕狠狠玩| 老熟妇一区二区三区| 亚洲啪啪视频一区二区| 日韩国产九九精品一区二区三区毛片| 风流老熟女一区二区三区l| 91天天c| 老司机深夜18禁污污网站| 一区二区三区四区姦女| 欧美激情视频在线一区| 男人的天堂在线| 精品高清一区二区三区三州| 五月开心久久AV官网| 可以在线观看的黄色网址| 国产精品丝袜久久亚洲不卡| 亚洲欧美成人在线| 久久午夜色播影院免费高清| 久久国产视频专区一二三| 秋霞一级鲁丝片A片| 91高跟美女在线播放| 中日亚韩免费视频| 国产一区在线播放| oumeizonghese,www| 在线国产福利网址导航| 亚洲日韩资源| 日韩影片中文字幕一区二区三区| 日韩一区二区精彩视频| 日韩欧美久久婷婷网站| 国产欧美美女免费观看视频| 国产精品一级特黄aaa大片在线观看| 精人妻无码一区二区三区伊人直播| 美女黄频a美女大全免费皮| 九九九九精品精| 欧美日韩黄色片一区二区三区四区人与兽做爱 | 2023天天操夜夜操| 青青青艹在线视频| 盗摄 精品 另类 一区| 午夜人人操| 激情久久日韩精品中文字幕麻豆| 91大胆欧美| 日本视频一区二区三区| 国产99999| 欧美玖玖爱免费玖玖| 亚洲情色电影网| 国产日本久久免费精品| 亚洲无码国产精品久久| 97在线/亚洲| 亚洲丝袜B诱惑| 99久久久er直播网址| 狠狠操狠狠操操| 91强在线播放| 中文字幕97色| 4141514逼喷水三级片| 五月丁香社区婷婷日韩欧美精品影院 | 精品1区2区3区| 婷婷九月国产| 超碰久久草| 婷婷色一区| 国产A v无码专区| 超碰97护士| 91男人综合| 久久超碰大香蕉| 日韩人妻资源网| 日本亚洲熟女视频| 人妻乱仑一区二区三区| 国产不良强奸视频免费看| 亚洲欧美在线丝袜| 91美女视频直播| 情色五月天网| 国产精品丝袜久久亚洲不卡| 男生女生啊啊啊啊| 青青草久久一区网| 95精品在线| 欧美后进式| 国产热RE99久久6国产精品首| 国产久久成人| 国产一级高跟丝袜| 91精品微拍福利| 国产内射爽爽大片| 超碰在线人人射| 啊啊啊啊免费视频| 日韩性爱小视频| 60秒不遮不挡| 97爱亚洲| 超碰成人人人爽人人爽| 欧美黄色手机在线观看| 国产欧美日韩一区二区三区| 在线观看岛国有码| 久久久久成人亚洲国产| 日韩精品区二区三区不卡| 亚洲黄色影视| 超碰中文字幕人妻草一区| 99热免费| AV色五月| 国内一级精品| 日本性感人妻91| 三级日本一区二区三区| 亚洲精品乱码线路中文字幕| 国产精品一级毛片不卡视| 日韩午夜精品一区二区三区电影| 免费啪啪一级视频| 亚洲天堂电影精品一区| AV老汉| 98精品国产乱码久久久久久| 国产精品一区二区后入| 97久久超碰亚洲| 97碰碰色| 不卡中文字幕aⅴ在线| 二男一女成人A片| 97人人操人人摸| 被体育老师抱着c到高潮| 狠狠操综合| 狠狠干综合| 国产久久久9999| 性生活无遮挡纯毛片在线看| 日韩本不卡视频在线观看| 亚洲毛片基地专区| 一个国产在线综合网站| 破苞ⅩXXX性无码动漫无码| 亚洲人妻av| 亚洲熟妇无码一区二区三区| 久久一区二区加油站| 舔足天天操天天射| 秋霞久久亚洲精品成人| 青青草视频久久久久| 蜜桃臀久久| 美欧色综合| 日韩精品国产一区二区| 久久精品人体AV| 欧美乱妇狂野欧美在线视频| 天天综合色图| 亚洲精品无码成人久久久99| 中文字幕 人妻不满 在线视频| 欧美成人精品一区二区三区| 夜夜爽夜夜摸夜夜操免费视频| 大香蕉伊人75| 1禁看欧美黄片免费看| 97五月天| 美女爽到高潮91| 无码免费在线观看黄色片| 久久婷婷综合国际产色怕| 啪啪91| 久久精品女同亚洲女同13| 五月激情小说| AV久日| se吧提供国产乱老熟视频胖女人 | 91色伦综合| 99re超碰| 九九碰九九爱97超碰| 97久久精品国产| 99re黄| 强奸乱伦Av网| 欧美日韩精品国产91| 91视频在线观看18| 久热99| 欧日韩一二三f区| 把腿张开老子CAO烂你| 一区二区三区四区久久视1| 亚洲天堂2020| 91一起操| 国产又粗又长又大的视频| 黄在线| 第45页一区二区| dy888午夜老子影视达达兔| 天天色播亚洲综合网站| 精久久久| 天天日少妇逼AV| 蜜臀99久久国产| 亚欧性爱在线无码| 97ai亚洲| 亚洲无码99| 亚洲一区中文字幕| 天天日少妇逼AV| 日韩天天综合| 久久综合日韩亚洲欧美| 黄色成人网久久久久久| 精品一区96| 自拍偷拍第26| 91 亚洲情侣偷拍 久久| 偷窥自拍亚洲天堂网爆| 欧美天天综合网| 国产suv精品一区二区四| 91五十路| 色第一页| 玖玖玖玖精品国产剧情| 久久精品噜噜噜成人看免欧美大片| 国产精品一区二区三区,亚洲综合 性开放中文AV高清无码免费看 | 婷婷五月天激情网| 欧美的性爱网站免费| 久久久久久中文版| 精品一区二区人妖| 欧美性爱超碰97| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 巨爆乳一区二区爆乳区| 日日日日做夜夜夜夜做无码97| 操比国产| 一起草高清无码| 粉嫩AV一区夜夜嗨| 国产精品秘 福利姬在线观看| 夜嗨影院| 日韩超碰97| 国产精品网站www| 国产一级作爱毛片| 久久久久久99AV无码免费网站| 在线亚洲精品久久久| 国产日韩欧美亚洲精品95 | 欧美精品庄| 亚州再线| 久热9| 国产一级舔足在线观看| 日本不卡一区二区三区| renqi久久久久久久久久久久| a片 xxxx受爽视频| 丝袜色综合| 午夜精品一区二区三区三上悠亚| 精品无码不卡视频| 天天天干977| 欧美日韩黄色片一区二区三区四区人与兽做爱 | 精品一区二区2| 色蜜AV| 极品综合| 嗯嗯不要视频| 激情文学欧美| 香蕉一区二区三区在线视频| 色综合久久88色综合久久天天| 精品一区二区三区蜜桃| 人澡逼| 国产一区二区三区中文字幕| 男人高清无码一区二区| 思思热在线视频免费| 国产9熟妇视频网站| 熟妇人妻一区二区 | 男女啊啊啊啊啊| 蜜桃久久久久久久| 色综合九九| {男男暴菊gay无套网站| 久久久久夜夜夜夜| 桑老女人九区| 欧美日韩97在线| 操操操操操操| 伊人大香蕉在线| 婷婷丁香六月| 久久鲁干| 强奸乱伦免费网站| 亚洲精品国产av天美传媒| 国产精品老熟女一区二区| 99热伊人| 亚洲日韩国产精品| 亚洲无码日韩电影| 97日韩| 亚州,欧美在线| 色网综合网| 91九色丨国产丨爆乳| 免费视频a级毛片免费视频| 久久夜黄色无码A级大片| 伊人一级免费黄片| 日本东京热久久久电影| 午夜超碰| 免费操逼91| 青草一区二区| 少妇熟女一区二区三区| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 夜夜久久久| 色欧洲97| 日韩熟女操逼| 色黄污美女啪啪啪免费网站| 国产美女在线精品免费看| 日日摸日日碰夜夜爽视频| 久久原创中文| 亚洲欧美洲综合| 农村少妇久久久久久久| 日韩欧美~中文字| 欧美激情亚洲情色| 大香蕉人妻久久| 青青草影视蜜久久| 蜜臀久久99精品久久久久久婷婷| 夜夜躁狠狠躁日日躁av| 超碰97人妻免费在线| 青春草莓视频在线观看网址| 三级AV入口| 亚洲成人无码影院| 区日韩亚洲乱码av电影| 操美女人妻| 激情四射熟女丝袜| 欧美欧美少妇| 曰韩人妻中文字幕在线 | 婷婷中文网| 免费看欧美美女黄色大片| 强免费黄色网址| 99精品久久| 粘花网06av视频| 亚洲欧美一区二区不卡视频播放| 亚洲日韩欧美一区二区| 天天影视91看看| 久久男人天堂| 中文字幕中文字幕一区二区| 欧美日韩国内不卡| 日韩 人妻 精品| 中出后入| 国产精品久久泡妞网站| 三级日韩一区二区三区| 欧美人人曰人人操人人射射| 免费精品福利在线观看| 婷婷国产精品九区| 久久久内射良家| 国产一级内射高清视频| 操逼国产免费| 91蜜臀在线久久久久| 97超碰资源网| 欧美亚洲图片| 国产精品一区二区三区,亚洲综合| 日本成人电影资源网| 日本在线播放不卡一区| 1024手机看片欧美日韩| 久久久555| 色色网91| 一牛影视久久久一区二区三区| 操逼999| 91制服丝袜中文字幕| 日韩在线性爱免费视频| 2019天天操天天爽天天拍| 我想要啊 啊 啊| a片自拍直播视频| 午夜大香蕉| 嗯嗯啊好大| 日日97| 91操操操操| 亚洲一区中文字幕一区| 大香蕉在线视频重口味毛片在线| 成人av动漫在线观看| 日韩二级| 久9精品| 超碰在线人妻| 亚洲人精品久久久| 精品人妻av在线播放| 97 亚洲 日韩 欧美 在线| 夜夜嗨一区二区三区直播内容| 青草草免费网站av| 一区二区三区蜜桃成人撸久久东京热 | 亚洲色图91| 人妻日日干| h色99999| 嗯啊抽插大香蕉网页| 欧美性战999| 好色综合| 久久超碰、| 久久九色| 欧美少妇一区二区三区| 国产粉嫩蜜臀av一区二区三区| 九九九九九九九精品视频| 90后后入| 超碰成人国产| 嗯嗯啊啊啊好爽| 五月丁香影视| 欧美性夜| 男人下部插入女人下部| 国产真实子伦对白| 国产亚洲色婷婷99精品91| 风月影院十八禁| 亚洲人在线| av影片在线观看不卡| 久久天天摸| 欧美性爱综合,免费| 欧美黄色图片| 国产精品美女久久久久AⅤ国产馆| 欧美亚洲美少妇一区二区| 以及麻豆国产入口在线观看免费| 九九夜精品九九在线| 搞中出久久| 亚洲性猛| 五月婷婷激情网| 熟女人妻一区二区三区| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 国产精品69久久久久久久 | 亚洲一区制服诱惑| 亚洲色婷婷| 91欧美亚洲| 国产传媒一区日韩| 日本在线不卡v二区| 99av| 97 国产一区| 超碰成人最新最好看| 清纯唯美综合亚洲| 久久久艹艹艹| 波多野结衣被操50分钟免费视频| 日韩无码第3页| 中文伊人大香蕉视频| 久久久久久亚洲Av无码| 欧美日韩人妻精品一区二区三区| 久久久久久久久久久久久久9999| 91搞逼视频| 亚洲Av噜噜一区二区三区妖精| www.色婷婷色综合| 久久久久久久强迫| 国产三级中文字幕粉嫩| 韩国三级三级BD在线| 精品久久久久av影院| 深夜激情| 国产第11页| 狠狠干综合| 91亚洲色人| 男女啊啊啊| 熟妇高潮精品一区二区三区下载| 激情婷婷五月天| 亚洲制服aⅴ中文字幕| 好爽视频在线观看视频| 激情久久日韩精品中文字幕麻豆| 青青青操| 人妻少妇一区二区| 91社区拍啪人妻| 麻豆久久一区二区三区| 91中文精品日韩欧美在线 | 99re这里只有精品2| 草伊人高潮喷水超碰| 久久一二三四五六七八九区区区 | 精品一区二区啪啪啪| 少妇啪啪自拍| 欧美不卡五十路| 综合亚洲欧美| 色色青青久久| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 国产福利一区二| 精品国产乱码久久久影院| 青娱乐手机日韩在线视频| 夜夜嗨一区二区| 黄片www.| 久久精品国产亚洲AV高级北京| 性爱综合一区二区| 91欧洲国产成人久久精品网站| 91亚.色| 97久久国产亚洲精品超碰热| 蜜臀久久久| 丰满少妇一区二区三区四区观看| 男女打扑克高清网站| 超碰在线91| 亚洲色图欧美视频| 日韩精品在线放| 午夜亚洲WWW湿好大| 青春草莓视频在线观看网址| 蜜臀99精品国产高清在线观看| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 9 7超碰在线免费观看| 骚货人妻偷情自拍在线视频| 色婷婷影视| aaa一级黄片| 午夜国产成人福利视频| 亚洲码专区| 精品一区二区人妖| 2020国产精品| 激情六月天| 色九九九九久| 久草精品国产蜜臀 | 99国产精品| 岛国黄片网站| 国产AV毛片| 亚洲1区2区三区高清中文字幕| 网页导航五月天免费一二三区 | 超碰在线第一页| 大香交| 亚洲图片小说欧洲| 91 欧美| 免费自拍三级综合| 九九久久一区二区伦理| 久久AV无码网址| 精品久久視頻在线| 亚熟在线| 国产91专区| 国产久久久久久| 亚洲āv网址在线观看| 国产精品一区二区校花| 日韩无码专区| 天色综合网| 久操影视| 国产强奸AV在线| 国产黄片在线免费观看| 亚洲欧美经典一区二区| 97在线欧洲| 久久精品男人的天堂| 青草精品视频一日本久久久久网站| 最新国产精品| 在线中文字幕极品av| 婷婷色综合| 日韩资源网| 久久丝袜| 人妻干天天| 综合婷婷| 性爱AV天堂| 校园春色AV天堂| 国产精品熟女九色九色蜜臀| 99热这里只有精| 97免费免费视频网| 精品人妻一区二区三区日产| 国产精品制服丝袜清纯唯美| 野狼激情网| 操老熟女AV| 婷婷色综合欧美日韩| 亚洲少妇综合在线播放| 一区二区三区四区五区高清无码永久视频 | 亚洲欧美国产其他二区| 人妻出轨一区二区三区| 大色网久久| 天天综合网日韩7799| 九九九九九九九精品视频| 综合视频91| 奇米四色网| 偷拍伦理视频| 97国产|免费| 中日韩熟女| 97干色天堂| 欧美少妇人妻| 色婷婷视频| 秋霞福利网| 成人av影院在线观看| 97视频观看| 色99久草| 欧美性爱www免费版| 女人一区| a片自拍直播视频| 91精品电影18| 又大又大又大又粗爽高潮观看| 秋霞一级视频在线观看免费| 婷婷美人网| 一级做a爰片性色毛片久久| 99热这里只有精| 大香久久| 防屏蔽在线视频| 女优大全 - 91n| 91狠狠综合久久久| 99精品九九九九九九| 狠狠干狠狠色| 91bbbbbb| 欧美1727免费观看视频| 亚洲在线a| 91亚洲精品青草| 极品出轨视频网站| 日本狠狠干| 校园春色第一页| 亚州少妇| 在线观看亚洲成人精品| 亚州再线| 日人妻视频91| 亚洲亚洲亚洲天堂天堂| 熟妇操花| 超碰在线一区| 欧美色图私拍91| 嗯嗯啊啊操我| 四虎免费看黄| 久久一级无码精品毛片6| 日韩欧美~中文字| 欧美性爱五月天| 999久久久国产精品| 麻豆AV一区二区| 成人精品久久久午夜福利| 日日妻色网| 手机看片1024你懂的国产| 情色大香蕉| 久久国产视频专区一二三| 五十路六十路七十路熟婆| 久久久精品一区二区| 国产精品亚洲一区二区三区四区| 免费视频观看60秒| 日逼五月天| 自拍鲍鱼一区在线高清观看免费| 日韩人妻无码不卡网站| 懂色综合久久久| 欧美精品成人在线播放| 中国和日本人色哪个不下载能放| 操操AV电影| 人人摸人人添人人操| 欧美天堂在线| 91五月天| 婷婷五月天补不补| 91综合网| AV色五月天| 怡红院怡春院| 国产精品久久成人免费| 手机午夜电影神马久久| 国产日本顶级一区二区三区| 天天摸夜夜摸| 激情婷婷| 亚洲九月丁香| 中文字幕三四区| 激情情色五月天| 色欲人妻一区二区在线| 丁香五月天社区| 激情国产乱伦Av| 91亚洲最新在线| 青青操少妇| 亚洲色图超碰在线| 首页中文字幕中文字幕免费| 欧美人与动性人交a| 色路综合| 日韩欧美中文字| 亚洲 图片 欧美 色图| 色婷五月天| 国产精品一级毛片不卡视| 成年人黄色视频免费| 人妻少妇精品久久久久久| 欧美日韩亚洲电影| 亚洲国产精品久久久男人的天堂| 六月丁香网| 秋霞欧美性爰视频| 国产精品爽爽va在线观看98| 国产无吗在线播放| 黄片免费日韩| 亚洲无992tv| 欧美性性性| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 九九RE视频在线精品| 国产1024在线播放| 亚洲黑人在线| 久久夜夜| 日本在线观看网址| 欧美91精品国产自产| 成人久久久| 超碰99在线| 97在线免费看视频| 91欧美亚洲| 96麻豆精品一区二区三区| 0755午夜福利视频| 日韩成人小视频| 91日日夜夜| 青青操日韩| 青青久草| 97干97色| 亚洲图片欧美色图| 超碰97亚洲| 91精品国产91综合久久蜜臀| 综合夜夜| 欧州一区二区三区四区| 色色毛片| 亚洲乱色熟女一区| 377p欧洲日本亚洲大胆| 精品人妻一区二区视频| 色狠狠 - 百度| 中文字幕日韩人妻视频一区二区三区| 日本成a人v网站在线观看| 丁香七月婷婷| 国产精品爱欲| hd成人一区二区在线| 乱老女人一区二区视频| 志村玲子视频一区二区| 偷拍网站久久男女男| 爆乳免费黄网站| 10000部十八禁看电影| 一区二区三区色综合| 国产三级中文字幕粉嫩 | 日本高清电影欧美色图| 久久精品国产亚洲AV高清演员表| 7777奇米影视久久| 国产精品呦一区二区三区| 国际精品久久久| 色爱综合网| 亚洲欧洲精品视频发布| 日本操BAV| 亚洲97精品| 国产AV中文| 九九九九九九成人| 爱欲AV| 国产极品久久久| 色悠久久久av| 9999免费精彩视频| 欧美中字二区| 日韩欧美国产高清视频| 自拍偷拍国产欧美日韩韩| 国产精品成人无码a v毛片| 国产亚洲精品美女久久久m| 日本一级一级一级一级| 亚洲男人的天堂一区二区| 色五月综合| 欧美亚洲素人制服精品| 久久思思热| 亚洲精品丝袜| 传媒在线观看一区二区三区| 青娱乐休闲视频在线观看| 看大黄色大片原件| 99色色| 国产一区二区三区不卡手机在线| 韩日巨乳美女免费视频在线观看| 久久久月天| 亚洲国产尤物yw在线观看| 久热这里| 大香蕉青青9| 精品人妻一区二区三区日产乱码| 国产极品精品美女视频| 丰满人妻一区二区三区免费,| 色噜噜人妻丝袜AV资源| 久久久人妻| 国语国产操逼伊人AV网| 99久久com免费视频′| 四虎在线免费视频| 久久久久久9| 精品婷婷| 97bbn| 四虎精品永久在线观看| 天天做日日做| www.操| 香蕉视频欧美一卡二卡| 精品性爱无码在线播放| 好舒服视频| 婷婷色色五月天福利| 欧美黑人精品一区二区| 大香蕉之青青草原| 成年人黄色视频免费| 天天综合~91入口| 欧美日本视频一区| 欧美一级黄色18片免费看| 中文久久一区| 91性网| 无码伊人久久大杳蕉中文无码| 色九九九综合| 人人艹亚洲| 熟女网站最新| 综合激情97| 超碰色综合| 97香焦色区| 亚洲国产精品久久AV| 欧美91网站| 99热超碰在线| 大香焦A片| 久久国产三区| 成人日本片久久久蜜桃| 精品国产丝袜一区二区三区乱码| 久久久精久久久| 国产精品久久aV| 色一射色一射| 欧美区亚洲区偷拍区 | 337p大胆噜噜噜噜噜91Av| 新怡红院| 日本在线激情一区二区三区 | 国产高清午夜成人在线观看| 中文字幕在线观看第二页| 超碰91在线| 亚洲最大黄网| 亚洲精品乱码线路中文字幕| m欧洲一级午老| 精品性爱一二三区| 天天影视91看看| 无码免费一区二区三区啪啪| 色臀av| 超碰性爱97| 强奸乱伦亚洲第一页| 国产精品午夜精品| 大香蕉伊人久久| 中文字幕第23区| 无套内射性感少妇视频| 青草成人免费视频一COm| 爱干爱射网啊啊啊| 国产一区二区三三视频| 国产精品电| 99性爱视频| 国产一区二区三区白丝| 超碰伊人在线| 国产黄a三级三级三级av在线看| 麻豆久久精品亚洲精品88| 五月天社区| 91在线秘 男同| 激情文学小说一区二区 | 久久亚洲熟妇在线视频| 首页中文字幕中文字幕免费| 9丨久久九九九| 18岁禁 茉莉成人久久| 岛国成人av在线播放网址| 久久久久久九| 亚洲丝袜色| 18禁久极品美女久久哦哟呀!| 久久婷婷伊人| 欧美传媒| 中文字幕第9页萱萱影音先锋| 丰满人妻-区二区三区免费看| 激情婷婷黑人91| 18精品一二区| 日本久久久久久久久久| 久久精品28| 射综合网| 亚洲成人黄色在线观看| 91在线精品一区二区三区| 成人一道本免费视频| 久久久亚洲Av| 日日夜夜精品| 国产无码一二三区| 九九碰九九爱97超碰| 浪人综合网| 超碰在线国产| 成人AV素股で擦久久| 台湾肥佬网一区二区三区| 成人老鸭窝人人在线视频| 久久久久ab| 亚洲少妇激情一区二区三区| 亚洲欧洲激情| AV女优男人的天堂| 99无码精品| 欧美熟爽综合| 在线 亚洲 网爆 自拍| 日日噜噜夜夜久久亚洲一区二区| 嗯嗯啊啊的视频| 高潮9999外国| 女性喷水高潮在线观看| 一起草欧美| 中文自拍欧美影视| 日韩无码嘿咻黑热久| 97爱爱影院| 9999久久久久| 欧亚日韩中文在线| 成人乱人伦一区二区| 久久夜黄色无码A级大片| 婷婷五月天久久久| 蜜臀亚洲中文| 午夜久久久| 亚洲国产精品无石码久久| 日韩中文字幕精品一区在线| 综合色啪| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 啪啪啪综合网| 久久中出在线| 国产女人9999| 天天澡天天爽日日AV| 日日操丁香五月天| 国产精品久久久亚洲一区| 校园春色制服丝袜中文字亚洲| 国产福利夜| 国产中文字幕在线观看| 天天射夜夜操| 欧美另类综合久久| 天天干2区3区| 97 国产精品| ji熟女.com| 99热国产| 插入粉嫩少妇视频| 美女天天干| 在线99热| 日韩中文字幕2020| 一区二区三区国产在线播放| 自慰白浆在线观看| 91天天综合网,天天综合网| 啊啊啊啊,啊啊好多水| 欧美传媒| 日韩有码免费视频| 欧美色色人| 欧美成熟性爱精品| 大香蕉伊人色偷偷在线| 在线五区| 女欧美一区二三区| 中文字幕第页| 日本ZZ高免费A级视频| 亚洲国产av中文字幕久久| 99热色精品| 男人天堂久久精品不卡| 日韩操逼HD| 99久久com免费视频′| 欧日韩一二三f区| 操逼操网| 九九九九九九视频| 免费AV中文网在线观看| 丁香婷婷久久| 加勒比久久av| 久久美女国产| 久9久| 中文字幕熟女人妻丝袜| 五月婷婷丁香| 天天干1区2区在线| av无码av无码专区| 精品999日本| 岛国片在线播放| 翘臀vidoes| 九热中文字幕| 日本超碰在线国产一区| 色淫网站优优视频| 精品性爱一区二区| 91天天美女| 国产精品久久久三级无码| 曰本特级特黄特色黄色A级网站高清在线免费看| 美日韩男女操屄视频| 伊人成人情色综合| 亚洲天堂五月天国产| 男人的天堂一区三区| 久久久草草精品| 免费看久久久性性| 97精品一区| 在线观看av区| 国产综合久| 吻戏激情性巴克| 亚洲色人| 欧美嗯啊……在线观看视频免费| 热99这里有精品综合久久| 精品人人| 性videos欧美熟妇hdx| 亚洲一二三精品久久网| 一本色道久久天天射天天干| 日欧毛片久久| 最新中文字幕精品在线| 超碰97首页| 中字乱伦AV| 久久久久久九九九| 在线 亚洲 网爆 自拍| 激情小说图片亚洲首页| 1区2区3区中文字幕日韩| 国产曰批免费观看久久久| 啊嗯嗯啊好大好爽| 欧美性爱十八禁| 色爱亚洲| 中文字幕少妇色| 欧美,日韩综合久久| 久噜噜| 91九色首页| 日韩视频中文字幕| 91AV天堂| 国产福利影视| 国内伊人久久久久久网站视频| 二对二中文字幕。| 手机在线观看不卡无码av| chaopen97久久| 久久欧美按摩999| 国产欧美精选激情视频| www.成人无码| 伊人久久88国产女| 黄片国产精品一区二区| 可乐操亚洲蜜911| 午夜欧美J进J出白浆流出久久久| 国产隔壁老王影院在线| 久99在线免费观看视频| 人人色人人射人人妻| 极品尤物女神在线观看| 日本熟妇人妻一区二区三区| 综合网色| 亚洲久久久| 综合国产97| 成人免费在线网站| 国产强奸无码乱伦| 自拍第一页| 精品久久久久黄少妇| www.大香| 2021国产成人精品久久| 九热超碰| 国产精品午夜成人福利| 丝袜美腿制服人妻二区中文字幕| 91bbb| 亚洲日本大香蕉1| 欧美老妇综合网| 超碰人人超在线观看| 人人操人人舒服| 91丝袜美女视频| 国产九九九九九九| 爱我干综合| 久久九九视频九九视频| 免费在线看黄片av| 天天干人妻视频| 久久人妇| 亚洲成人av色网| 欧美啪啪女女| av网页一区二区三区| 激情五月天中文字幕色| 麻豆区久久久久亚| 无码视频一区二区| 爱爱动态120秒| 三级三久久线久久99久目本WW| 午夜精品久久久久久久久久久久久| 加勒比人妻综合| 99re在线观看| 人人手机欧洲亚洲国产人妻| 婷婷久久久| 成人 日本A片无码8888| 久久久精品中文字幕爱豆| 日韩欧美加勒比| 啪啪啪综合| 男人的天堂久久狠| 十八禁黄色成人网站观看| 欧美AB在线观看| 农村妇女一级二级三级视频| 久久精品性| 午夜AV人气不卡| 中文字幕一区二区免费在线| 国产91福利小视频在线观看| 久久精品熟妇丰满人妻99| 老鸭窝日丰县女人| 欧美亚洲激情一二三| 五十路二区在线| 日本护士高潮| 岛国小电影| 天天操综合网| 丁香九月婷婷| 婷婷伊人网| 欧美99热| 亚洲欧洲日韩天堂av| 免费αV在线视频| 青娱乐淫乱1314| 国产免费一区2区3区| 人人么人人操| 国产成人欧美精品在线| 大学生美女口爆| 精品视频在线观看精品| 日本中文熟女视频| 97在线免费视频| 蜜桃av色偷偷av老熟女| 男人天堂2019| 男人天堂新| 欧洲精品欧洲精品| 国桃视频产巨乳精品一区二区在线| 久久婷婷一区二| 国产亚洲在线| 国产一区二区欧美日本| 国内精品伊人久久久久影院会| 色99视频| 欧美色三级片91| 97色97好| 97色插| 久草婷婷| 青青草无码视频| 九九热精品视频六| 久久久蜜桃臀无码视频| 不卡在线观看视频| 午夜视频黄| 亚洲精品啪视频| 五月激情天| 欧美久久毛片基地| 台湾大香蕉99热| 九九热午夜欧亚国产视频| AV天堂因数| a亚洲欧美色欲| 亚洲国产尤物yw在线观看| 欧美日本国产日韩激情视频| 激情五月综合| 色好看av| 夜夜骑日日| 日本视频在线中文字幕| 秋霞一级鲁丝片A片| 黄色大香焦1级‘′‘| 啊啊啊不要好疼视频| 婷婷色在线| 熟女天天干| 亚洲中文sv| 欧美色图欧美| 久久久久久亚洲Av无码| 中国探花熟女| 日韩97超碰中文字幕| 91天天爱| 五月天伊人网| 外国91| 一,爱啪啪,在线免费视频|