2016-07-15 13 views
0

Vorwort: Ich habe bereits und kann eine Verbindung zu den entsprechenden Datenbanken in Amazon RDS von MySQL Workbench damit mein Benutzernamen, Instanz-URL, Port-Nummer sowie das Passwort korrekt zu sein.Verbinden Sie ASP.NET mit Amazon RDS MariaDB

Ich erstelle eine Online-Anwendung für ASP.NET und muss stattdessen eine Verbindung zu Amazon RDS s MariaDB herstellen. Ich habe versucht, es über web.config oder C# Code Weg zu tun, aber beides funktioniert nicht. Beratung benötigt.

Methode 1

Web.config:

<add name="rdbs" connectionString="Server=xxxxxx.xxxxxx.ap-southeast-1.rds.amazonaws.com:3306; Database=xxx; Uid=xxxx; Pwd=xxxx;" providerName="MySql.Data.MySqlClient"/> 

Für meine C# Codeseite:

string connStr = ConfigurationManager.ConnectionStrings["rdbs"].ConnectionString; 
     using (SqlConnection sqlConnection = new SqlConnection(connStr)) 

Methode 2

System.Data.SqlClient.SqlConnectionStringBuilder builder = new System.Data.SqlClient.SqlConnectionStringBuilder(); 
    builder["Initial Catalog"] = "xxxx"; 
    builder["Data Source"] = "xxxxx.xxxx.ap-southeast-1.rds.amazonaws.com"; 
    builder["integrated Security"] = true; 
    builder["Uid"] = "xxxx"; 
    builder["Pwd"] = "xxxx"; 

    string connexionString = builder.ConnectionString; 
    SqlConnection connexion = new SqlConnection(connexionString); 
    try { connexion.Open(); return true; } 
    catch { return false; } 
Diese

ist die Form der Fehler, die ich bin vor:

Message „Ein netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung zu SQL Server. Der Server wurde nicht gefunden oder war nicht erreichbar. Stellen Sie sicher, dass der Instanzname korrekt ist und dass SQL Server so konfiguriert ist, dass Remoteverbindungen zugelassen werden. (Anbieter: SQL Network Interfaces, Fehler: 25 - Verbindungszeichenfolge ist nicht gültig)“

Dank

+0

Hat das funktioniert in Ihrem lokalen Netzwerk? d. h. mit einer lokalen Mariadb-Instanz verbunden? – Hackerman

Antwort

0

Dieses es tatsächlich gelöst

  1. Schnappen MySql.Data.Entity von Nuget

    !.
  2. Lassen Sie sich diese in web.config

    <add name="connRDB" connectionString="Data Source=xxxxx.xxxx.ap-southeast-1.rds.amazonaws.com;port=3306;Initial Catalog=xxxxx;User Id=xxxxx;password=xxxx" providerName="MySql.Data.MySqlClient" /> 
    
  3. Auf der Code auf dieser Seite

    string constr = ConfigurationManager.ConnectionStrings["connRDB"].ConnectionString; 
    using (MySqlConnection conn = new MySqlConnection(constr)) 
         { 
          using (MySqlCommand cmd = new MySqlCommand("Select * FROM orders")) 
          { 
           using (MySqlDataAdapter sda = new MySqlDataAdapter()) 
           { 
            cmd.Connection = conn; 
            sda.SelectCommand = cmd; 
            using (DataTable dt = new DataTable()) 
            { 
             sda.Fill(dt); 
             GridView1.DataSource = dt; 
             GridView1.DataBind(); 
            } 
           } 
          } 
         }