Connexion à Cloud SQL avec SSL à l'aide de Go depuis App Engine
La documentation de Google suggère d'utiliser le code suivant pour se connecter à Cloud SQL à l'aide de Go et the go-sql-driver :
import "database/sql" import _ "github.com/go-sql-driver/mysql" db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname")
Cependant, cela peut entraîner une erreur de certificat x509, indiquant un certificat non valide pour le nom de projet et le nom d'instance spécifiés. Ce problème survient lors de l'utilisation de connexions SSL. Pour le résoudre, la propriété ServerName doit être définie lors de l'enregistrement d'un TLSConfig personnalisé avec le pilote mysql, en plus de spécifier le project-id:instance-name dans sql.Open().
Voici un exemple de la façon dont pour configurer la configuration TLS :
mysql.RegisterTLSConfig("custom", &tls.Config{ RootCAs: rootCertPool, Certificates: clientCert, ServerName: "projectName:instanceName", })
Ensuite, ajoutez ?tls=nameOfYourCustomTLSConfig à la chaîne de connexion :
db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")
En suivant ces étapes, vous pouvez vous connecter avec succès à Cloud SQL à l'aide SSL de Google App Engine.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!