ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS for Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Configurar una geodatabase en DB2

Disponible con una licencia Standard o Advanced.

  • Configurar DB2
  • Configurar un cliente de ArcGIS
  • Crear una geodatabase

Instale y configure IBM DB2 antes de utilizar la herramienta de geoprocesamiento Habilitar geodatabase corporativa o una secuencia de comandos de Python para crear geodatabases en una base de datos DB2.

En este tema se explica la creación de una geodatabase en DB2 en servidores Linux, UNIX o Windows. Consulte las instrucciones de configuración de una geodatabase en DB2 en el sistema operativo z (z/OS) en Configurar una geodatabase en DB2 z/OS.

Configurar DB2

Antes de que sea posible ejecutar la herramienta Habilitar geodatabase corporativa o una secuencia de comandos para crear una geodatabase en DB2, debe instalar y configurar el sistema de administración de bases de datos DB2. Antes de configurar una geodatabase, verifique los requisitos del sistema ArcGIS para asegurarse de que la base de datos, ArcGIS y las combinaciones de hardware que desea utilizar son compatibles.

Para instalar y configurar la instancia de DB2, debería seguir las instrucciones de IBM. A continuación, realice estos pasos para configurar una base de datos y el nombre de usuario que va a utilizar con la geodatabase.

  1. Cree un inicio de sesión en el sistema operativo denominado sde en el servidor DB2.

    Para crear una geodatabase se conectará a la base de datos con el nombre de usuario sde.

  2. Cree una base de datos DB2 y regístrela con el módulo Spatial Extender.
  3. Otorgue autoridad DBADM al usuario sde en la base de datos.

A continuación, configure un cliente de ArcGIS desde el que conectarse y cree una geodatabase en la base de datos DB2.

Configurar un cliente de ArcGIS

Puede ejecutar una secuencia de comandos de Python desde ArcGIS for Desktop (Estándar o Avanzado), ArcGIS Engine Runtime con la extensión Geodatabase Update o ArcGIS for Server (Standard o Advanced) para crear una geodatabase. Si desea ejecutar la herramienta de geoprocesamiento Habilitar geodatabase corporativa en lugar de una secuencia de comandos, use ArcGIS for Desktop.

Nota:

Necesita un archivo de códigos clave de ArcGIS Server para autorizar su geodatabase en la siguiente sección. Incluso si no ejecuta una secuencia de comandos de Python desde un equipo con ArcGIS Server para crear la geodatabase, debe instalar y autorizar ArcGIS Server para obtener el archivo de códigos clave.

  1. Instale el cliente de ArcGIS que desea usar para crear la geodatabase.

    Siga las instrucciones que se proporcionan en las guías de instalación de software.

  2. El cliente de ArcGIS se instalará en un equipo diferente al servidor DB2 en la mayoría de los casos; por consiguiente, instale y configure el cliente de DB2 en el equipo cliente de ArcGIS.

    IBM Data Server Runtime Client for DB2 se puede descargar desde My Esri, pero también puede utilizar su propia instalación del cliente de DB2. Consulte las instrucciones de instalación en la documentación de DB2. Si instala el cliente de DB2 en un sistema operativo de 64 bits, ejecute el ejecutable de 64 bits; con él se instalan archivos tanto de 32 bits como de 64 bits.

  3. Mediante una cadena de conexión DSNless puede conectarse a la base de datos DB2 desde ArcGIS. Sin embargo, si en su lugar quiere utilizar un nombre de fuente de datos para conectarse, debe catalogar la base de datos y configurar el nombre de la fuente de datos. Consulte las instrucciones de creación del nombre de la fuente de datos en la documentación de IBM DB2.

Ahora puede crear una geodatabase.

Crear una geodatabase

Utilice uno de los métodos siguientes para crear una geodatabase en la base de datos DB2:

Utilizar la herramienta Habilitar geodatabase corporativa

Si instala y configura ArcGIS for Desktop para conectarse a la base de datos DB2, puede ejecutar la herramienta Habilitar geodatabase corporativa.

  1. Inicie ArcMap o ArcCatalog.
  2. Conéctese a la base de datos DB2 desde el árbol de Catálogo. Utilice el nombre de usuario sde para conectarse.

    Asegúrese de guardar la contraseña de usuario sde en el cuadro de diálogo Conexión de base de datos.

    Nota:

    Antes de ArcGIS 10.3 no se podía usar una conexión DSNless cuando se habilitaba la función de geodatabase o se actualizaba una geodatabase.

  3. Haga clic con el botón derecho en la conexión de base de datos y haga clic en Habilitar geodatabase.

    Se abre la herramienta Habilitar geodatabase corporativa.

  4. Agregue el archivo de conexión de base de datos para la base de datos DB2 al cuadro de texto Base de datos de entrada.
  5. Navegue hasta el archivo de códigos clave de ArcGIS for Server que se creó cuando autorizó ArcGIS for Server y agréguelo al cuadro de texto Archivo de autorización.

    Cuando utiliza el asistente para autorizar ArcGIS for Server, se escribe un archivo de códigos clave en el servidor donde está instalado el software. Si autorizó ArcGIS for Server en un cuadro de Linux, el archivo se creó en /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release>/sysgen. Si autorizó en un servidor de Windows, el archivo se creó en Program Files\ESRI\License<release>\sysgen. Si aún no lo hizo, autorice ArcGIS for Server para crear este archivo.

  6. Haga clic en el botón Aceptar para ejecutar la herramienta.

    Un archivo de registro para la creación de la geodatabase (GDBCreateGeodatabase<#>.log) se escribe en el directorio especificado para su variable %TEMP% en el equipo en el que se ejecuta la herramienta. Si tiene algún problema al ejecutar la herramienta, verifique este archivo de registro para solucionar el problema.

Se crea una geodatabase en la base de datos DB2.

A continuación, cree usuarios para cargar datos en la geodatabase. Consulte las instrucciones de creación de usuarios en el Centro de información IBM DB2.

Utilizar una secuencia de comandos de Python

Para crear una geodatabase en una base de datos DB2, puede ejecutar una secuencia de comandos de Python desde ArcGIS for Desktop (Estándar o Avanzado), ArcGIS for Server (Standard o Advanced) o ArcGIS Engine (con la extensión Geodatabase Update).

Siga estos pasos para ejecutar una secuencia de comandos de Python y crear la geodatabase en una base de datos DB2:

  1. Cree un archivo de texto en el equipo cliente de ArcGIS y copie en él la secuencia de comandos siguiente.

    """
    Name: enable_enterprise_gdb.py
    Description: Provide connection information to an enterprise database
    and enable enterprise geodatabase.
    Type enable_enterprise_gdb.py -h or enable_enterprise_gdb.py --help for usage
    Author: Esri
    """
    
    # Import system modules
    import arcpy, os, optparse, sys
    
    
    # Define usage and version
    parser = optparse.OptionParser(usage = "usage: %prog [Options]", version="%prog 1.0 for " + arcpy.GetInstallInfo()['Version'] )
    
    #Define help and options
    parser.add_option ("--DBMS", dest="Database_type", type="choice", choices=['SQLSERVER', 'ORACLE', 'POSTGRESQL', 'DB2','INFORMIX','DB2ZOS', ''], default="", help="Type of enterprise DBMS:  SQLSERVER, ORACLE, POSTGRESQL, DB2, INFORMIX, or DB2ZOS.")
    parser.add_option ("-i", dest="Instance", type="string", default="", help="DBMS instance name")
    parser.add_option ("--auth", dest="account_authentication", type ="choice", choices=['DATABASE_AUTH', 'OPERATING_SYSTEM_AUTH'], default='DATABASE_AUTH', help="Authentication type options (case-sensitive):  DATABASE_AUTH, OPERATING_SYSTEM_AUTH.  Default=DATABASE_AUTH")
    parser.add_option ("-u", dest="User", type="string", default="", help="Geodatabase administrator user name")
    parser.add_option ("-p", dest="Password", type="string", default="", help="Geodatabase  administrator password")
    parser.add_option ("-D", dest="Database", type="string", default="none", help="Database name:  Not required for Oracle")
    parser.add_option ("-l", dest="Authorization_file", type="string", default="", help="Full path and name of authorization file")
    
    
    # Check if value entered for option
    try:
    	(options, args) = parser.parse_args()
    
    	
    #Check if no system arguments (options) entered
    	if len(sys.argv) == 1:
    		print "%s: error: %s\n" % (sys.argv[0], "No command options given")
    		parser.print_help()
    		sys.exit(3)
    	
    
    	#Usage parameters for spatial database connection
    	database_type = options.Database_type.upper()
    	instance = options.Instance
    	account_authentication = options.account_authentication.upper()
    	username = options.User.lower() 
    	password = options.Password	
    	database = options.Database.lower()
    	license = options.Authorization_file
    
    
    	if( database_type ==""):	
    		print " \n%s: error: \n%s\n" % (sys.argv[0], "DBMS type (--DBMS) must be specified.")
    		parser.print_help()
    		sys.exit(3)		
    		
    	if (license == ""):
    		print " \n%s: error: \n%s\n" % (sys.argv[0], "Authorization file (-l) must be specified.")
    		parser.print_help()
    		sys.exit(3)
    
    	if (database_type == "SQLSERVER"):
    		database_type = "SQL_SERVER"
    		
    	# Get the current product license
    	product_license=arcpy.ProductInfo()
    	
    	if (license == ""):
    		print " \n%s: error: %s\n" % (sys.argv[0], "Authorization file (-l) must be specified.")
    		parser.print_help()
    		sys.exit(3)
    	
    	# Checks required license level
    	if product_license.upper() == "ARCVIEW" or product_license.upper() == 'ENGINE':
    		print "\n" + product_license + " license found!" + "  Enabling enterprise geodatabase functionality requires an ArcGIS for Desktop Standard or Advanced, ArcGIS Engine with the Geodatabase Update extension, or ArcGIS for Server license."
    		sys.exit("Re-authorize ArcGIS before enabling an enterprise geodatabase.")
    	else:
    		print "\n" + product_license + " license available!  Continuing to enable..."
    		arcpy.AddMessage("+++++++++")
    	
    	# Local variables
    	instance_temp = instance.replace("\\","_")
    	instance_temp = instance_temp.replace("/","_")
    	instance_temp = instance_temp.replace(":","_")
    	Conn_File_NameT = instance_temp + "_" + database + "_" + username    
    	
    	if os.environ.get("TEMP") == None:
    		temp = "c:\\temp"	
    	else:
    		temp = os.environ.get("TEMP")
    	
    	if os.environ.get("TMP") == None:
    		temp = "/usr/tmp"		
    	else:
    		temp = os.environ.get("TMP")  
    	
    
    	Connection_File_Name = Conn_File_NameT + ".sde"
    	Connection_File_Name_full_path = temp + os.sep + Conn_File_NameT + ".sde"
    	
    	# Check for the .sde file and delete it if present
    	arcpy.env.overwriteOutput=True
    	if os.path.exists(Connection_File_Name_full_path):
    		os.remove(Connection_File_Name_full_path)
    	
    	print "\nCreating Database Connection File...\n"	
    	# Process: Create Database Connection File...
    	# Usage:  out_file_location, out_file_name, DBMS_TYPE, instnace, database, account_authentication, username, password, save_username_password(must be true)
    	arcpy.CreateDatabaseConnection_management(out_folder_path=temp, out_name=Connection_File_Name, database_platform=database_type, instance=instance, database=database, account_authentication=account_authentication, username=username, password=password, save_user_pass="TRUE")
            for i in range(arcpy.GetMessageCount()):
    		if "000565" in arcpy.GetMessage(i):   #Check if database connection was successful
    			arcpy.AddReturnMessage(i)
    			arcpy.AddMessage("\n+++++++++")
    			arcpy.AddMessage("Exiting!!")
    			arcpy.AddMessage("+++++++++\n")
    			sys.exit(3)            
    		else:
    			arcpy.AddReturnMessage(i)
    			arcpy.AddMessage("+++++++++\n")
    	
    	
    	# Process: Enable geodatabase...
    	try:
    		print "Enabling Enterprise Geodatabase...\n"
    		arcpy.EnableEnterpriseGeodatabase_management(input_database=Connection_File_Name_full_path, authorization_file=license)
    		for i in range(arcpy.GetMessageCount()):
    			arcpy.AddReturnMessage(i)
    		arcpy.AddMessage("+++++++++\n")
    	except:
    		for i in range(arcpy.GetMessageCount()):
    			arcpy.AddReturnMessage(i)
    			
    	if os.path.exists(Connection_File_Name_full_path):
    		os.remove(Connection_File_Name_full_path)
    			
    #Check if no value entered for option	
    except SystemExit as e:
    	if e.code == 2:
    		parser.usage = ""
    		print "\n"
    		parser.print_help() 
    		parser.exit(2)
    

  2. Guarde el archivo con una extensión .py.
  3. Ejecute la secuencia de comandos, proporcionando opciones e información específicas de su sitio.

    En el siguiente ejemplo ejecutado desde un equipo con Windows, se ejecuta el archivo enable_gdb.py para la base de datos spdata en la instancia db2prod. La conexión se realiza como usuario SDE con la contraseña Tgdbst@rtsh3r3. Se especifica un archivo de códigos clave en la ubicación predeterminada de ArcGIS Server para autorizar la geodatabase.

    enable_gdb.py --DBMS DB2 -i db2prod --auth DATABASE_AUTH 
    -u sde -p Tgdbst@rtsh3r3 -D spdata -l \\Program Files\ESRI\License10.3\sysgen\keycodes
    

    Este es un ejemplo de la ejecución de la secuencia de comandos en un equipo con Linux:

    /enable_gdb.py --DBMS DB2 -i db2prod --auth DATABASE_AUTH 
    -u sde -p Tgdbst@rtsh3r3 -D spdata -l /usr/arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License10.3/sysgen/keycodes
    
    Sugerencia:

    Introduzca -h o --help en la ventana de comando para obtener ayuda con la sintaxis.

    Un archivo de registro para la creación de geodatabase (GDBCreateGeodatabase<#>.log) se escribe en el directorio especificado para la variable TEMP o TMP en el equipo en el que se ejecuta la secuencia de comandos.

Se crea una geodatabase en la base de datos DB2.

A continuación, cree usuarios para cargar datos en la geodatabase. Consulte las instrucciones de creación de usuarios y concesión de privilegios para cargar datos en el Centro de información IBM DB2.

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

Plataforma ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2019 Esri. | Privacidad | Legal