Google App Engine から Golang を使用した Google Cloud SQL への SSL 接続のトラブルシューティング
Google App から Google Cloud SQL への接続を確立しようとする場合go-sql-driver と SSL を使用するエンジンでは、開発者は「証明書は projectName:instanceName に対して有効です。projectName ではありません」というエラーが頻繁に発生します。この問題は、カスタム TLSConfig を mysql ドライバーに登録するときに ServerName プロパティが明示的に設定されていない場合に発生します。
この問題に対処するには、コードに次の手順を必ず含めてください:
<code class="go">mysql.RegisterTLSConfig("custom", &tls.Config{ RootCAs: rootCertPool, Certificates: clientCert, ServerName: "projectName:instanceName", // <-- Added ServerName property })</code>
<code class="go">db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>
これらの調整を実装すると、Golang を使用して Google App Engine から Cloud SQL インスタンスへの SSL 接続を正常に確立できます。
以上がGolang を使用して Google Cloud SQL の SSL 接続の問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。