Zugriff auf SQL-Server nicht möglich: Unterschied zwischen den Versionen
Aus GEVITAS
(→Firewall) |
|||
Zeile 20: | Zeile 20: | ||
* Falls Sie über TCP/IP keinen Zugriff zum Microsoft-SQL-Server erhalten, können Sie im ODBC-Treiber auch den Zugriff über “Named-Pipes” aktivieren. Dieses Netzwerkprotokoll wird vom SQL-Server standardmäßig ebenfalls unterstützt. Es ist allerdings nicht routingfähig und auch nicht mehr besonders modern, so dass es eigentlich nicht mehr verwendet werden soll. | * Falls Sie über TCP/IP keinen Zugriff zum Microsoft-SQL-Server erhalten, können Sie im ODBC-Treiber auch den Zugriff über “Named-Pipes” aktivieren. Dieses Netzwerkprotokoll wird vom SQL-Server standardmäßig ebenfalls unterstützt. Es ist allerdings nicht routingfähig und auch nicht mehr besonders modern, so dass es eigentlich nicht mehr verwendet werden soll. | ||
* Auch einige Virenscanner verhindern das ordnungsgemäße installieren. In diesem Fall muss der Virenscanner zeitweise deaktiviert werden. | * Auch einige Virenscanner verhindern das ordnungsgemäße installieren. In diesem Fall muss der Virenscanner zeitweise deaktiviert werden. | ||
+ | * Wie Sie die Windows-Firewall einstellen müssen, wird [http://msdn.microsoft.com/de-de/library/ms175043.aspx hier] beschrieben. | ||
+ | * Ob die Firewall den Zugriff behindert können Sie ganz einfach testen: | ||
+ | ** Schalten Sie die Firewall (kurzfristig!) aus und testen Sie den Zugriff auf den SQL-Server z.B. über den ODBC-Manager. Funktioniert der Zugriff nun, ist die Firewall der Übeltäter! | ||
=== Einstellungen === | === Einstellungen === |
Version vom 21. Dezember 2012, 23:22 Uhr
Inhaltsverzeichnis
1 Allgemeines
Der Zugriff vom Client auf den SQL-Server erfolgt immer über ein Netzwerk-Protokoll. Auch wenn Sie den SQL-Server auf dem gleichen Rechner haben, wird die Kommunikation über ein Netzwerk-Protokoll gehen, im Regelfall TCP/IP.
2 Fehler-Möglichkeiten
Es gibt natürlich viele Möglichkeiten, warum der Zugriff auf den SQL-Server nicht funktioniert. Hier können nur die gängigsten, bekannten Probleme und Lösungen aufgeführt werden.
2.1 Firewall
Wenn man davon ausgeht, dass alle Einstellungen korrekt sind und trotzdem kein Kontakt zum SQL-Server hergestellt werden kann, ist die Firewall der erste "Verdächtige".
- Prüfen Sie, ob eine Firewall auf dem Server und dem Arbeitsplatz-Rechner aktiv ist.
- Schalten Sie - wenn möglich - die Firewall zum Test aus und versuchen Sie, ob dann die Verbindung möglich ist.
- Definieren Sie in der Firewall, dass bestimmte Ports für den eingehenden und ausgehenden Zugriff freigeschaltet sind.
- MS-SQL-Server benutzt standardmäßig den TCP/IP-Port 1433.
- mySQL benutzt standardmäßig den TCP/IP-Port 3306.
- ORACLE benutzt standardmäßig den TCP/IP-Port 1521.
- Diese müss ggf. in der Firewall freigeschaltet werden.
- Falls Sie über TCP/IP keinen Zugriff zum Microsoft-SQL-Server erhalten, können Sie im ODBC-Treiber auch den Zugriff über “Named-Pipes” aktivieren. Dieses Netzwerkprotokoll wird vom SQL-Server standardmäßig ebenfalls unterstützt. Es ist allerdings nicht routingfähig und auch nicht mehr besonders modern, so dass es eigentlich nicht mehr verwendet werden soll.
- Auch einige Virenscanner verhindern das ordnungsgemäße installieren. In diesem Fall muss der Virenscanner zeitweise deaktiviert werden.
- Wie Sie die Windows-Firewall einstellen müssen, wird hier beschrieben.
- Ob die Firewall den Zugriff behindert können Sie ganz einfach testen:
- Schalten Sie die Firewall (kurzfristig!) aus und testen Sie den Zugriff auf den SQL-Server z.B. über den ODBC-Manager. Funktioniert der Zugriff nun, ist die Firewall der Übeltäter!
2.2 Einstellungen
- Prüfen Sie alle Einstellungen sehr genau:
- ODBC: Können Sie eine Verbindung über die ODBC herstellen, aber nicht über das Programm? Dann stimmt Ihre Einstellung in der INI-Datei nicht!
- Oracle: Können Sie die Verbindung über den .Net-Konfigurations-Assistenten testen? Wenn dieser funktioniert, stimmt Ihre Einstellung in der INI-Datei nicht!
- Oracle: Prüfen Sie die Einstellungen des Netzwerk-Protokolls! Ist überall das gleiche Protokoll (TCP/IP oder TNS) angegeben?
2.3 Zugriffsrechte
- Hat der Benutzer Zugriffsrechte auf den SQL-Server und die Datenbank?
- Wenn Sie über die Windows-Anmeldung (Domäne) zugreifen: Ist der Benutzer in der richtigen Gruppe zugewiesen?
- Hat die Gruppe das Zugriffsrecht auf den SQL-Server?
- Hat die Gruppe das Zugriffsrecht auf die Datenbank?