2016-07-24 28 views
-1

Ganz einfach, was ist die korrekte Verbindungszeichenfolge zu einer MDF-Datei-Datenbank im Verzeichnis App_Data meiner asp.net Website auf GoDaddy gehostet? Natürlich funktioniert das offline in meiner Entwicklerumgebung, verursacht aber Probleme beim Hochladen zu Godaddy. Unterstützt Godaddy die Verbindung zu Datenbanken im Verzeichnis App_Data? Ich vermute, dass mein Problem der Datenquellenteil ist und ich eine SQL Server-Instanz auswähle, aber ich bin mir nicht sicher.Unterstützt Godaddy Datenbankverbindungen zu App_Data MDF-Datenbanken?

Ich lösche die "LocalSqlServer" Verbindung vor dem Hinzufügen der eigentlichen Verbindungszeichenfolge Informationen zuerst.

<connectionStrings> 
    <remove name="LocalSqlServer"/> 
    <clear/> 

Und hier ist, was ich mit varrying Fehler versucht haben:

1.

<add name="LocalSqlServer" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=&quot;|DataDirectory|\DatabaseFileName.mdf&quot;;Initial Catalog=&quot;DatabaseFileName&quot;;Integrated Security=True" providerName="System.Data.SqlClient" /> 

Fehler: Ein netzwerkbezogener oder instanzspezifischer Fehler beim aufgetreten eine Verbindung mit 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: 26 - Fehler Locating Server/Instanz angegeben)

2.

<add name="LocalSqlServer" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=&quot;|DataDirectory|\DatabaseFileName.mdf&quot;;Initial Catalog=&quot;DatabaseFileName&quot;;Integrated Security=True" providerName="System.Data.SqlClient" /> 

Fehler: [SqlException (0x80131904): Ein netzwerkbezogener oder instanzspezifischer Fehler aufgetreten 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: 52 - konnte keine lokale Datenbank Runtime-Installation finden Stellen Sie sicher, dass SQL Server Express ordnungsgemäß installiert ist und dass die lokale Datenbank Runtime-Funktion aktiviert ist..)]

3.

<add name="LocalSqlServer" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=DatabaseFileName;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\DatabaseFileName.mdf" /> 

Fehler. Gleich wie Nummer 2 oben.

Vielen vielen Dank für Ihre Hilfe!

+0

Der obige Fehler zeigt an, dass Ihre Verbindungszeichenfolge falsch ist. Sie müssen die vollständige .bak-Datei hochladen. Sie können die .mdf-Datei nur auf den Server hochladen, da dies nicht funktioniert. Bitte überprüfen Sie es erneut mit ihnen für weitere Informationen. –

+0

Ich habe damit zusätzlich gespielt und habe es bekommen, um diesen Fehler anzuzeigen: Ungültiger Wert für Schlüssel 'attachdbfilename'. Das führt zu der Annahme, dass es sich mit dem Datenbankserver verbindet, mir aber nicht erlaubt, die Datenbank anzuhängen. Kennen Sie GoDaddy genau? Ich beginne zu glauben, dass sie nicht erlauben, eine Verbindung zu einer Datenbank in App_Data herzustellen. Können Sie einen Link bereitstellen, der den gesamten Prozess mit der von Ihnen erwähnten .bak-Datei beschreibt? Vielen Dank! – lg1382

+0

.bak bestehen aus 2 Dateien .mdf und .ldf. Möglicherweise müssen Sie sich mit Ihrem Entwickler in Verbindung setzen. Ich benutze nicht godaddy als mein Hosting, also kenne ich ihren Prozess nicht. Auf dem Produktionsserver müssen Sie jedoch eine .bak-Datei für die Wiederherstellung hochladen. Es funktioniert nicht mit .mdf Datei –

Antwort

1

Nicht viel Antwort auf diese Frage, aber von meinen Aufrufen mit GoDaddy, werde ich sagen, die Antwort ist Nein - sie unterstützen keine Datenbanken in Ihrem lokalen App_Data-Ordner gespeichert. Beim Experimentieren mit diesem Problem habe ich festgestellt, dass ich zwei Dinge in der Verbindungszeichenfolge der Datei web.config angeben muss, um das zu tun, was ich tun wollte.

  1. DataSource: Die SQL Server-Datenbank-Engine. In der Entwicklung wird dies üblicherweise auf sqlexpress oder localdb gesetzt.
  2. AttachDbFilename: Dies ist der Verweis auf die MDF-Datenbankdatei in App_Data.

konnte ich meine Datasource zu einer Instanz von SQL Server auf GoDaddy jedoch eingestellt, wenn das AttachDbFilename Attribut, würde ich einen Serverfehler erhalten sagen, es ein Problem mit meinem AttachDbFilename Wert war.

GoDaddy-Unterstützung (zumindest die Agenten, mit denen ich sprach) gab widersprüchliche Informationen. Der erste Agent war offensichtlich nicht überzeugt von dem, worüber sie sprachen, sagte aber "es ist möglich", aber behauptete, dass er wegen ihrer Unterstützung nicht anders konnte. Der zweite Agent war mehr kenntnisreich und war tatsächlich Messaging mit (ich vermute) eine tatsächliche Datenbank-Tech, die im Grunde gesagt, es wird nicht funktionieren.

Am Ende hätte ich erkennen müssen, dass dies früher nicht möglich war, da es ihr Geschäftsmodell ist, Ihnen zusätzliche Datenbanken zu verkaufen, sobald Sie die beiden im Shared-Hosting-Plan enthaltenen Datenbanken verwendet haben. Es wäre nur schön, wenn sie direkt auf ihrer DB-Admin-Seite im Hosting-Manager sagen, dass das Anhängen von Datenbanken nicht erlaubt ist ... hätte mir Zeit und Ärger erspart.

Wenn jemand erfolgreich an ihre App_Data mdf angeschlossen hat - posten Sie Ihre Verbindungszeichenfolge, sonst markiere ich dies als die Antwort, sobald SO mich lassen wird.