Beim Herstellen einer Verbindung mit SQL Server ist ein netzwerkspezifischer oder instanzspezifischer Fehler aufgetreten

8

Ich habe eine einfache mvc-Website (mit der VS-Internetvorlage) auf azurewebsites, die mit einer SQL Azure-Datenbank im selben Rechenzentrum kommuniziert. Die Datenbank zu diesem Zeitpunkt dient nur dazu, den eingebauten SimpleMembership Provider zu erstellen. Ich habe bereits von der standardmäßigen App_Data-MDF-Datei zu Azure SQL gewechselt. Es funktioniert gut, aber manchmal nach einer Weile, würde es geben:

  

Ein netzwerkbezogener oder instanzspezifischer Fehler ist während aufgetreten   Herstellen einer Verbindung zu SQL Server. Der Server wurde nicht gefunden oder   war nicht zugänglich. Stellen Sie sicher, dass der Instanzname korrekt ist und dass   SQL Server ist so konfiguriert, dass Remoteverbindungen zugelassen werden. (Anbieter: SQL   Netzwerkschnittstellen, Fehler: 26 - Fehler beim Auffinden des Servers / der Instanz   Angegeben)

mit einer langen Nachricht:

  

Fehler beim Erstellen der SQLExpress-Datenbankdatei:

     

Die Verbindungszeichenfolge gibt eine lokale Sql Server Express-Instanz an   Verwenden eines Datenbankspeicherorts im App_Data-Verzeichnis der Anwendung.   Der Anbieter hat versucht, die Anwendung automatisch zu erstellen   Datenbank, weil der Anbieter die Datenbank ermittelt hat   ist nicht vorhanden. Die folgenden Konfigurationsanforderungen sind erforderlich   um die Existenz der Anwendungsdienste erfolgreich zu prüfen   Datenbank und erstellt automatisch die Datenbank der Anwendungsdienste:

Aber ich nicht habe eine Verbindungszeichenfolge mit SQL Server Express!

Durch den sofortigen Neustart der Website wird der Fehler nicht behoben.

Ohne etwas zu ändern und die Website 15 Minuten später neu zu starten, geben Sie:

  

502 - Der Webserver hat eine ungültige Antwort erhalten, während er als   Gateway oder Proxy-Server.

     

Es gibt ein Problem mit der gesuchten Seite, und das kann nicht sein   angezeigt. Wenn der Webserver (während er als Gateway oder Proxy agiert)   kontaktierte den Upstream-Content-Server, erhielt es eine ungültige Antwort   vom Inhaltsserver.

Früher konnte ich die Website wiederherstellen, indem ich einfach von VS neu publizierte. Aber in der letzten Stunde habe ich versucht und versucht und ich kann die Website nicht wieder zum Laufen bringen.

Worum geht es bei SQL Server Express wirklich?

Meine Verbindungszeichenfolge enthält:

%Vor%

Nur um sicher zu sein, ich habe sablo6h4---.database.windows.net in SSMS kopiert und eingefügt und mit Login-Test verbunden und es hat die Datenbank ohne Probleme geöffnet.

Einen Tag später : Ich habe eine neue Azurewebsite erstellt und das exakt gleiche Projekt und die gleiche web.config veröffentlicht. Es funktioniert ohne Probleme. Nach einigen Minuten ist genau der gleiche Fehler aufgetreten!

Drei weitere Stunden später : Ging zum Mittagessen, kam zurück, drückte den Refresh-Button des Browsers und die Website ist wieder da. Ich bin überzeugt, dass jemand mit den Einstellungen am hinteren Ende herumalbert.

    
Old Geezer 13.10.2013, 15:34
quelle

2 Antworten

4

Fügen Sie ein <clear/> -Element als erstes Element unter dem connectionstrings-Element hinzu, um sicherzustellen, dass keine Strings vererbt werden. Außerdem nehme ich an, dass Ihre Azure SQL DB mit den richtigen Firewalleinstellungen eingerichtet ist, die Ihre IP ermöglichen, wo der ASP.net-Code bereitgestellt wird?

    
Bart Czernicki 13.10.2013, 18:35
quelle
1

Ich hatte auch diesen Fehler. Aber in meinem Fall habe ich nicht bemerkt, dass die Verbindungszeichenfolge vom Veröffentlichungsassistenten überschrieben wurde. Ich habe das Problem behoben, indem ich im Publizierungsassistenten auf die Registerkarte "Einstellungen" gegangen bin und die Option "Diese Verbindungszeichenfolge zur Laufzeit verwenden (Updateziel web.config)" deaktiviert habe

    
Nigel Findlater 11.11.2015 15:40
quelle