如何连接googlecloudsql和c#

6tqwzwtp  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(347)

我只想用c#在googlecloud上管理我的数据库。我刚开始学习数据库。p、 我不擅长英语。我希望你能理解我。

xa9qqrwz

xa9qqrwz1#

我假设您已经创建了googlecloudsqlmysql示例。
按照使用ssl连接到云sql示例的说明,您需要启用外部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文件中。按照以下说明,将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",

相关问题