Problembehandlung bei direkten Verbindungen zu einer ArcSDE-Geodatabase
Die meisten Probleme, die im Zusammenhang mit direkten Verbindungen auftreten, haben eine der folgenden Ursachen:
- Die erforderlichen ArcSDE-Direktverbindungstreiber sind in der verbindenden Client-Anwendung nicht vorhanden.
- Die ODBC-Treiber (Open Database Connectivity) fehlen oder sind falsch konfiguriert.
- Die Datenbank ist nicht für die Annahme von Verbindungen konfiguriert, oder Verbindungen wurden gesperrt.
Erforderliche Direktverbindungstreiber nicht installiert
Die Version der Software wird in einer Systemtabelle in der Geodatabase gespeichert. Wenn ein Client eine Verbindung zur Geodatabase herstellt, wird die Versionsnummer in der Geodatabase mit den ArcSDE-Direktverbindungstreibern verglichen, die für die Client-Anwendung verfügbar sind.
Für die meisten Versionen von ArcSDE müssen die Versionen der ArcSDE-Geodatabase und des verbindenden Clients identisch sein, dies bezieht sich häufig sogar auf dasselbe Service Pack. Wenn die Versionsnummer in der Geodatabase nicht mit den Direktverbindungstreibern im Client übereinstimmt, wird einer der folgenden Fehler zurückgegeben:
ArcSde Direct Connect driver release isn't compatible with ArcSde database instance release
und das Beispiel
SDE Server Release is not compatible with the current Release Newer DC driver attempting to connect to older ArcSde instance
(Dies bedeutet, dass der verbindende Client eine neuere Version aufweist als die Geodatabase.)
Older DC driver attempting to connect to later ArcSde instance
(Gibt an, dass die Version des verbindenden Clients älter ist als die der Geodatabase.)
Clients der Version 10 können eine direkte Verbindung zu einer ArcSDE-Geodatabase der Version 9.3 oder 9.2 herstellen, wenn die entsprechenden Direktverbindungstreiber auf dem ArcGIS-Client installiert sind. Diese Treiber sind in der Client-Installation von ArcGIS enthalten.
Verbindungen von einem Client einer älteren Version zu einer Geodatabase der Version 10 werden nicht unterstützt.
ODBC-Treiber oder andere erforderliche Client-Dateien sind nicht vorhanden oder nicht ordnungsgemäß konfiguriert.
Jedes Datenbankmanagementsystem (DBMS) hat unterschiedliche Anforderungen im Hinblick auf die Einrichtung von ODBC-Verbindungen. Anweisungen zum Einrichten dieser Verbindungen finden Sie in den folgenden Themen:
Einrichten einer direkten Verbindung zu DB2
Einrichten einer direkten Verbindung zu Informix
Einrichten einer direkten Verbindung zu Oracle
Einrichten einer direkten Verbindung zu SQL Server
Die eigentliche Konfiguration der ODBC-Verbindung ist für Informix-Datenbanken erforderlich. Wenn diese auf dem Client nicht ordnungsgemäß konfiguriert sind, funktionieren Direktverbindungen von diesem Client nicht.
Datenbank nicht für die Annahme von Verbindungen konfiguriert
Datenbanken erfordern unter Umständen eine zusätzliche Konfiguration, damit Remote-Clients eine Verbindung herstellen können. Um beispielsweise eine Verbindung zu einer PostgreSQL-Datenbank herzustellen, muss die Datei "pg_hba.conf" so geändert werden, dass Clients eine Verbindung herstellen können. Diese Konfigurationsdatei befindet sich im PostgreSQL-Installationsverzeichnis. Informationen darüber, wie die Datei "pg_hba.conf" geändert werden muss, damit Remote-Verbindungen zugelassen werden, finden Sie im Installationshandbuch von ArcSDE for PostgreSQL und in der PostgreSQL-Dokumentation.
Bei SQL Server-Datenbanken müssen die Netzwerkprotokolle so eingerichtet sein, dass sie Verbindungen über das Netzwerk zulassen. Zum Prüfen der Netzwerkprotokolle öffnen Sie den Microsoft SQL Server Configuration Manager, blenden den Eintrag "SQL Server Network Configuration" ein und klicken auf die Protokolle für Ihre SQL Server-Instanz. Klicken Sie mit der rechten Maustaste auf das TCP/IP-Protokoll, und klicken Sie auf "Enable".
Verbindungen wurden blockiert
Es gibt mehrere Methoden, mit denen ein Datenbankadministrator (DBA) verhindern kann, dass Benutzer eine Verbindung zur Geodatabase herstellen. Dies erfolgt normalerweise, damit der DBA bestimmte administrative Tasks, z. B. Sicherungen oder Komprimierungsvorgänge, ausführen kann, ohne dass Benutzer mit der Datenbank verbunden sind.
Um zu verhindern, dass sich neue Benutzer an der Geodatabase anmelden, kann der DBA die Geodatabase anhalten. Wenn ein Benutzer versucht, eine Verbindung zu einer angehaltenen Geodatabase herzustellen, wird folgende Meldung zurückgegeben:
Failed to connect to database. SDE not accepting connection requests
Wenn Sie diese Meldung während eines Verbindungsversuchs erhalten, fragen Sie bei Ihrem DBA nach, ob die Sperre beabsichtigt war und, falls dies der Fall ist, wann die Geodatabase voraussichtlich wieder verfügbar sein wird.
Dies gilt sowohl für direkte Verbindungen als auch für Verbindungen, die über einen ArcSDE-Dienst vorgenommen werden.
Der DBA könnte Verbindungen auch blockieren, die über im DBMS bereitgestellte Funktionen hergestellt werden. Beispielsweise kann eine SQL Server-Instanz angehalten werden, um zu verhindern, dass neue Verbindungen zur Datenbank hergestellt werden. Die meisten anderen DBMS können in einen Ruhemodus versetzt werden, der ebenso verhindert, dass neue Verbindungen zur Datenbank hergestellt werden.