Laden...

Remote-Verbindung SQL Server 2005 Express

Erstellt von Maddinel vor 15 Jahren Letzter Beitrag vor 15 Jahren 5.475 Views
Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 15 Jahren
Remote-Verbindung SQL Server 2005 Express

verwendetes Datenbanksystem: SQL Server 2005 Express

Hallo,

ich habe eine Frage zu einem ConnectionString für eine SQL-Server Verbindung.
Der ConnectionString sieht folgendermaßen aus:

"Server=MADDINPC\\SQLEXPRESS;Database=gbs_net;User ID=usr_gbs;Password=usr_gbs;Trusted_Connection=False;"

Was muss eigentlich genau unter "Server" stehen? Ich dachte eigentlich immer, dass dort der Name oder die IP-Adresse des Server-Rechners angegeben werden muss. Der oben stehende und lokal funktionierende ConnectionString enthält aber weder nur den Server-Namen noch die IP. der PC auf dem sich die DB befindet heißt "MaddinPC". Warum funktioniert die Verbindung nicht, wenn ich nur den PC-Namen angebe oder nur die IP-Adresse als Wert für Server?

Wie der Wert für Server aussehen, wenn ich den SQL-Server remote von einem anderen Rechner aus erreichen will? ISt es da nicht besser die IP-Adresse anzugeben?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

3.430 Beiträge seit 2007
vor 15 Jahren

Hi,

Warum funktioniert die Verbindung nicht, wenn ich nur den PC-Namen angebe oder nur die IP-Adresse als Wert für Server?

Die Syntax für Server lautet: SERVER \ SQL SERVER INSTANZ
Die Instanz ist in diesem Fall SQLEXPRESS.
Das ist notwendig, da jemand ja auch mehrere Server auf einen Rechner installiert haben könnte.

Wie der Wert für Server aussehen, wenn ich den SQL-Server remote von einem anderen Rechner aus erreichen will? ISt es da nicht besser die IP-Adresse anzugeben?

Der sieht da gleich aus. Ich würde empfehlen den Namen zu verwenden, da sich die IP-Adresse ja ändern kann.

mfg
Michael

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 15 Jahren

Danke für die schnelle Antwort.

Aber müsste dann nicht auch Server=192.168.xxx.xxx\SQLEXPRESS funktionieren? Komischerweise geht das aber nicht.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 15 Jahren

Nagut, ist aber logisch. Die Frage ist jetzt nurnoch warum ich von einem anderen Rechner remote nicht auf die DB auf meinem zugreifen kann sondern nur lokal.
Ich habe den Remotezugriff bereits im SQL-Server eingestellt.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

F
10.010 Beiträge seit 2004
vor 15 Jahren

Firewall?

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 15 Jahren

Die hab ich komplett deaktiviert, bringt aber keine Änderung. Ich erhalte immer die folgende Meldung:


An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

3.430 Beiträge seit 2007
vor 15 Jahren

Hallo,

wenn ich mich nicht irre, dann kriegst du diese Fehlermeldung, weil dein SqlServer keine RemoteVerbindung zulässt. Unter den Einstellungen vom SqlServer kannst du einstellen ob er diese zulassen soll (weis aber auch nicht mehr genau wo).

Schaue dir mal das hier an http://support.microsoft.com/kb/914277 hier ist genau beschrieben wie man vorgehen muss.

mfg
Michael

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 15 Jahren

Ja ganz genau, aber das ist auch das Problem. Ich habe die Remoteverbindung bereits auf dem Server aktiviert. Den Rechner habe ich seit dem auch neu gestartet, was einen Neustart des SQL-Servers eigentlich bewirken müsste, oder?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 15 Jahren

Die Verbindung vom anderen PC aus ging jetzt. Der Fehler war, dass der SQL Server Browser deaktivert war. Diesen kann man aktivieren über Start > Programme > Microsoft SQL Server 2005 > Konfigurationstools > SQL Server Oberflächenkonfiguration

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

F
10.010 Beiträge seit 2004
vor 15 Jahren

Den benötigst du "nur", wenn du den Port nicht selber angibst.

Ohne ( sollte man aus sicherheitsgründen aus lassen ) einfach ":1433" hinter
Servernamen\Instanz angeben ( ist der std. Port ).

479 Beiträge seit 2008
vor 15 Jahren

Hallo,
Ich habe das gleiche Problem. Nur trotz allen Beiträgen kann ich das Problem nicht lösen.
Ich hab die Remoteverbindungen zugelassen, usw.
Mein Programm sieht so aus:


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SqlClient
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Title = "Sql-Verbindung";

            System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection();
            Console.WriteLine("ConnectionString wird zugeteilt...");
            con.ConnectionString = "Server=SERVER \\ SQL SERVER SQLEXPRESS:1433;Data Source=C:\\Users\\Markus\\Documents\\TestDatabase.sdf";
            Console.WriteLine("ConnectionString zugeteilt");
            try
            {
                Console.WriteLine("Sql-Verbindung wird hergestellt...");
                con.Open();
                Console.WriteLine("Verbindung hergestellt!");
            }
            catch (Exception ex)
            {
                Console.WriteLine("Sql-Verbindung konnte nicht hergestellt werden:");
                Console.WriteLine(ex.Message);
                Console.WriteLine("Auslöser:");
                Console.WriteLine(ex.Source);
                Console.WriteLine("Chronik:");
                Console.WriteLine(ex.StackTrace);
            }

            Console.ReadLine();
        }
    }
}

Ich hab Windows Vista Buisness SP1, SqlServer2005 Express, Visual CSharp 2008 und .NET Framework 3.5.
Kann mir jemand den Fehler vielleicht erklären?

Danke im Voraus,
markus111

[Follow me on Twitter](http://twitter.com/blendingsky)
F
10.010 Beiträge seit 2004
vor 15 Jahren

Per Remoteverbindung ( und schon in einer SHare ) kannst Du nicht mit echten
Dateinamen arbeiten, sondern musst den im Server registrierten Namen der DB benutzen.