日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

從自建Redis遷移至云數據庫Tair(兼容Redis)實例

重要

本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。

本文介紹如何使用數據傳輸服務DTS(Data Transmission Service),將自建Redis遷移至云數據庫Tair(兼容Redis)實例。DTS支持全量數據遷移以及增量數據遷移,同時使用這兩種遷移類型可以實現在自建應用不停服的情況下,平滑地完成自建Redis數據庫的遷移上云。

前提條件

  • 已創建源自建Redis實例和目標云數據庫Tair(兼容Redis)。目標云數據庫Tair(兼容Redis)實例的創建方式,請參見步驟1:創建實例

    說明

    當前DTS僅支持直連模式的云數據庫Tair(兼容Redis)實例。

  • 自建Redis的版本為2.8、3.0、3.2、4.0、5.0、6.0。

  • 自建Redis可正常運行psyncsync命令。

  • 目標云數據庫Tair(兼容Redis)實例的存儲空間須大于源自建Redis數據庫已使用的存儲空間。

注意事項

類型

說明

源庫限制

  • 帶寬要求:源庫所屬的服務器需具備足夠的出口帶寬,否則將影響數據遷移速率。

  • 源庫的操作限制:如僅執行全量數據遷移,請勿向源實例中寫入新的數據,否則會導致源和目標數據不一致。為實時保持數據一致性,建議選擇全量數據遷移和增量數據遷移。

  • 源庫單機版Redis遷移至目標庫為集群架構的操作限制:由于集群cluster只允許單個命令操作單個slot,若在源庫執行多Key操作時,Key不在同一個slot或涉及多個slot,則會出現報錯

    CROSSSLOT Keys in request don't hash to the same slot

    建議在DTS遷移過程中僅執行單Key操作,以免導致鏈路中斷。

  • 如果源庫中的某些Key使用了過期(expire)策略,由于可能存在Key已過期但未被及時刪除的情況,所以在目標庫中查看到的Key數量(例如通過info命令查看)會比源庫的Key數量少。

    說明

    源和目標庫中,未設置過期策略或未過期的Key數量是一致的。

  • 為保障遷移質量,DTS會在源庫中插入一個前綴為DTS_REDIS_TIMESTAMP_HEARTBEAT的Key用于記錄更新時間點,如果源庫為集群架構,DTS會在各個shard上均插入該Key。遷移過程中會過濾該Key,遷移任務結束,該Key就會過期。

  • 如果源庫為只讀實例或者DTS賬號沒有寫(SETEX)權限,上報的延遲可能不準確。

  • 若您需要遷移增量數據,則任務使用的源端賬號必須具備PSYNCSYNC權限。

其他限制

  • DTS在執行全量數據遷移時將占用源庫和目標庫一定的資源,可能會導致數據庫服務器負載上升。如果數據庫業務量較大或服務器規格較低,可能會加重數據庫壓力,甚至導致數據庫服務不可用。建議您在執行數據遷移前謹慎評估,在業務低峰期執行數據遷移。

  • 如果目標數據庫內存不足,觸發數據逐出時,由于云數據庫Tair(兼容Redis)的默認數據逐出策略(maxmemory-policy)為volatile-lru,會導致目標庫與源庫數據不一致的情況,但不會影響任務的正常運行。

    為避免該情況發生,建議將目標庫的數據逐出策略設置為noeviction,當目標庫內存不足時,數據會寫入失敗,同時任務也會失敗,但目標庫不會因為數據逐出而丟失數據。

    說明

    關于數據逐出策略詳情,請參見Redis數據逐出策略介紹

  • 對于通過EVAL或EVALSHA調用的Lua腳本,在增量數據遷移時,由于目標端在執行腳本時不會明確返回執行結果,所以DTS無法確認該類型腳本是否執行成功。

  • 對于List列表,由于DTS在調用psyncsync傳輸數據時,不會對目標端已有的數據執行Flush操作,所以可能出現重復的數據。

  • 遷移期間,如自建Redis發生擴縮容(如增加或者減少分片)、規格變配(如擴大內存),則您需重新配置任務。且為保障數據一致性,在重新配置任務前,建議先清空已遷移至目標Redis的數據。

  • 遷移期間,如自建Redis連接地址變化,則您需要重新配置任務。

  • 對于遷移失敗的任務,DTS會觸發自動恢復。當您需要將業務切換至目標實例時,請務必先結束或釋放該任務,避免該任務被自動恢復后,導致源端數據覆蓋目標實例的數據。

  • 若目標實例的架構類型為集群版且某一個分片達到了內存上限,或目標實例的存儲空間不足時,DTS任務會因內存溢出(Out of Memory)而失敗。

  • 若目標實例已開啟透明數據加密TDE功能,則暫不支持通過DTS遷移數據。

  • 若在數據遷移過程中出現包括但不限于以下情況,可能會使全量數據重新遷移至目標端,從而導致數據不一致。

    • 源端或目標端Redis發生連接閃斷,導致斷點續傳失敗。

    • 源端或目標端Redis發生主備切換或故障切換。

    • 源端或目標端Redis的連接地址發生變化。

  • 云數據庫Tair(兼容Redis)實例已開啟TLS(Transport Layer Security)加密功能,則必須以SSL安全連接的方式接入到DTS(不支持TLSv1.3)。當前暫不支持已開啟SSL的云數據庫Tair(兼容Redis)實例,以云實例的方式接入DTS。

  • 若實例運行失敗,DTS技術支持人員將在8小時內嘗試恢復該實例。在恢復失敗實例的過程中,可能會對該實例進行重啟、調整參數等操作。

    說明

    在調整參數時,僅會修改實例的參數,不會對數據庫中的參數進行修改。可能修改的參數,包括但不限于修改實例參數中的參數。

費用說明

遷移類型

鏈路配置費用

公網流量費用

結構遷移和全量數據遷移

不收費。

通過公網將數據遷移出阿里云時將收費,詳情請參見計費概述

增量數據遷移

收費,詳情請參見計費概述

遷移類型說明

  • 全量數據遷移

    DTS將自建Redis數據庫遷移對象的存量數據,全部遷移到云數據庫Tair(兼容Redis)實例中。

    說明

    如僅執行全量數據遷移,則為保障數據一致性,全量數據遷移期間請勿在自建Redis數據庫中寫入新的數據。

  • 增量數據遷移

    在全量數據遷移的基礎上,DTS將自建Redis數據庫的增量更新數據到云數據庫Tair(兼容Redis)實例中。通過增量數據遷移可以實現在應用不停服的情況下,平滑地完成Redis數據庫的遷移上云。

增量數據遷移支持同步的命令

  • APPEND

  • BITOP、BLPOP、BRPOP、BRPOPLPUSH

  • DECR、DECRBY、DEL

  • EVAL、EVALSHA、EXEC、EXPIRE、EXPIREAT

  • FLUSHALL、FLUSHDB

  • GEOADD、GETSET

  • HDEL、HINCRBY、HINCRBYFLOAT、HMSET、HSET、HSETNX

  • INCR、INCRBY、INCRBYFLOAT

  • LINSERT、LPOP、LPUSH、LPUSHX、LREM、LSET、LTRIM

  • MOVE、MSET、MSETNX、MULTI

  • PERSIST、PEXPIRE、PEXPIREAT、PFADD、PFMERGE、PSETEX、PUBLISH

  • RENAME、RENAMENX、RESTORE、RPOP、RPOPLPUSH、RPUSH、RPUSHX

  • SADD、SDIFFSTORE、SELECT、SET、SETBIT、SETEX、SETNX、SETRANGE、SINTERSTORE、SMOVE、SPOP、SREM、SUNIONSTORE

  • ZADD、ZINCRBY、ZINTERSTORE、ZREM、ZREMRANGEBYLEX、ZUNIONSTORE、ZREMRANGEBYRANK、ZREMRANGEBYSCORE

  • XADD、XCLAIM、XDEL、XAUTOCLAIM、XGROUP CREATECONSUMER、XTRIM

準備工作(增量數據遷移)

為保障增量數據遷移任務的正常執行,建議關閉復制輸出緩沖區的限制。本文以Linux操作系統的服務器為例進行演示。

說明

如您只須要進行全量數據遷移,可跳過本步驟。

  1. 使用redis-cli工具連接自建Redis數據庫。

    說明

    安裝原生Redis即可使用redis-cli,詳情請參見Redis社區版官網

    redis-cli -h <host> -p <port> -a <password>
    說明
    • <host>:自建Redis數據庫的訪問地址,本機可使用127.0.0.1。

    • <port>:自建Redis數據庫的服務端口,默認為6379。

    • <password>:自建Redis數據庫的訪問密碼。

    示例:

    redis-cli -h 127.0.0.1 -p 6379 -a Test123456
  2. 執行下述命令,關閉復制輸出緩沖區的限制。

    config set client-output-buffer-limit 'slave 0 0 0'

操作步驟

  1. 進入目標地域的遷移任務列表頁面(二選一)。

    通過DTS控制臺進入

    1. 登錄數據傳輸服務DTS控制臺

    2. 在左側導航欄,單擊數據遷移

    3. 在頁面左上角,選擇遷移實例所屬地域。

    通過DMS控制臺進入

    說明

    實際操作可能會因DMS的模式和布局不同,而有所差異。更多信息。請參見極簡模式控制臺自定義DMS界面布局與樣式

    1. 登錄DMS數據管理服務

    2. 在頂部菜單欄中,選擇集成與開發 > 數據傳輸(DTS) > 數據遷移

    3. 遷移任務右側,選擇遷移實例所屬地域。

  2. 單擊創建任務,進入任務配置頁面。

  3. 可選:在頁面右上角,單擊試用新版配置頁

    說明
    • 若您已進入新版配置頁(頁面右上角的按鈕為返回舊版配置頁),則無需執行此操作。

    • 新版配置頁和舊版配置頁部分參數有差異,建議使用新版配置頁。

  4. 配置源庫及目標庫信息。

    類別

    配置

    說明

    任務名稱

    DTS會自動生成一個任務名稱,建議配置具有業務意義的名稱(無唯一性要求),便于后續識別。

    源庫信息

    選擇已有連接信息

    您可以按實際需求,選擇是否使用已有數據庫實例。

    • 如使用已有實例,下方數據庫信息將自動填入,您無需重復輸入。

    • 如不使用已有實例,您需要配置下方的數據庫信息。

    說明
    • 您可以在數據連接管理頁面或新版配置頁面,將數據庫錄入DTS。更多信息,請參見數據連接管理

    • DMS控制臺的配置項為選擇DMS數據庫實例,您可以單擊新增DMS數據庫實例或在控制臺首頁將數據庫錄入DMS。更多信息,請參見云數據庫錄入他云/自建數據庫錄入

    數據庫類型

    選擇Tair/Redis

    接入方式

    根據源庫的部署位置進行選擇,本示例選擇ECS自建數據庫

    說明

    當源實例為自建數據庫時,您還需要執行相應的準備工作,詳情請參見準備工作概覽

    實例地區

    選擇源Redis所屬ECS實例的地域。

    是否跨阿里云賬號

    本示例為同一阿里云賬號間遷移,選擇不跨賬號

    ECS實例ID

    選擇源Redis所屬ECS實例的ID。

    說明

    當源Redis為集群架構時,選擇任一節點的Master所在的ECS實例ID。同時,您需要手動將DTS服務對應地區的IP地址段添加到其余每個ECS實例的安全規則中。更多信息,請參見創建安全組安全組與ECS實例關聯的管理添加DTS服務器的IP地址段

    實例模式

    根據源Redis的架構選擇單機版集群版

    端口

    填入源Redis的服務端口,默認為6379

    說明

    當源Redis數據庫為集群架構時,填入任一節點的Master的服務端口。

    認證方式

    請根據實際情況選擇,本示例選擇密碼登錄

    說明

    若選擇為免密登錄,請確保Redis數據庫已開啟免密訪問功能。云數據庫Tair(兼容Redis)實例開啟免密訪問的方法,請參見開啟專有網絡免密訪問

    數據庫密碼

    填入連接源Redis數據庫的密碼。

    說明
    • 非必填項,如果沒有設置密碼可以不填。

    • 數據庫密碼格式為<user>:<password>。例如,Redis實例自定義的用戶名為admin,密碼為Rp829dlwa,則此處填入的數據庫密碼為admin:Rp829dlwa。

    連接方式

    請根據實際情況選擇非加密連接SSL安全連接

    說明

    若為自建Redis(接入方式不是云實例),且選擇了SSL安全連接,您還需要上傳CA 證書并填寫CA 密鑰

    目標庫信息

    選擇已有連接信息

    您可以按實際需求,選擇是否使用已有數據庫實例。

    • 如使用已有實例,下方數據庫信息將自動填入,您無需重復輸入。

    • 如不使用已有實例,您需要配置下方的數據庫信息。

    說明
    • 您可以在數據連接管理頁面或新版配置頁面,將數據庫錄入DTS。更多信息,請參見數據連接管理

    • DMS控制臺的配置項為選擇DMS數據庫實例,您可以單擊新增DMS數據庫實例或在控制臺首頁將數據庫錄入DMS。更多信息,請參見云數據庫錄入他云/自建數據庫錄入

    數據庫類型

    選擇Tair/Redis

    接入方式

    選擇云實例

    實例地區

    選擇目標云數據庫Tair(兼容Redis)實例所屬的地域。

    是否跨阿里云賬號

    本示例為同一阿里云賬號間的遷移,選擇不跨賬號

    實例ID

    選擇目標云數據庫Tair(兼容Redis)實例的ID。

    認證方式

    請根據實際情況選擇,本示例選擇密碼登錄

    說明

    若選擇為免密登錄,請確保Redis數據庫已開啟免密訪問功能。云數據庫Tair(兼容Redis)實例開啟免密訪問的方法,請參見開啟專有網絡免密訪問

    數據庫密碼

    填入連接目標云數據庫Tair(兼容Redis)實例的密碼。

    說明

    數據庫密碼格式為<user>:<password>。例如,Tair實例自定義的用戶名為admin,密碼為Rp829dlwa,則此處填入的數據庫密碼為admin:Rp829dlwa。

    連接方式

    請根據實際情況選擇非加密連接SSL安全連接

    說明

    若為自建Redis(接入方式不是云實例),且選擇了SSL安全連接,您還需要上傳CA 證書并填寫CA 密鑰

  5. 配置完成后,在頁面下方單擊測試連接以進行下一步

    說明
    • 請確保DTS服務的IP地址段能夠被自動或手動添加至源庫和目標庫的安全設置中,以允許DTS服務器的訪問。更多信息,請參見添加DTS服務器的IP地址段

    • 若源庫或目標庫為自建數據庫(接入方式不是云實例),則還需要在彈出的DTS服務器訪問授權對話框單擊測試連接

  6. 配置任務對象。

    1. 對象配置頁面,配置待遷移的對象。

      配置

      說明

      遷移類型

      勾選全量遷移 + 增量遷移

      說明

      若對源庫沒有SYNC或PSYNC權限,請選擇全量遷移

      目標已存在表的處理模式

      • 預檢查并報錯攔截:檢查目標端是否為空。如果待遷移的目標端為空,則通過該檢查項目;如果不為空,則在預檢查階段提示錯誤,數據遷移作業不會被啟動。

      • 忽略報錯并繼續執行:跳過目標庫對象數據存在性檢查的檢查項。

        警告

        選擇為忽略報錯并繼續執行后,如果在遷移過程中遇到目標端的Key與源端中的Key相同,會將源端的數據覆蓋寫入目標端中,從而可能會導致目標端原有的數據丟失,請謹慎選擇。

      源庫對象

      源庫對象框中單擊待遷移的對象,然后單擊向右小箭頭將其移動到已選擇對象框。

      說明

      遷移對象的選擇粒度為庫,暫不支持Key粒度的選擇。

      已選擇對象

      若您需要指定接收數據的庫(DB 0~DB 255)或通過前綴過濾待遷移的數據,可以使用映射或過濾功能。在已選擇對象框中右鍵單擊待遷移的庫,然后在彈出的編輯Schema對話框中進行配置。更多信息,請參見庫表列名映射設置過濾條件

      說明

      不支持批量映射。

    2. 單擊下一步高級配置,進行高級參數配置。

      配置

      說明

      選擇調度該任務的專屬集群

      DTS默認將任務調度到共享集群上,您無需選擇。若您希望任務更加穩定,可以購買專屬集群來運行DTS遷移任務。更多信息,請參見什么是DTS專屬集群

      源庫、目標庫無法連接后的重試時間

      在遷移任務啟動后,若源庫或目標庫連接失敗則DTS會報錯,并會立即進行持續的重試連接,默認重試720分鐘,您也可以在取值范圍(10~1440分鐘)內自定義重試時間,建議設置30分鐘以上。如果DTS在設置的時間內重新連接上源、目標庫,遷移任務將自動恢復。否則,遷移任務將失敗。

      說明
      • 針對同源或者同目標的多個DTS實例,網絡重試時間以后創建任務的設置為準。

      • 由于連接重試期間,DTS將收取任務運行費用,建議您根據業務需要自定義重試時間,或者在源和目標庫實例釋放后盡快釋放DTS實例。

      源庫、目標庫出現其他問題后的重試時間

      在遷移任務啟動后,若源庫或目標庫出現非連接性的其他問題(如DDL或DML執行異常),則DTS會報錯并會立即進行持續的重試操作,默認持續重試時間為10分鐘,您也可以在取值范圍(1~1440分鐘)內自定義重試時間,建議設置10分鐘以上。如果DTS在設置的重試時間內相關操作執行成功,遷移任務將自動恢復。否則,遷移任務將會失敗。

      重要

      源庫、目標庫出現其他問題后的重試時間的值需要小于源庫、目標庫無法連接后的重試時間的值。

      是否限制全量遷移速率

      在全量遷移階段,DTS將占用源庫和目標庫一定的讀寫資源,可能會導致數據庫的負載上升。您可以根據實際情況,選擇是否對全量遷移任務進行限速設置(設置每秒查詢源庫的速率QPS每秒全量遷移的行數RPS每秒全量遷移的數據量(MB)BPS),以緩解目標庫的壓力。

      說明

      僅當遷移類型包含全量遷移時,才有此配置項。

      是否限制增量遷移速率

      您也可以根據實際情況,選擇是否對增量遷移任務進行限速設置(設置每秒增量遷移的行數RPS每秒增量遷移的數據量(MB)BPS),以緩解目標庫的壓力。

      說明

      僅當遷移類型包含增量遷移時,才有此配置項。

      延長目標庫key的過期時間

      設置源庫中的key遷移到目標庫時額外延長的過期時間。為保障數據的一致性,如有使用到(包括但不限于)如下命令,都建議設置延長key的過期時間。

      說明

      在包含分布式鎖的場景中,可能會導致分布式鎖無法及時釋放。

      expire key seconds
      pexpire key milliseconds
      expireat key timestamp
      pexpireat key timestampMs

      使用Slave節點

      當源自建Redis的實例模式集群版時,您可以選擇從Master或Slave節點讀取數據,默認為,即從Master讀取數據。

      環境標簽

      您可以根據實際情況,選擇用于標識實例的環境標簽。本示例無需選擇。

      配置ETL功能

      選擇是否配置ETL功能。關于ETL的更多信息,請參見什么是ETL

      監控告警

      是否設置告警,當遷移失敗或延遲超過閾值后,將通知告警聯系人。

    3. 單擊下一步數據校驗,進行數據校驗任務配置。

      若您需要使用數據校驗功能,配置方法請參見配置數據校驗

  7. 保存任務并進行預檢查。

    • 若您需要查看調用API接口配置該實例時的參數信息,請將鼠標光標移動至下一步保存任務并預檢查按鈕上,然后單擊氣泡中的預覽OpenAPI參數

    • 若您無需查看或已完成查看API參數,請單擊頁面下方的下一步保存任務并預檢查

    說明
    • 在遷移任務正式啟動之前,會先進行預檢查。只有預檢查通過后,才能成功啟動遷移任務。

    • 如果預檢查失敗,請單擊失敗檢查項后的查看詳情,并根據提示修復后重新進行預檢查。

    • 如果預檢查產生警告:

      • 對于不可以忽略的檢查項,請單擊失敗檢查項后的查看詳情,并根據提示修復后重新進行預檢查。

      • 對于可以忽略無需修復的檢查項,您可以依次單擊點擊確認告警詳情確認屏蔽確定重新進行預檢查,跳過告警檢查項重新進行預檢查。如果選擇屏蔽告警檢查項,可能會導致數據不一致等問題,給業務帶來風險。

  8. 購買實例。

    1. 預檢查通過率顯示為100%時,單擊下一步購買

    2. 購買頁面,選擇數據遷移實例的鏈路規格,詳細說明請參見下表。

      類別

      參數

      說明

      信息配置

      資源組配置

      選擇實例所屬的資源組,默認為default resource group。更多信息,請參見什么是資源管理

      鏈路規格

      DTS為您提供了不同性能的遷移規格,遷移鏈路規格的不同會影響遷移速率,您可以根據業務場景進行選擇。更多信息,請參見數據遷移鏈路規格說明

    3. 配置完成后,閱讀并選中《數據傳輸(按量付費)服務條款》

    4. 單擊購買并啟動,并在彈出的確認對話框,單擊確定

      您可在數據遷移界面查看具體進度。

      說明

      若您配置的DTS實例同時包含全量任務和增量任務(遷移類型同時包含全量遷移增量遷移),在遷移任務列表頁面會合并顯示為增量遷移