sql >> Databáze >  >> RDS >> Mysql

SSH tunelování připojení MySQL pomocí C#

Musíte připojit MySQL k vázanému portu přesměrování. Tj. na 2222.

Nebo ještě sémanticky správnější, použijte portFwld.BoundPort . Ekvivalentně použijte portFwld.BoundHost .

DBConnect dbConnect = new DBConnect(portFwld.BoundHost, "database", "username", "password", portFwld.BoundPort);

Všimněte si také, že je smysluplnější označovat hostitele MySQL jako „localhost“ spíše než „example.com“, protože název hostitele se řeší na straně serveru. A když jste na straně serveru, obvykle se nepřipojíte k „example.com“, ale k „localhost“.

var portFwld = new ForwardedPortLocal(IPAddress.Loopback.ToString(), 2222, "localhost", 3306); 

A samozřejmě musíte mít relaci SSH otevřenou, dokud potřebujete tunel. Musíte se tedy připojit k DB v rámci using blokovat:

using (var client = new SshClient(connectionInfo))
{
    ...
    client.Connect();
    ...
    portFwld.Start();
    ... 
    DBConnect dbConnect = new DBConnect(portFwld.BoundHost, "database", "username", "password", portFwld.BoundPort);
}



  1. Co je AWS RDS

  2. Jak obnovit databázi pomocí Správce zálohování

  3. Přímý přístup k SQL Server Database v Xamarin.Forms

  4. Chyba při aktualizaci připojení