आपको MySQL को फ़ॉरवर्डिंग के बाउंड पोर्ट से कनेक्ट करना होगा। अर्थात। 2222 तक।
या इससे भी अधिक शब्दार्थ रूप से सही, portFwld.BoundPort
. का उपयोग करें . समान रूप से, portFwld.BoundHost
. का उपयोग करें ।
DBConnect dbConnect = new DBConnect(portFwld.BoundHost, "database", "username", "password", portFwld.BoundPort);
यह भी ध्यान दें कि MySQL होस्ट को "example.com" के बजाय "लोकलहोस्ट" के रूप में संदर्भित करना अधिक समझ में आता है, क्योंकि होस्टनाम सर्वर-साइड पर हल हो जाता है। और जब सर्वर की तरफ, आप आमतौर पर "example.com" से नहीं, बल्कि "लोकलहोस्ट" से कनेक्ट होते हैं।
var portFwld = new ForwardedPortLocal(IPAddress.Loopback.ToString(), 2222, "localhost", 3306);
और निश्चित रूप से आपको सुरंग की आवश्यकता होने पर SSH सत्र को खुला रखने की आवश्यकता है। तो आपको using
. के भीतर DB से जुड़ना होगा ब्लॉक करें:
using (var client = new SshClient(connectionInfo))
{
...
client.Connect();
...
portFwld.Start();
...
DBConnect dbConnect = new DBConnect(portFwld.BoundHost, "database", "username", "password", portFwld.BoundPort);
}