Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como conectar o Google Cloud SQL com C#


Suponho que você já tenha criado sua instância MySQL do Google Cloud SQL.

Seguindo as instruções em Conecte-se à sua instância do Cloud SQL usando SSL , você precisará habilitar o acesso SSL externo e criar um certificado de cliente.

Você baixará os três arquivos:server-ca.pem, client-cert.pem, client-key.pem.

Instale o MySqlConnector pacote NuGet em seu aplicativo C#.

Crie sua string de conexão da seguinte forma:
var csb = new MySqlConnectionStringBuilder
{
    Server = "Google Cloud SQL IP address",
    UserID = "Your UserName",
    Password = "Your Password",
    Database = "Your Database/Schema Name",
    SslCert = @"C:\Path\To\client-cert.pem",
    SslKey = @"C:\Path\To\client-key.pem",
    SslCa = @"C:\Path\To\server-ca.pem",
    SslMode = MySqlSslMode.VerifyCA,
};

using var connection = new MySqlConnection(csb.ConnectionString);
connection.Open();

Observe que, para versões antigas da biblioteca MySqlConnector, você precisará combinar o certificado SSL e a chave em um arquivo PFX. Seguindo estas instruções , converta client-cert.pem e client-key.pem em um arquivo pfx:
openssl pkcs12 -inkey client-key.pem -in client-cert.pem -export -out client.pfx

Em seguida, remova o Ssl* opções de string de conexão e adicione o seguinte:
    CertificateFile = @"C:\Path\To\client.pfx",
    CACertificateFile = @"C:\Path\To\server-ca.pem",