Datenbankverbindungen in ArcGIS for Desktop
Sie können von ArcGIS aus eine Verbindung mit Datenbanken herstellen, um die darin enthaltenen Daten anzuzeigen, abzufragen und zu analysieren. Einige der Datenbanken, auf die Sie zugreifen, können Geodatabase-Tabellen, -Funktionen und -Verfahren enthalten; dies ist aber nicht erforderlich. Sie können eine Verbindung mit jeder unterstützten Datenbank herstellen und die Daten über ArcGIS for Desktop anzeigen.
Für alle unterstützten Datenbanken bis auf SQLite, können Sie eine Verbindung mit der Datenbank herstellen, indem Sie eine Datenbankverbindung unter dem Knoten "Datenbankverbindungen" des Kataloginhaltsverzeichnisses ArcGIS for Desktop herstellen. Dabei wird eine Datei auf dem Client-Computer erstellt, die die Verbindungsinformationen für eine Datenbank enthält, die Sie bereitstellen. Das Standardverzeichnis für die Datei ist \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog, aber Sie können die Verbindung auch an eine andere Position verschieben. Sie müssen jedoch sicher sein, dass die Anwendungen und Benutzer, die eine Verbindung benötigen, problemlos auf das Verzeichnis zugreifen können, in dem Sie die Verbindungsdatei ablegen.
Wenn Sie die Daten aus dieser Verbindung als Quelle für einen Service verwenden, z. B. für einen Geoverarbeitungs- oder Geokodierungs-Service, müssen Sie die Verbindungsdatei ggf. in einem freigegebenen Verzeichnis im Netzwerk platzieren. Weitere Informationen zum Freigeben einer Verbindungsdatei finden Sie unter Vorbereiten von Ressourcen zur Veröffentlichung als Services.
Wenn Sie über Verbindungsdateien verfügen, die vor 10.1 erstellt wurden, sind diese weiterhin funktionsfähig. Wenn Sie jedoch eine neue Verbindung mit der Geodatabase über einen ArcSDE-Service erstellen müssen, verwenden Sie das Geoverarbeitungswerkzeug ArcSDE-Verbindungsdatei erstellen .
Wenn Sie eine Verbindung mit einer Datenbank herstellen, wählen Sie den Typ der Datenbank aus, zu der eine Verbindung hergestellt wird, und geben dann Informationen an, anhand derer ArcGIS die Datenbank- und Authentifizierungsinformationen für die Anmeldung bei der Datenbank finden kann.
Datenbankplattform und Eigenschaften
Der Wert, den Sie aus der Dropdown-Liste Datenbankplattform auswählen, gibt den Typ der Datenbank an, mit dem eine Verbindung hergestellt werden soll. Die Felder, die im Dialogfeld zur Verfügung stehen, und somit auch die von Ihnen angegebenen Informationen, hängen vom gewählten Typ der Datenbankplattform ab.
In den folgenden Abschnitten wird erläutert, wann die einzelnen Datenbankplattformen gewählt werden sollten und welche weiteren Informationen zum Verbinden benötigt werden:
DB2
Wählen Sie in der Dropdown-Liste Datenbankplattform die Option DB2 aus, um eine Verbindung mit einer IBM DB2-Datenbank auf einem Linux-, UNIX- oder Windows-Server herzustellen, oder stellen Sie direkt eine Verbindung mit einer Geodatabase in einer DB2-Datenbank auf einem Linux-, UNIX- oder Windows-Server her.
Wenn Sie eine Verbindung mit DB2 herstellen, müssen Sie im Textfeld Datenquelle den Namen der katalogisierten DB2-Datenbank eingeben. Wenn die Datenbank nicht katalogisiert ist, können Sie stattdessen die folgende Syntax für die Verbindung verwenden:
HostName=<Host>;Port=<Portnimmer>;Database=<Datenbankname>;
Geben Sie die für Ihre Website entsprechenden Informationen an. Wenn sich Ihre DB2-Datenbank z. B. auf dem Server "cube" befindet und über DBMS-Port 50000 kommuniziert und wenn der Datenbankname "spdata" ist, lautet die Verbindungszeichenfolge wie folgt:
HostName=cube;Port=50000;Database=spdata
Der Typ der Verbindungszeichenfolge wird als DSN-lose Verbindung bezeichnet.
Beim Aktivieren der Geodatabase-Funktionalität oder beim Aktualisieren einer Geodatabase kann keine DSNless-Verbindung verwendet werden.
DB2 for z/OS
Wählen Sie in der Dropdown-Liste Datenbankplattform die Option DB2 for z/OS aus, um eine Verbindung mit einem DB2-Datenbanksubsystem unter einem z-Betriebssystem (z/OS) bzw. mit einer Geodatabase in einem DB2-Datenbanksubsystem unter z/OS herzustellen.
Wenn Sie eine Verbindung mit einem DB2 for z/OS-Datenbanksubsystem herstellen, müssen Sie im Textfeld Datenquelle den Namen des katalogisierten DB2-Datenbanksubsystems eingeben.
Wenn Sie das Datenbanksubsystem nicht katalogisieren, können Sie die im vorherigen Abschnitt für DB2 beschriebene Verbindungszeichenfolge verwenden.
Informix
Wählen Sie in der Dropdown-Liste Datenbankplattform die Option Informix aus, um eine Verbindung mit einer IBM Informix-Datenbank herzustellen, oder stellen Sie direkt eine Verbindung mit einer Geodatabase in einer Informix-Datenbank her.
Wenn Sie eine Verbindung mit Informix herstellen, müssen Sie im Textfeld Datenquelle den Namen der ODBC-Datenquelle (Open Database Connectivity) für die Informix-Datenbank eingeben.
Wenn Sie keinen ODBC-Datenquellennamen konfigurieren, können Sie stattdessen die folgende Syntax für die Verbindung verwenden:
HostName=<Server, auf dem Informix installiert ist>;ServerName=<Informix-Server>;ServiceName=<in Service-Datei definierter Service-Name>;Database=<Name der Informix-Datenbank>
Geben Sie die für Ihre Website entsprechenden Informationen an. Wenn sich Ihre Informix-Instanz z. B. auf dem Server "hirise" befindet, der Instanzenname "superids" ist, die Kommunikation über Port 54321 erfolgt und der Datenbankname "gisdata" ist, lautet die Verbindungszeichenfolge wie folgt:
HostName=hirise;ServerName=superids;ServiceName=54321;Database=gisdata
Der Typ der Verbindungszeichenfolge wird als DSN-lose Verbindung bezeichnet.
Zwar müssen Sie keinen ODBC-Datenquellennamen konfigurieren, um eine DSN-lose Verbindung verwenden zu können, doch müssen Sie den Informix-Server über SetNet32 registrieren. Beachten Sie außerdem, dass Sie zum Aktivieren der Geodatabase-Funktionalität in einer Informix-Datenbank oder zum Aktualisieren einer Geodatabase keine DSNless-Verbindung verwendet werden können.
Netezza
Wählen Sie in der Dropdown-Liste Datenbankplattform die Option Netezza aus, um eine Verbindung mit einer Datenbank in einer Netezza-Data-Warehouse-Anwendung herzustellen.
Wenn Sie eine Verbindung mit einer Netezza-Datenbank herstellen, müssen Sie im Textfeld Datenquelle den Namen der ODBC-Datenquelle für die Netezza-Datenbank eingeben.
Wenn Sie keinen ODBC-Datenquellennamen konfigurieren, können Sie stattdessen die folgende Syntax für die Verbindung verwenden:
ServerName=<Host>;Port=<Portnummer>;Database=<Datenbankname>
Geben Sie die für Ihre Website entsprechenden Informationen an. Wenn sich Ihre Netezza Data Warehouse-Anwendung z. B. auf dem Server "ndwa" befindet und über Port 5480 kommuniziert und wenn der Datenbankname "spatial" ist, lautet die Verbindungszeichenfolge wie folgt:
ServerName=ndwa;Port=5480;Database=spatial
Oracle
Wählen Sie in der Dropdown-Liste Datenbankplattform die Option Oracle aus, um eine Verbindung mit einer Oracle-Datenbank herzustellen, oder stellen Sie direkt eine Verbindung mit einer Geodatabase in einer Oracle-Datenbank her.
Wenn Sie eine Verbindung mit Oracle herstellen, geben Sie entweder den Oracle TNS-Namen in das Textfeld Instanz ein oder stellen Sie eine der folgenden Oracle Easy Connect-Zeichenfolgen bereit:
- Der Name des Oracle-Servers/Oracle-Dienstname oder ID
Wenn beispielsweise Oracle auf "myserver" installiert ist und der Oracle-Dienstname "myosvc" lautet, geben Sie Folgendes ein:
myserver/myosvc
- Der Name des Oracle-Servers: Oracle-Portnummer/Oracle-Dienstname oder ID
In diesem Beispiel ist Oracle auf "myserver" installiert und überwacht Port 60000, der Oracle-Dienstname lautet "myoservice".
myserver:60000/myoservice - Die URL des Oracle-Servers.
Die URL für dieselbe Instanz im letzten Beispiel lautet dann:
//myserver:60000/myoservice - Der Name des Oracle-Servers (kann verwendet werden, wenn der Oracle-Listener auf dem Server so konfiguriert ist, dass er auf eine Standardinstanz zeigt).
- IP-Adresse des Oracle-Servers/Oracle-Dienstname oder ID
Wenn beispielsweise die Adresse des Servers 10:10:10:10 ist und der Oracle-Servicename "orasvc" lautet, geben Sie 10:10:10:10/orasvc ein.
IPV6-Adressen schließen Sie in eckige Klammern ein. Beispiel: [4000:vu5:0:0:f666:h191:77f5:i2rs]/orasvc
- IP-Adresse des Oracle-Servers: Oracle-Portnummer/Oracle-Dienstname oder ID
In diesem Beispiel lautet die IP-Adresse 10:20:30:40, der Port 59999 und der Oracle-Service "myomy1": 10:20:30:40:59999/myomy1.
Eine IPV6-Adresse für denselben Port und Service sieht dann wie folgt aus: [6543:eo4:0:1:f587:l249:12f9:w3ud]:59999/myomy110:20:30:40:59999/myomy1
Stellen Sie sicher, dass die Oracle-Instanz so konfiguriert wird, dass Easy Connect zulässig ist. Wenn der Oracle-Client vollständig installiert ist, Sie jedoch die Easy Connect-Syntax zum Herstellen der Verbindung verwenden möchten, müssen Sie sicherstellen, dass die Datei "sqlnet.ora" auf dem Client so konfiguriert ist, dass die Verwendung von Easy Connect zulässig ist, und dass der Oracle-Server so konfiguriert ist, dass die Easy Connect-Syntax zulässig ist. Beachten Sie außerdem, dass falls die Oracle-Instanz nicht die standardmäßige Oracle-Portnummer überwacht, Sie eine Verbindungssyntax verwenden müssen, die die Portnummer umfasst.
PostgreSQL
Wählen Sie in der Dropdown-Liste Datenbankplattform die Option PostgreSQL aus, um eine Verbindung mit einer PostgreSQL-Datenbank herzustellen, oder stellen Sie direkt eine Verbindung mit einer Geodatabase in einer PostgreSQL-Datenbank her.
Wenn Sie eine Verbindung mit PostgreSQL herstellen, müssen Sie eine Instanz und eine Datenbank angeben.
Die Instanz ist der Name oder die IP-Adresse des Servers, auf dem PostgreSQL installiert ist. Wenn der PostgreSQL-Datenbank-Cluster beispielsweise auf dem Server "ficus" installiert ist, geben Sie im Textfeld Instanz den Namen ficus ein. Wenn Sie eine IPV6-Adresse angeben, schließen Sie diese in eckige Klammern ein. Wenn die IPV6-Adresse des Servers 1111:aa1:0:1:f111:a222:33f3:b4bb lautet, geben Sie im Textfeld Instanz die Zeichenfolge [1111:aa1:0:1:f111:a222:33f3:b4bb] ein.
Wenn der PostgreSQL-Datenbankcluster einen anderen Port als den Standardport (5432) überwacht, geben Sie die Portnummer mit der Instanz an. Wenn PostgreSQL beispielsweise auf dem Server "mamabear" installiert ist und Port 49200 überwacht, geben Sie im Textfeld Instanz die Zeichenfolge mamabear,49200 ein.
Die Datenbank ist der Name der konkreten Datenbank auf dem PostgreSQL-Datenbankcluster, mit dem Sie eine Verbindung herstellen möchten. Sie können den Namen der Datenbank im Textfeld Datenbank eingeben oder aus der Dropdown-Liste auswählen. Der Datenbankname ist auf eine Länge von 31 Zeichen begrenzt.
Teradata
Wählen Sie Teradata aus der Dropdown-Liste Datenbankplattform aus, um eine Verbindung mit einer Teradata-Datenbank herzustellen.
Wenn Sie eine Teradata-Verbindung herstellen, geben Sie den ODBC-Datenquellennamen in das Textfeld Datenquelle ein. Wenn Sie keinen ODBC-Datenquellennamen konfiguriert haben, können Sie die IP-Adresse des Teradata-Servers im Format dbcName=<IP-Adresse> angeben. Wenn der Server beispielsweise die IPV4-Adresse "200.30.200.10" aufweist, geben Sie dbcName=200.30.200.10 ein. Wenn der Server eine IPV6-Adresse hat, schließen Sie diese in eckige Klammern ein. Für einen Server mit der IPV6-Adresse "3020:12z3:y4xw:5099:0:v678:u111:ts22" geben Sie dbcName=[3020:12z3:y4xw:5099:0:v678:u111:ts22] ein.
Sie müssen außerdem eine Datenbankauthentifizierung verwenden und einen gültigen Benutzernamen und ein Kennwort angeben. Betriebssystemauthentifizierung wird nicht unterstützt.
Authentifizierungstyp
Zum Erstellen einer Verbindung mit einer Datenbank oder Geodatabase stehen zwei Login-Optionen zur Verfügung: Datenbankauthentifizierung oder Betriebssystemauthentifizierung.
Datenbankauthentifizierung
Wenn Sie Datenbankauthentifizierung auswählen, müssen Sie in den Textfeldern Benutzername und Kennwort einen gültigen Datenbankbenutzernamen und ein Kennwort angeben. Benutzernamen können maximal 30 Zeichen lang sein.
Außerhalb von ArcGIS können Sie Benutzernamen in SQL Server erstellen, die Sonderzeichen enthalten. Diese Benutzernamen müssen bei jeder Verwendung durch Leerzeichen begrenzt sein. ArcGIS fügt das Trennzeichen bei der Übergabe an SQL Server automatisch hinzu, Sie müssen dem Benutzernamen also keine Trennzeichen hinzufügen. Wenn der Benutzername beispielsweise map.user lautet, geben Sie map.user, nicht "map.user", in das Textfeld Benutzername ein. Weitere Informationen zu normalen und begrenzten Identifikatoren finden Sie in der SQL Server-Dokumentation.
Deaktivieren Sie die Option Benutzername und Kennwort speichern, wenn Sie die Anmeldeinformationen nicht als Teil der Verbindung speichern möchten. Dies erhöht die Sicherheit der Datenbank. Allerdings werden Sie in diesem Fall bei jedem Verbindungsaufbau zur Eingabe eines Benutzernamens und eines Kennwortes aufgefordert. Beachten Sie zudem, dass für Verbindungsdateien, die ArcGIS-Services den Zugriff auf die Datenbank oder Geodatabase gewähren, Benutzername und Kennwort speichern aktiviert werden muss. Dies gilt auch, wenn Sie die Katalogsuche zum Suchen von Daten verwenden, auf die über diese Verbindungsdatei zugegriffen wird.
Betriebssystemauthentifizierung
Wenn Sie Betriebssystemauthentifizierung wählen, müssen Sie keinen Benutzernamen und kein Kennwort eingeben. Die Verbindung wird anhand des Anmeldenamens und des Kennwortes hergestellt, die zur Anmeldung beim Betriebssystem verwendet wurden. Falls es sich bei den Anmeldedaten für das Betriebssystem nicht um eine gültige Datenbankanmeldung handelt, kann keine Verbindung hergestellt werden. Einige Datenbankmanagementsysteme unterstützen nicht die Betriebssystemauthentifizierung.
Wenn Sie die Betriebssystemauthentifizierung in Oracle verwenden, ist das Betriebssystem mit der Zeichenfolge "os_authent_prefix" (standardmäßig OPS$) als Präfix versehen und wird in der Tabelle "USERNAME" gespeichert. Beim Herstellen einer Verbindung zur Geodatabase darf der Benutzername maximal 30 Zeichen umfassen. In diesen bestimmten Fällen gibt ArcGIS den Benutzernamen in Anführungszeichen an und übergibt ihn an die Datenbank. Diese Anführungszeichen werden dabei mitgezählt.