Instalar Oracle y ArcSDE en servidores independientes

Si va a instalar el servidor de aplicación ArcSDE en un servidor distinto a Oracle, existen una serie de pasos adicionales que debe seguir para configurar una geodatabase. Estos incluyen la instalación y configuración del cliente Oracle en el servidor ArcSDE, copiar bibliotecas compartidar desde el servidor de ArcSDE al servidor de Oracle, configurar el EXTPROC para encontrar las bibliotecas y definir la variable de entorno TWO_TASK o LOCAL en el servidor de ArcSDE.

Pasos:
  1. Asegúrese de que Oracle esté instalado y ejecutándose en un servidor.
  2. Instale ArcSDE en el servidor de ArcSDE según se describe en los temas Instalar ArcSDE para Oracle en Linux o UNIX o Instalar ArcSDE para Oracle en Windows.
  3. Instale el software cliente de Oracle en el servidor en el cual ArcSDE está instalado y configúrelo para que se conecte con la base de datos de Oracle.
  4. Compruebe que tiene acceso a la base de datos de Oracle remota utilizando SQL del servidor cliente.
  5. Configure la base de datos de Oracle, añadiendo un usuario sde y Definiendo las variables para el usuario del OS sde en Linux o UNIX si es necesario.
  6. Copie la biblioteca compartida st_shape que EXTPROC utiliza en el servidor de Oracle. Si tiene previsto utilizar el tipo de almacenamiento ST_Raster, copie también la biblioteca compartida libst_raster_ora en el servidor de Oracle. Los nombres exactos de estos archivos varían en función del sistema operativo (OS) que utiliza. Los nombres completos para cada OS compatible se indican en la Tabla 1.

    Asegúrese de que los archivos copiados en el servidor de Oracle están diseñados para ejecutarse en el sistema operativo del servidor de Oracle. Por ejemplo, si ArcSDE está instalado en un equipo Linux, pero Oracle está instalado en un equipo Solaris, los archivos de la biblioteca que copie en el servidor de Oracle deberán ser para Solaris. Para lograr los archivos de un sistema operativo distinto, puede instalar los archivos de software del componente ArcSDE en el servidor de Oracle, creando los archivos SDEHOME, y eliminarlo todo salvo los archivos de biblioteca que sean necesarios.

    O bien, si su base de datos de Oracle está instalada en un servidor de Windows, puede copiar las bibliotecas desde el directorio bin de ArcGIS Desktop. Sólo tiene que asegurarse de que ArcGIS Desktop tiene la misma versión que el ArcSDE que utiliza.

    Tabla 1

    Nombre de la biblioteca

    Nombres de archivos dependientes de OS

    ST_Shape

    st_shapelib.dll (Windows), libst_shapelib.so (Solaris, Linux y HP-UX Itanium), o libst_shapelib_64.so (IBM)

    ST_Raster

    NotaNota:

    La instalación de ST_Raster es opcional. Consulte Instalar el tipo ST_Raster en Oracle para obtener instrucciones si desea utilizar este tipo.

    libst_raster_ora.dll (Windows), libst_raster_ora.so (Solaris, Linux y HP-UX Itanium) o libst_raster_ora_64.so (IBM)

    Estos archivos se encuentran en el directorio bin (Windows) o lib (UNIX/Linux) de SDEHOME tras haber instalado ArcSDE. Puede copiar estos archivos en el directorio ORACLE_HOME\bin (Windows) o ORACLE_HOME/bin (UNIX/Linux) del servidor de Oracle, que es la ubicación predeterminada que Oracle busca para bibliotecas compartidas. O bien, puede trasladar estos archivos a cualquier directorio al que puede acceder el usuario que sea propietario de ORACLE_HOME.

  7. La definición de biblioteca del diccionario de datos de Oracle debe actualizarse con la ruta de biblioteca correcta en el archivo que contiene st_shapelib y libst_raster_ora. La ruta debe señalar la ubicación en el servidor de Oracle y no la ubicación de la instalación de ArcSDE.
    NotaNota:

    Modificar la definición de la ruta de la biblioteca invalidará a los cuerpos de paquetes que hacen referencia a la misma, por lo que los cuerpos de paquetes de algunos paquetes de procedimientos guardados de ArcSDE deberán recopilarse utilizando Oracle.

  8. Cree las entradas de la biblioteca de estas bibliotecas de ArcSDE con el siguiente comando SQL como el usuario administrador de ArcSDE (el usuario sde).

    Para los servidores de Windows, reemplace la ruta a las bibliotecas por <full_path> y ejecute los siguientes comandos:

    CREATE OR REPLACE LIBRARY st_shapelib AS '<full_path>\st_shapelib.dll'  CREATE OR REPLACE LIBRARY libst_raster AS '<full_path>\libst_raster_ora.dll'

    Para los servidores de UNIX o Linux, reemplace la ruta a las bibliotecas por <full_path>, proporcione los nombres de bibliotecas correctos y ejecute los siguientes comandos:

    CREATE OR REPLACE LIBRARY st_shapelib AS '<full_path>/libst_shapelib.so' CREATE OR REPLACE LIBRARY libst_raster AS '<full_path>/libst_raster_ora.so'

    NotaNota:

    El nombre exacto de la biblioteca en plataformas UNIX varía. Consulte la Tabla 1 para obtener el nombre correcto de la biblioteca del sistema operativo que utiliza.

  9. Configure EXTPROC de Oracle para que pueda encontrar las bibliotecas st_shapelib y libst_raster_ora. Esto se realiza en el archivo de configuración del receptor, listener.ora, y el archivo tnsnames.ora en el servidor de la base de datos.
    1. Añada la siguiente entrada en tnsnames.ora en el servidor de base de datos remoto.

      EXTPROC_CONNECTION_DATA =   (DESCRIPTION =    (ADDRESS_LIST =      (ADDRESS =       (PROTOCOL = IPC)       (KEY = extproc)        )     )      (CONNECT_DATA =       (SID = PLSExtProc)        (PRESENTATION = RO)       )    ) 

    2. Añada la siguiente entrada al SID_LIST en listener.ora del servidor de base de datos remoto.

      En servidores de Windows

       SID_LIST_LISTENER =   (SID_LIST =      (SID_DESC =     (SID_NAME = PLSExtProc)     (ORACLE_HOME =<ORACLE_HOME_PATH>)     (PROGRAM = extproc)     (ENVS="EXTPROC_DLLS=<full_lib_path>\st_shapelib.dll;<full_lib_path>\libst_raster_ora.dll")      )   )

      Tenga en cuenta de que las entradas para las bibliotecas st_shapelib y libst_raster_ora están separadas con un punto y coma.

      En servidores de UNIX o Linux

       SID_LIST_LISTENER =  (SID_LIST =    (SID_DESC =      (SID_NAME = PLSExtProc)      (ORACLE_HOME =<ORACLE_HOME_PATH>)      (PROGRAM = extproc)        (ENVS="EXTPROC_DLLS=<full_lib_path>/libst_shapelib.so:<full_lib_path>\libst_raster_ora.so,LD_LIBRARY_PATH=<full_lib_path>")       )   )

      NotaNota:

      La variable de ruta (indicada como LD_LIBRARY_PATH en el ejemplo) variarán en función de su sistema operativo. Para HP-UX Itanium, la variable es SHLIB_PATH. Para IBM AIX, es LIBPATH.

      Y, como se ha comentado antes, los nombres de las bibliotecas variarán según el sistema operativo. Asegúrese de utilizar el nombre de biblioteca correcto.

  10. Reinicie el receptor de Oracle.
  11. Asegúrese de que el usuario sde tiene los permisos necesarios para crear una geodatabase.
  12. Realice los pasos posteriores a la instalación de ArcSDE según se describe en los temas correspondientes a cada OS. Para servidores de Windows, consulte Crear una geodatabase en Oracle en Windows y Autorizar geodatabases en ArcSDE en Windows. Para servidores de Linux o UNIX, consulte Crear una geodatabase en Oracle en Linux o UNIX y Autorizar geodatabases de ArcSDE en Oracle en Linux o UNIX.
  13. Configure un servicio de ArcSDE si va a utilizar uno para conectarse con la geodatabase. En función del sistema operativo en el que se instala ArcSDE, puede hacer lo siguiente:
  14. Para que el cliente Oracle del servidor de ArcSDE se conecte con una instancia remota, debe definirse una variable de entorno para identificar la instancia de Oracle remota a través del nombre de servicio de red.
    • Si el servidor de ArcSDE está en UNIX o Linux, establezca TWO_TASK en el nombre de servicio de red de Oracle del archivo $SDEHOME/etc/dbinit.sde. La variable ORACLE_HOME también debe establecerse.
    • Si el servidor de ArcSDE está en Windows, establezca LOCAL en el nombre de servicio de red de Oracle del archivo %SDEHOME%\etc\dbinit.sde.

    Puede utilizar la variable TWO_TASK o LOCAL para especificar el nombre del servicio de red de una base de datos de Oracle local. Sin embargo, esto no se recomienda, porque origina una sobrecarga adicional al realizar una conexión con la base de datos. Para conexiones locales, deberá utilizar la variable Oracle_SID.

  15. Establezca la variable TNS_ADMIN si el archivo tnsnames.ora no se ha guardado en la ubicación predeterminada.

Temas relacionados


3/6/2012