Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak połączyć Google Cloud SQL z C#

Zakładam, że już utworzyłeś instancję Google Cloud SQL MySQL.

Postępuj zgodnie z instrukcjami na stronie Połącz się z instancją Cloud SQL za pomocą SSL , musisz włączyć zewnętrzny dostęp SSL i utworzyć certyfikat klienta.

Pobierasz trzy pliki:server-ca.pem, client-cert.pem, client-key.pem.

Zainstaluj MySqlConnector Pakiet NuGet do aplikacji C#.

Utwórz parametry połączenia w następujący sposób:

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

Zwróć uwagę, że w przypadku starszych wersji biblioteki MySqlConnector konieczne będzie połączenie certyfikatu SSL i klucza w jeden plik PFX. Postępując zgodnie z tymi instrukcjami , przekonwertuj client-cert.pem i client-key.pem na plik PFX:

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

Następnie usuń Ssl* opcje parametrów połączenia i dodaj następujące:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jaka jest różnica między MySQLdb, mysqlclient i MySQL Connector/Python?

  2. 8 najpopularniejszych baz danych

  3. Czy COUNT jest szybsze niż ściąganie rekordów i liczenie w kodzie?

  4. Zapytanie przestawne MySQL

  5. Różnica między mysql, mysqladmin, mysqld