PolarDB資料來源為您提供讀取和寫入PolarDB雙向通道的功能,您可以通過嚮導模式和指令碼模式配置同步任務。
使用限制
離線讀寫
支援閱讀檢視表。
即時讀
來來源資料源為阿里雲PolarDB MySQL時,您需要開啟Binlog。阿里雲PolarDB MySQL是一款完全相容MySQL的雲原生資料庫,預設使用了更進階別的物理日誌代替Binlog,但為了更好地與MySQL生態融合,PolarDB支援開啟Binlog的功能。
支援的欄位類型
離線讀
PolarDB Reader針對PolarDB類型的轉換列表,如下所示。
類型分類 | PolarDB資料類型 |
整數類 | INT、TINYINT、SMALLINT、MEDIUMINT和BIGINT |
浮點類 | FLOAT、DOUBLE和DECIMAL |
字串類 | VARCHAR、CHAR、TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT |
日期時間類 | DATE、DATETIME、TIMESTAMP、TIME和YEAR |
布爾型 | BIT和BOOL |
二進位類 | TINYBLOB、MEDIUMBLOB、BLOB、LONGBLOB和VARBINARY |
除上述羅欄欄位類型外,其它類型均不支援。
PolarDB Reader外掛程式將tinyint(1)視作整型。
離線寫
類似於PolarDB Reader ,目前PolarDB Writer支援大部分PolarDB類型,但也存在部分類型沒有支援的情況,請注意檢查您的資料類型。
PolarDB Writer針對PolarDB類型的轉換列表,如下所示。
類型分類 | PolarDB資料類型 |
整數類 | INT、TINYINT、SMALLINT、MEDIUMINT、BIGINT和YEAR |
浮點類 | FLOAT、DOUBLE和DECIMAL |
字串類 | VARCHAR、CHAR、TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT |
日期時間類 | DATE、DATETIME、TIMESTAMP和TIME |
布爾型 | BOOL |
二進位類 | TINYBLOB、MEDIUMBLOB、BLOB、LONGBLOB和VARBINARY |
資料同步前準備
準備工作1:配置白名單
將Serverless資源群組或獨享Data Integration資源群組所在的VPC網段添加至OceanBase的白名單中,詳情請參見添加白名單。
準備工作2:建立帳號並配置帳號許可權
建立帳號並配置帳號許可權。
您需要規劃一個資料庫的登入賬戶用於後續執行操作,此賬戶需擁有資料庫的 SELECT, REPLICATION SLAVE, REPLICATION CLIENT
許可權。
建立帳號。
操作詳情可參見建立和管理資料庫帳號。
配置許可權。
您可參考以下命令為帳號添加此許可權,或直接給帳號賦予
SUPER
許可權。-- CREATE USER '同步帳號'@'%' IDENTIFIED BY '同步帳號'; GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO '同步帳號'@'%';
準備工作3:開啟PolarDB的開啟Binlog
操作詳情可參見開啟Binlog。
建立資料來源
在進行資料同步任務開發時,您需要在DataWorks上建立一個對應的資料來源,操作流程請參見建立並管理資料來源,詳細的配置參數解釋可在配置介面查看對應參數的文案提示。
資料同步任務開發:PolarDB同步流程引導
資料同步任務的配置入口和通用配置流程可參見下文的配置指導。
單表離線同步任務配置指導
操作流程請參見通過嚮導模式配置離線同步任務、通過指令碼模式配置離線同步任務。
指令碼模式配置的全量參數和指令碼Demo請參見下文的附錄:指令碼Demo與參數說明。
單表、整庫即時同步任務配置指導
操作流程請參見DataStudio側即時同步任務配置。
整庫離線讀、單表/整庫全增量即時讀同步任務配置指導
操作流程請參見Data Integration側同步任務配置。
常見問題
附錄:指令碼Demo與參數說明
離線任務指令碼配置方式
如果您配置離線任務時使用指令碼模式的方式進行配置,您需要按照統一的指令碼格式要求,在任務指令碼中編寫相應的參數,詳情請參見通過指令碼模式配置離線同步任務,以下為您介紹指令碼模式下資料來源的參數配置詳情。