本頁討論 Cloud SQL 中遇到的一些錯誤訊息。
總覽
Cloud SQL 的錯誤訊息來源眾多,且會顯示在許多地方。部分錯誤訊息來自資料庫引擎本身、部分來自 Cloud SQL 服務、部分來自用戶端應用程式,還有部分是呼叫 Cloud SQL Admin API 時傳回的訊息。
本頁列出 Cloud SQL 中最常見的錯誤,如果在這裡找不到您要查詢的錯誤代碼或訊息,請參閱以下來源參考資料:
如果找不到您看到的錯誤訊息參考資料,也可以在下列位置搜尋,其他使用者可能會有相關經驗:
- Stack Overflow 上的 Cloud SQL 問題
- Cloud SQL 公開問題追蹤器
- DBA Stack Exchange
- Cloud SQL 討論群組
- Google Cloud Slack 社群
- Google Cloud Reddit 專頁
作業錯誤
A | B | C | D | E | F | G | I | L | M | N | O | P | Q | R | S | T | U | W
錯誤訊息 | 疑難排解 |
---|---|
找不到網路中已分配的 IP 範圍。 | 修改或移除已分配的範圍後,虛擬私有雲對等互連未更新。
您需要
修改私人連線。使用下列指令,並務必使用 gcloud services vpc-peerings update \ --network=VPC_NETWORK \ --ranges=ALLOCATED_RANGES \ --service=servicenetworking.googleapis.com \ --force |
錯誤訊息 | 疑難排解 |
---|---|
要求錯誤。 | 這則訊息可能有多種原因。Illegal Argument 是最常見的其中一種。在這種情況下,要求使用的引數有誤,或是引數值無效。如果是其他原因,錯誤訊息可能包含實用提示。如果是 |
錯誤訊息 | 疑難排解 |
---|---|
無法修改 CreateConnection 中的分配範圍。請改用 UpdateConnection。 | 修改或移除已分配的範圍後,虛擬私有雲對等互連未更新。
您需要修改私人連線。
請使用下列指令,並務必使用 gcloud services vpc-peerings update \ --network=VPC_NETWORK \ --ranges=ALLOCATED_RANGES \ --service=servicenetworking.googleapis.com \ --force |
連線已遭對等方重設。 | 如果您嘗試執行匯出作業,但 Cloud Storage 在特定時間範圍內未收到任何資料,連線就會重設。 使用 |
Constraints/sql.restrictAuthorizedNetworks。 | 複製作業遭到 Authorized Networks 設定封鎖。Authorized Networks
在 Google Cloud 控制台的「連線」部分中,設定為使用公開 IP 位址,且基於安全考量,不允許複製。
盡可能從 Cloud SQL 執行個體中移除所有 |
錯誤訊息 | 疑難排解 |
---|---|
資料庫「user 」不存在。 |
gcloud sql connect --user 只能搭配預設postgres 使用者使用。連線至預設使用者,然後變更使用者。 |
磁碟空間已滿。 | 建立副本時,主要執行個體的磁碟大小可能會達到上限。
編輯主要執行個體,將其升級為較大的磁碟大小。 |
錯誤訊息 | 疑難排解 |
---|---|
無法建立子網路。 | IP 範圍中沒有其他可用位址。
在已分配的 IP 範圍中找不到可用區塊。請為這個服務供應商分配新的範圍。 分配的 IP 範圍內沒有其他可用位址。 請考慮下列可能情況:
在上述任一情況下,您可以選擇擴展現有範圍,或 為私人服務連線分配額外的 IP 範圍。 如要分配新的範圍,請注意不要建立與現有分配項目重疊的分配項目。 建立新的 IP 範圍後,請使用下列指令更新 VPC 對等互連: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com --ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \ --network=VPC_NETWORK --project=PROJECT_ID \ --force 如果擴展現有分配範圍,請務必只增加分配範圍,不要縮小。舉例來說,如果原始分配範圍為 10.0.10.0/24,則新的分配範圍至少要為 10.0.10.0/23。 一般來說,如果從 /24 分配開始,每項條件 (額外執行個體類型群組、額外區域) 將 /mask 遞減 1,就是不錯的經驗法則。舉例來說,如果嘗試在同一個分配作業中建立兩個執行個體類型群組,從 /24 變更為 /23 就足夠。 擴充現有 IP 範圍後,請使用下列指令更新 VPC 對等互連: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID \ --force |
錯誤訊息 | 疑難排解 |
---|---|
(gcloud.sql.connect) It seems your client does not have ipv6 connectivity and the database instance does not have an ipv4 address. | 您嘗試使用 Cloud Shell 連線至私人 IP 執行個體。 目前不支援從 Cloud Shell 連線至只有私人 IP 位址的執行個體。 |
錯誤訊息 | 疑難排解 |
---|---|
內部錯誤。 | 專案可能缺少這項功能所需的 Service Networking 服務帳戶。
如要修復服務權限,請停用
|
要求無效:執行個體的服務網路設定不正確。 | 專案未啟用 Service Networking API 。
在專案中啟用 |
錯誤訊息 | 疑難排解 |
---|---|
網路關聯失敗。 | 專案未啟用 Service Networking API 。
在專案中啟用 |
錯誤訊息 | 疑難排解 |
---|---|
還有其他正在進行的作業,因此作業失敗。 | Cloud SQL 中的大多數作業都是同步作業。一次只能執行一項作業。
請先等待上一個作業完成,再開始其他作業。 |
這項作業不適用於這個執行個體。 | 這是對 instances.restoreBackup 進行 API 呼叫時傳回的錯誤,表示您無法將備份還原至儲存空間大小 (XX GB) 小於備份大小 (YY GB) 的執行個體。編輯目標執行個體,增加儲存空間大小。 |
錯誤訊息 | 疑難排解 |
---|---|
使用者「postgres」的密碼驗證失敗。 | 建立新的 PostgreSQL 適用的 Cloud SQL 執行個體時,系統會建立預設管理員使用者 postgres ,但不會建立密碼。您必須先
為使用者設定密碼,使用者才能登入。 |
錯誤訊息 | 疑難排解 |
---|---|
超過配額。 | 您已達到每分鐘或每日配額的上限。查看 Cloud SQL 的配額與限制。 透過Google Cloud 主控台要求增加配額。 |
錯誤訊息 | 疑難排解 |
---|---|
剩餘的連線運算單元皆為保留狀態。 | 連線數量已達上限。
增加 |
要求缺少有效的 API 金鑰。 | 您可能沒有有效的服務帳戶金鑰 JSON 檔案,或該檔案未儲存在預期位置。
確認您存在 |
錯誤訊息 | 疑難排解 |
---|---|
SSL 錯誤:填補無效。 | 伺服器憑證錯誤。
建立新的伺服器憑證並輪替。 |
發生系統錯誤。 |
請嘗試下列做法:
|
錯誤訊息 | 疑難排解 |
---|---|
資料表定義已變更。 | 匯出期間表格發生變更。
如果在匯出作業期間使用下列陳述式,傾印交易可能會失敗:
請從傾印作業中移除任何這類陳述式。 |
暫時檔案大小超過 temp_file_limit。 | 資料庫用量的 temp_file_limit 標記設定過低。
增加 |
(逾時) 期間。 | CSV 和 SQL 格式的匯出方式不同。SQL 格式包含整個資料庫,因此可能需要較長時間才能完成。 使用 CSV 格式並執行多個較小的匯出作業,縮減每項作業的大小和長度。 |
連線數量過多。 | 如果 max_connections 旗標值設得太高,可能會導致這項錯誤。如果啟用旗標的順序有誤,也可能導致這個問題。
降低 |
錯誤訊息 | 疑難排解 |
---|---|
未經授權,無法連線。 | 授權會在多個層級進行,因此可能有多種原因:
請嘗試下列做法:
|
錯誤訊息 | 疑難排解 |
---|---|
x509:憑證對任何名稱都無效。 | 已知問題:
Cloud SQL Proxy Dialer 目前與 Go 1.15 不相容。 在修正問題前,請參閱 GitHub 上的這項討論,其中包含解決方法。 |
不明錯誤
下表列出一些已知的 Unknown Error
案例,並在適用情況下提供具體解決方法。不過,這並非完整清單。如果表格中沒有您的案件,請查看 Cloud SQL 的公開問題追蹤器。如果找不到問題,請考慮
提交報告,或查看其他支援選項。
作業 | 問題可能出在... | 建議做法... |
---|---|---|
新增使用者 | 如果使用者已存在於資料庫中,嘗試新增時可能會發生這個錯誤。 | 確認資料庫中沒有該使用者。 |
備份 | 如果在自動或手動備份期間看到這則訊息,可能是執行個體磁碟空間已滿。 | 如果暫時檔案大小佔用太多空間,您可以重新啟動執行個體來移除檔案,並釋出磁碟空間。否則,您可能需要將執行個體升級為較大的磁碟大小。 |
複製 | 如果所選可用區的資源不足,就可能發生這種情況。 | 請嘗試使用該區域中的其他可用區,或稍後再試。 |
建立執行個體 |
|
|
建立備用資源 | 記錄檔中可能會有更具體的錯誤。 | 檢查 Cloud Logging 中的記錄,找出實際錯誤。 如果錯誤是 如果錯誤是 |
匯出 | 如果您在嘗試將資料庫匯出至 Cloud Storage bucket 時看到這則訊息,可能是因為頻寬問題導致轉移失敗。 | Cloud SQL 執行個體可能與 Cloud Storage 值區位於不同區域。從一個洲讀取資料並寫入另一個洲,會耗用大量網路資源,並可能導致這類間歇性問題。 |
容錯移轉 (自動) | 如果服務偵測到主要執行個體仍有回應,自動容錯移轉作業可能會產生這則錯誤訊息。 | 在此情況下,您無須採取任何行動。由於不需要容錯移轉,因此不會發生容錯移轉。 |
匯入 | 匯入檔案可能含有需要超級使用者角色的陳述式。 | 編輯檔案,移除需要超級使用者角色的陳述式。 |
Cloud SQL 也會使用一些第三方二進位檔 (例如 mysqld
),這些二進位檔可能會產生不明錯誤訊息。這類錯誤是第三方二進位檔的內部錯誤,不在 Cloud SQL 的範圍內。不過,有時您可以在大約同一時間的 Cloud SQL 記錄檔中,找到更具體的錯誤。
此外,有時會出現不明的錯誤代碼。在這個例子中,完整訊息可以是 Unknown Error Code
。