如何使用 C# 连接 Google Cloud SQL

How to connect Google Cloud SQL with C#

我只想使用 C# 在 Google 云上管理我的数据库。我刚开始学习数据库。 P.S。我英语不好。希望你能理解我。

我假设您已经创建了 Google Cloud SQL MySQL 实例。

按照 Connect to your Cloud SQL instance using SSL 中的说明,您需要启用外部 SSL 访问并创建客户端证书。

您将下载三个文件:server-ca.pem、client-cert.pem、client-key.pem.

MySqlConnector NuGet 包安装到您的 C# 应用程序中。

按如下方式创建连接字符串:

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();

请注意,对于旧版本的 MySqlConnector 库,您需要将 SSL 证书和密钥合并到一个 PFX 文件中。按照these instructions,将client-cert.pem和client-key.pem转换成pfx文件:

openssl pkcs12 -inkey client-key.pem -in client-cert.pem -export -out client.pfx

然后删除 Ssl* 连接字符串选项并添加以下内容:

    CertificateFile = @"C:\Path\To\client.pfx",
    CACertificateFile = @"C:\Path\To\server-ca.pem",