首頁 > 後端開發 > Golang > 主體

如何解決 Go 連線到 Google Cloud SQL 時出現 SSL 憑證錯誤?

Patricia Arquette
發布: 2024-10-23 18:14:41
原創
762 人瀏覽過

How to Resolve SSL Certificate Errors in Go When Connecting to Google Cloud SQL?

資料庫連線故障排除:使用Google App Engine 和Google Cloud SQL 解決Golang 中的SSL 問題

根據Google 文件,在Go 和Google Cloud SQL 之間建立資料庫連線使用go-sql-driver 和SSL 應該很簡單。然而,使用者可能會遇到令人困惑的 x509 憑證錯誤。

根本原因和解決方案

錯誤訊息表示使用者正在使用 SSL 連線。若要修正此問題,請確保在使用 mysql 驅動程式進行的 RegisterTLSConfig 呼叫中設定 ServerName 屬性。此配置必須與在 sql.Open() 函數中指定 project-id:instance-name 一起執行。

實作建議

要解決此問題,請將您的TLS 配置修改為包含自訂ServerName 設置,如下所示:

<code class="go">mysql.RegisterTLSConfig("custom", &tls.Config{
            RootCAs:      rootCertPool,
            Certificates: clientCert,
            ServerName:   "projectName:instanceName",
        })</code>
登入後複製

隨後,將以下字串附加到您的資料庫連接字串:

<code class="go">?tls=nameOfYourCustomTLSConfig</code>
登入後複製

例如:

<code class="go">db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>
登入後複製

以上是如何解決 Go 連線到 Google Cloud SQL 時出現 SSL 憑證錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!