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>
以上がGoogle Cloud SQL に接続するときに Go で SSL 証明書エラーを解決する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。