PostgreSQL遷移/同步到PostgreSQL
本頁介紹PostgreSQL遷移/同步到PostgreSQL時各種預檢查不通過情況的故障排除方法。
數據庫參數檢查
1、lc_monetary參數配置一致性檢查
| 失敗原因 | 處理建議 |
|---|
| 源庫與目標庫的lc_monetary參數配置不一致。 | |
2、檢查hot_standby_feedback參數配置
| 失敗原因 | 處理建議 |
|---|
| 源庫是備庫,源庫中的參數hot_standby_feedback為off。 | 在全量同步啟動前,將源庫中的hot_standby_feedback參數設置為ON; 待全量同步結束后,將該參數改回原來的值。
|
3、校驗源庫參數wal_level是否為logical
| 失敗原因 | 處理建議 |
|---|
| 勾選增量遷移時,源庫wal_level參數值非logical。 | 將源庫的wal_level參數修改為logical。自建數據庫修改方式可參考: |
4、源庫參數max_replication_slots校驗
| 失敗原因 | 處理建議 |
|---|
| 勾選增量遷移時,源庫max_replication_slots參數值小于或等于當前已使用的復制槽數量。 | |
5、源庫參數max_wal_senders校驗
| 失敗原因 | 處理建議 |
|---|
| 勾選增量遷移時,源庫max_wal_senders參數值小于或等于當前已使用的復制槽數量。 | |
6、待遷移表是否存在主鍵檢查
| 失敗原因 | 處理建議 |
|---|
| 勾選增量遷移時,待遷移表中存在無主鍵的表。 | |
7、源庫主備狀態檢查
數據庫用戶權限檢查
1、源庫用戶權限檢查
| 失敗原因 | 處理建議 |
|---|
| 源庫賬號沒有對模式的USAGE權限。 | |
| 源庫賬號沒有對待遷移表的SELECT權限。 | |
| 源庫賬號沒有對待遷移序列的SELECT權限。 | |
| 源庫賬號沒有對系統表pg_catalog.pg_authid的SELECT權限。 | |
2、目標庫用戶權限檢查
| 失敗原因 | 處理建議 |
|---|
| 目標庫賬號不具有當前database下創建schema的權限。 | 連接到 PostgreSQL 目標數據庫,使用超級用戶或具有適當權限的用戶執行以下命令: GRANT CREATE, TEMPORARY, CONNECT ON DATABASE <database_name> TO <username>;
|
數據庫版本檢查
1、PostgreSQL版本檢查
| 失敗原因 | 處理建議 |
|---|
源庫的版本不符合要求,大版本號不能低于9.4。 目標庫的版本不符合要求,大版本號不能低于9.5。 當前源庫的大版本號大于目標庫的大版本號。
| |
網絡情況檢查
1、源庫連通性檢查
| 失敗原因 | 處理建議 |
|---|
| 源數據庫賬號或密碼不正確。 | 輸入正確的數據庫賬號和密碼后重新執行預檢查。 |
| 源數據庫所在網絡或服務器設置了防火墻。 | 查看數據庫所在的網絡防火墻是否限制了DTS的IP地址段,如果有,關閉防火墻或者將DTS的IP地址加入防火墻白名單中。 |
| 源庫遷移賬號登錄權限不足。 | 登錄源庫,為遷移賬號添加相應的遠程訪問權限。 |
| 網絡互通問題。 | 聯系數據庫所在機器管理人員和DTS部署機器管理人員排查問題。 |
2、目標庫連通性檢查
| 失敗原因 | 處理建議 |
|---|
| 目標數據庫賬號或密碼不正確。 | 輸入正確的數據庫賬號和密碼后重新執行預檢查。 |
| 目標數據庫所在網絡或服務器設置了防火墻。 | 查看數據庫所在的網絡防火墻是否限制了DTS的IP地址段,如果有,關閉防火墻或者將DTS的IP地址加入防火墻白名單中。 |
| 目標庫遷移賬號登錄權限不足。 | 登錄目標庫,為遷移賬號添加相應的遠程訪問權限。 |
| 網絡互通問題。 | 聯系數據庫所在機器管理人員和DTS部署機器管理人員排查問題。 |
數據庫對象檢查
1、源數據庫的模式名表名是否合法
| 失敗原因 | 處理建議 |
|---|
| 待遷移對象中存在非法的字符。 | 更改含非法字符的待遷移對象名稱。 取消含非法字符的待遷移對象。
|
2、同名對象存在性檢查
| 失敗原因 | 處理建議 |
|---|
| 目標庫存在與待遷移對象同名的對象。 | 取消同名對象的遷移。 將同名對象進行名稱映射。 刪除目標庫存在的同名對象。
|
3、約束完整性檢查
| 失敗原因 | 處理建議 |
|---|
| 待遷移子表依賴的父表沒有被選擇為遷移對象。 | 在遷移對象中加入相應父表。 在遷移對象中移除相應子表。 刪除相關外鍵依賴。
|
4、擴展插件兼容性檢查
| 失敗原因 | 處理建議 |
|---|
源庫存在的擴展插件在目標庫不存在。 源庫插件版本高于目標庫對應的插件版本。
| |
5、邏輯解碼插件安裝校驗
| 失敗原因 | 處理建議 |
|---|
勾選增量遷移時,源庫未安裝邏輯解碼插件 decoderbufs。 | |
6、待遷移表是否存在主鍵檢查
| 失敗原因 | 處理建議 |
|---|
| 勾選增量遷移時,待遷移表中存在無主鍵的表。 | |
7、無日志表存在性檢查
| 失敗原因 | 處理建議 |
|---|
| 勾選增量遷移時,當前選擇的待同步對象中的表存在無日志表。 | |
8、DDL同步元數據檢查
| 失敗原因 | 處理建議 |
|---|
DDL同步所需的元數據表未被勾選。 DDL同步所需的元數據表不存在。 DDL同步所需的函數不存在。 DDL同步所需的事件觸發器不存在。
| |
鼠標選中文檔,精準反饋問題
選中存在疑惑的內容,即可快速反饋問題,我們會跟進處理
知道了