串流在執行階段可能會發生錯誤。
- 部分錯誤 (例如來源資料庫的密碼有誤) 可以復原,也就是說,修正後串流就會自動繼續。
- 錯誤可能會影響單一物件,例如含有不支援資料類型的事件。其他錯誤可能會影響多個物件或整個串流,例如 Datastream 無法連線至來源資料庫。
- 系統會視錯誤情況,在 Datastream 使用者介面的「Streams」(串流) 或「Stream details」(串流詳細資料) 頁面提供相關資訊。您也可以使用 Datastream 的 API 擷取錯誤相關資訊。
如要排解錯誤,請前往串流查看錯誤,然後按照錯誤訊息中的步驟操作。
本頁面提供設定、連線、Oracle 和 MySQL 錯誤的相關資訊,以及排解錯誤的步驟。
設定和連線錯誤
| 錯誤 | 疑難排解步驟 |
|---|---|
| 無法連線至來源資料庫 (一般)。 | 可能的原因有很多,如要排解這項錯誤,請按照下列步驟操作:
系統會自動繼續播放串流內容。 |
| 無法連線至來源資料庫 (IP 位址允許清單)。 | 如果選擇的連線方式是「IP 許可清單」,但來源資料庫未正確新增一或多個 Datastream 的輸出 IP 位址,就可能發生這種情況。請確認網路防火牆已設定 Datastream 連線設定檔中顯示的傳出 IP 位址,來源資料庫伺服器才能接受這些 IP 位址傳出的連線。問題解決後,系統就會自動繼續串流。 |
| 無法連線至來源資料庫 (轉送 SSH 通道)。 | 如果轉送 SSH 通道發生問題,就可能出現這種情況。檢查通道的狀態。如果通道已停止,則必須啟動。問題解決後,系統就會自動繼續串流。 |
| Datastream 無法透過轉送 SSH 通道連線至防禦主機。 | 請確認已在來源連線設定檔中正確設定轉送 SSH 通道,而且 SSH 通道伺服器的埠已開啟。 |
| 憑證有誤,因此無法連線至來源資料庫。 | 如果定義來源連線設定檔時提供的憑證有問題,就可能會發生這種情況。前往「連線設定檔」頁面,然後選取指定連線設定檔。確認憑證設定正確無誤。完成變更後,請儲存連線設定檔,串流就會自動繼續。 |
| 無法使用私人連線連線至來源資料庫。 | 這個錯誤與虛擬私有雲對等互連私人連線方法有關。
|
| 無法使用 Private Service Connect 介面連線至來源資料庫。 |
|
| 如果已啟用機構政策限制/datastream.disablePublicConnectivity,則不允許使用 STATIC_SERVICE_IP_CONNECTIVITY 連線類型。 | 您為要建立的連線設定檔選擇了公開 IP 許可清單或轉送安全殼層通道網路連線方法。不過,系統已啟用 Datastream 的「封鎖公開連線方法」機構政策。因此,您無法為連線設定檔選取公開連線方法。 如要解決這個問題,請選取私人 VPC 對等互連或 Private Service Connect 介面網路連線方法,或是停用機構政策。 如要停用機構政策,請按照下列步驟操作: |
| 設定串流的來源資料庫時,我找不到要移轉的資料表和結構定義。 | 如果資料庫有數千個資料表和結構定義,就可能發生這種情況。在 Google Cloud 控制台中設定串流的來源時,部分物件可能不會納入要提取的物件清單。在「選取要納入的物件」部分中,選取「自訂」,而非「特定結構定義和資料表」。在「物件比對條件」欄位中,輸入要讓 Datastream 擷取的結構定義和資料表。 |
| 我已使用「要納入的物件」選單,將多個資料表新增至串流。不過,查看「串流詳細資料」中的「物件」分頁時,卻發現缺少部分表格。 | 請確保每個資料表至少有一次 CDC 更新,這樣 Datastream 才能辨識變更,並自動將資料表納入串流。 |
| 在 Google Cloud 控制台使用「要納入的物件」選單時,無法載入物件清單。 | 如果資料庫的結構定義和資料表超過 5,000 個,就可能發生這種情況。請使用其他方法指定要納入的物件,或使用 Datastream API。詳情請參閱「設定來源資料庫」。 |
| 串流期間捨棄的事件,不會複製到目的地。 | Datastream 可能會在串流期間捨棄不支援的事件。如要解決這個問題,請採取下列行動:
|
| 嘗試連線至資料來源時逾時。請確認主機名稱和通訊埠設定正確無誤,且資料來源可存取。 | 使用虛擬私有雲對等互連時,Datastream 網路無法直接與私人服務網路 (例如 Cloud SQL 執行個體) 對等互連,因此您需要使用網路位址轉譯 (NAT) VM,在 Datastream 與資源之間建立連線。如要進一步瞭解如何設定 NAT VM,請參閱「設定 VPC 對等互連」。 |
| 物件 OBJECT_NAME 的結構定義過大,Datastream 無法處理。 | Datastream 不支援複製相應來源結構定義大於 2,621,440 個 Unicode 字元的事件。這些事件會因下列原因代碼而遭到捨棄:UNSUPPORTED_LARGE_SCHEMA。您可能需要排除或重新命名部分資料欄。或者,您也可以排除具有大型結構定義的物件。 |
| 串流狀態已變更。 | 造成這項錯誤的原因可能不只一個,但常見的基本問題是來源設定無效。如果串流無法啟動並顯示這則錯誤訊息,請檢查來源設定是否有重複的鍵或表格名稱、資料不一致或結構定義衝突。許多問題都能直接在 Google Cloud 控制台中編輯失敗的串流設定,並調整納入和排除的物件項目來解決。詳情請參閱「修改來源資料庫的設定資訊」。 |
Oracle 錯誤
| 錯誤 | 疑難排解步驟 |
|---|---|
| 來源資料庫的增補記錄設定有誤。 | 如果來源資料庫的增補記錄設定不正確,就可能發生擷取進行中變更資料擷取 (CDC) 資料時發生錯誤。確認補充記錄設定正確無誤。具體來說,請確認從來源串流至目的地的資料庫資料表已啟用補充記錄。系統會自動繼續播放串流內容。 |
| 記錄檔位置遺失,因此無法繼續複製。 | 如果複製程序暫停時間過長,導致記錄位置遺失,就可能發生這項錯誤。請勿將串流暫停的時間長度接近記錄檔保留期限。重新建立串流。 |
| 記錄檔遺失 (部分或全部)。 | 記錄檔可能已遭刪除。除非您指定最短輪替週期來保留記錄檔,否則 Oracle 會在記錄檔可刪除時立即清除。在 Oracle 伺服器中,設定記錄檔的保留時間。舉例來說,使用 如為 RDS 部署項目,請使用 |
| 排除清單包含納入清單。 | 納入清單的內容全都在排除清單中,因此 Datastream 從來源提取物件的清單空白。請修改物件選項,然後再試一次。 |