El comando sdemon

La función principal del comando sdemon es administrar y controlar servicios de ArcSDE; no obstante, muchas de las operaciones también le permiten administrar o controlar conexiones directas a la geodatabase.

Las operaciones de inicio, apagado, pausa y reanudación normalmente administran servicios de ArcSDE instalados en sistemas UNIX. Los servicios ArcSDE instalados en los sistemas Microsoft Windows, normalmente se administran a través del cuadro de diálogo Servicios de Windows.

El servicio de ArcSDE se puede administrar de forma remota incluyendo las opciones servidor (-s) y servicio (-i) en la línea de comandos. Los servicios de ArcSDE del sistema operativo UNIX se pueden administrar de forma remota mediante una operación sdemon ejecutada en un sistema operativo Windows. Sin embargo, los servicios de ArcSDE del sistema operativo Windows solo se pueden administrar de forma remota mediante una operación sdemon ejecutada desde otro sistema operativo Windows. Para administrar de forma remota un servicio de ArcSDE instalado en un sistema UNIX, es necesario realizar otros pasos. Consulte los temas Iniciar un servicio remoto de ArcSDE en Linux o UNIX y Detener un servicio de ArcSDE remoto para obtener más información.

El administrador de la geodatabase tiene los permisos requeridos para desconectar (cancelar) las conexiones de servicio de ArcSDE a la geodatabase. Sin embargo, para desconectar las conexiones directas a la geodatabase, es necesario otorgar permisos adicionales al administrador de la geodatabase en la mayoría de los casos. Los permisos que se necesitan dependen del sistema de administración de bases de datos (DBMS) que se esté utilizando para almacenar la geodatabase. Estos permisos son los siguientes:

Sistema de administración de bases de datos

Privilegios/autoridad requeridos

DB2

El usuario debe tener autoridad DBADM. El usuario sde normalmente la tiene, pero si ha sido revocada, debe volver a otorgarse para cancelar conexiones directas a la geodatabase.

La operación de cancelación no se puede utilizar con sdemon si está utilizando DB2 en un sistema operativo z (z/OS).

Informix

El usuario debe ser el usuario de Informix

Debe tener Informix IDS 11 o una versión posterior para utilizar la operación de cancelación con el comando sdemon para desconectar las conexiones directas a la geodatabase.

Oracle

El usuario sde debe tener el rol DBA o contar con los permisos ALTER SYSTEM y SELECT_CATALOG_ROLE.

SQL Server

Si utiliza una geodatabase de esquema dbo, el administrador de la geodatabase ya es miembro de sysadmin y tiene la habilidad de eliminar conexiones a la base de datos. Si utiliza una geodatabase de esquema sde, el usuario debe agregarse al rol de servidor fijo processadmin (no al rol sysadmin).

NotaNota:

No puede utilizar la operación de cancelación para eliminar las conexiones directas a geodatabases en PostgreSQL.

Sintaxis de uso

Las herramientas de línea de comando de administración de ArcSDE utilizan la sintaxis del comando de estilo de UNIX y la notación según las siguientes convenciones:

sdemon -o start {[-i {<service> | <port#>}] {[-s <server_name>] | [-H <sde_directory>]}
 [-p <GDB_admin_password>]

sdemon -o pause {[-i {<service> | <port#>}]
 [-s <server_name>] | [-H <sde_directory>]}

sdemon -o resume {[-i {<service> | <port#>}] 
{[-s <server_name>] | [-H <sde_directory>]} [-p <GDB_admin_password>]

sdemon -o shutdown {[-i <service>] {[-s <server_name>] | [-H <sde_directory>]} 
[-p <GDB_admin_password>] [-N]

sdemon -o status {[-i {<service> | <port#>}] 
{[-s <server_name>] | [-H <sde_directory>]} [-q] [-u <user_name>] 
[-p <user_password>] [-D <database_name>]

sdemon -o info -I <{users | users_long | config | stats | locks |vars | instances}> 
[-q] {[-i {<service> | <port#>}] {[-s <server_name>] | [-H <sde_directory>]} 
[-u <user_name>] [-p <user_password>] [-D <database_name>]

sdemon -o kill -t <{ all | pid }> [-p <GDB_admin_password>] [-N] 
{[-i {<service> | <port#>}] {[-s <server_name>] | [-H <sde_directory>]} 
[-u <user_name>] [-p <user_password>] [-D <database_name>]

sdemon -h

sdemon -?

Operaciones

Una operación realiza una tarea específica relacionada con el comando y se especifica con la opción -o. Las siguientes operaciones están disponibles con el comando sdeservice:

Operación

Descripción

iniciar

Inicie el servicio de ArcSDE especificado.

Solo el administrador de la geodatabase puede utilizar esta operación.

pausar

Deshabilite las nuevas conexiones de cliente a la geodatabase, el servicio de ArcSDE y las conexiones directas.

Permanecen las conexiones existentes.

reanudación

Permita nuevas conexiones de cliente a la geodatabase.

apagado

Cierre el servicio de ArcSDE inmediatamente si no se están ejecutando tareas del servidor.

status

Informe del estado del servicio e información de conexión.

información

Muestre información sobre usuarios, configuración, estadísticas, bloqueos o variables de entorno.

Cualquier usuario de base de datos puede ejecutar esta operación.

cancelar

Finalice todas las conexiones o una conexión concreta a la geodatabase.

Opciones

Cada operación tiene un conjunto de opciones. Debido que las opciones están precedidas con una letra específica, puede pasarlas en cualquier orden. Las opciones distinguen entre mayúsculas y minúsculas, por lo tanto asegúrese de utilizar la letra correcta.

Dependiendo de la operación, algunas opciones son necesarias y otras no, tal y como se ha indicado con los corchetes ([]). Las siguientes opciones están disponibles con el comando sdeservice:

opción

Descripción

-D

Nombre de la base de datos; no se admite en Oracle

-h o -?

Utilizar cualquiera de estas opciones para comprobar la sintaxis del comando.

Si está ejecutando el comando de una C shell, utilizar -h o -\?.

-H

El directorio de inicio de ArcSDE (SDEHOME); solo es necesario si la variable SDEHOME no está establecida o varios servicios están en uso

-i

El nombre del servicio de ArcSDE o número de puerto; requerido si el valor predeterminado, esri_sde, no se utiliza.

-I

Solo se utiliza con la operación de información, esta operación pregunta sobre configuración, bloqueos, estadísticas, usuarios, variables de entorno o geodatabases de esquema de usuario (Oracle).

  • config: muestra las variables de la configuración actual
  • locks: muestra información sobre procesos con bloqueos
  • stats: muestra estadísticas de proceso de cada conexión cliente/servidor de ArcSDE; solo funciona con servicios de ArcSDE y solamente si tiene el parámetro SERVER_CONFIG, PROCSTATS, establecido en un valor que no sea -1
  • users: enumera las conexiones de usuario a la geodatabase, el tipo de conexión y los identificadores de proceso asociados; cada conexión = un registro
  • users_long: enumera las conexiones de usuario a la geodatabase, el tipo de conexión y los identificadores de proceso asociados; la información se devuelve en una lista de propiedades por cada conexión
  • vars: muestra las variables de entorno del servicio de ArcSDE
  • instances: devuelve todas las instancias de la base de datos Oracle

-N

No se realiza verificación; la operación empieza inmediatamente después de ser invocado

-o

Especifique una operación.

-p

Para las operaciones de inicio, pausa, reanudación, apagado y cancelación, esta opción se utiliza para especificar la contraseña del administrador de la geodatabase. Para las operaciones de estado e información, puede ser cualquier contraseña de usuario de base de datos.

-q

Se ocultan todos los títulos y todas las advertencias.

-s

Nombre de host del servidor ArcSDE (predeterminado: localhost)

-t

Se utiliza con la operación de cancelación para especificar una de las acciones siguientes:

  • all: todas las conexiones a la geodatabase eliminadas a la fuerza
  • A pid: elimina solo la conexión identificada por el identificador de procesos pasado con la opción

-u

Es el nombre de usuario de la base de datos.

Cuando se utiliza con la operación de cancelación, la opción -u permite especificar un usuario de base de datos que tiene los permisos requeridos en la base de datos para cancelar una conexión. Como es posible que el administrador de la geodatabase no tenga los permisos requeridos, este usuario no es siempre el administrador de la geodatabase.

Cuando se utiliza con las operaciones de información o estado, es el nombre de usuario de cualquier usuario que tenga acceso a la geodatabase.

Ejemplos

Iniciar un servicio de ArcSDE

En este ejemplo se crea un nuevo servicio de ArcSDE para Informix:

sdeservice -o create -d INFORMIX -p sde.space -i esri_inf 
-u informix -P sde.inf

El administrador de la geodatabase puede utilizar la operación de inicio para iniciar un servicio de ArcSDE que no se está ejecutando. El administrador puede iniciar el servicio localmente (ejecutar el comando en el equipo en el que se ejecutará el servicio) o de forma remota. Si va a iniciar el servicio localmente en un equipo Windows, puede hacerlo mediante el menú Servicios de Windows, en lugar de utilizar el comando sdemon con la operación de inicio. Si va a iniciar un servicio Windows de forma remota, debe realizar el proceso desde otro equipo Windows que tenga acceso al equipo host a través de la red, y el comando debe incluir el nombre del equipo host y del servicio. Por ejemplo:

sdemon -o start -s banana -i arcsde -p spatial.data

NotaNota:

Se debe utilizar el nombre del servicio (arcsde, en este caso) y no el número de puerto. El uso del número de puerto produce un error.

Puede iniciar un servicio desde la línea de comandos en un servidor de Windows local. Si solo tiene un servicio de ArcSDE, no es necesario especificar el nombre del servicio. Se le solicitará la contraseña del administrador si no la especifica.

sdemon -o start

Please enter ArcSDE DBA password:

ArcSDE instance esri_sde started Tues May 03 10:40:09 2011

Para iniciar un servicio de forma remota en un servidor UNIX o Linux, puede trabajar desde un equipo Windows o desde otro equipo UNIX o Linux. Sin embargo, antes de hacer esto debe realizar algún tipo de configuración. Consulte Establecer variables para el usuario sde de SO en Linux o UNIX.

Una vez que haya completado los pasos de configuración, puede iniciar el servicio de manera remota utilizando la operación de inicio.

sdemon -o start -s bluebeard -i sde -p spatial.data

En este ejemplo se muestra cómo iniciar un servicio local en un servidor UNIX:

sdemon -o start -i arcsde -p mineallmine

NotaNota:

La operación de inicio no utiliza el servicio especificado en la variable SDEINSTANCE, ni siquiera si está definida.

Pausar una geodatabase corporativa

La operación de pausa impide que se procesen las solicitudes adicionales de conexión de cliente. Ninguna tarea de cliente se puede conectar directamente ni con un servicio de ArcSDE a la geodatabase hasta que se reanude la geodatabase.

sdemon –o pause –i sde_service

Please enter ArcSDE DBA password:

ArcSDE instance sde_service on tool is Paused, no further connections will be allowed.

La operación de pausa cambia un valor en la tabla SERVER_CONFIG, que también bloquea usuarios para impedir que se conecten directamente a la geodatabase.

Reanudar una geodatabase en pausa

Utilice la operación de reanudación para permitir que las solicitudes de conexión de cliente se vuelvan a procesar. Las tareas de cliente se pueden conectar a la geodatabase una vez que se ejecuta el comando.

sdemon -o resume -i sde_service

Please enter ArcSDE DBA password:

ArcSDE instance sde_service on tool is Resuming, new connections will now be allowed.

Detener un servicio de ArcSDE

Utilice la operación de apagado para detener inmediatamente el servicio de ArcSDE si no se están ejecutando tareas del servidor. Si se ejecutan tareas del servidor, se le pedirá que quite las tareas en ejecución antes de que se lleve a cabo el apagado. Si utiliza la opción -N al apagar, todas las tareas de servidor se detienen y el sistema se apaga inmediatamente. Tenga en cuenta que la opción -i no se especifica en este ejemplo; como se utiliza el nombre del servicio predeterminado, no es necesario especificarla explícitamente.

sdemon -o shutdown

Please enter ArcSDE dba password:

ArcSDE instance esri_sde on juke is shutdown

Descubrir el estado de un servicio de ArcSDE

La operación de estado informa sobre si un servicio de ArcSDE se está ejecutando, está en pausa o detenido, así como del número de conexiones que hay en ese momento con la geodatabase. En el ejemplo siguiente se informa del estado de la instancia esri_sde. Muestra que el servicio se está ejecutando (no está detenido ni en pausa) y tiene dos conexiones en este momento.

sdemon -o status

ArcSDE instance esri_sde Status on juke at Mon May 02 08:09:10 2011
----------------------------------------------------------
Server Connection Mode:              Accepting Connections
Active Server Processes:             6

La geodatabase se pone en pausa cuando se realiza una actualización. Si comprueba el estado en ese momento, aparecerá el siguiente mensaje:

ArcSDE instance is currently paused for upgrade, no new connections allowed now

Obtener información sobre una geodatabase corporativa

Utilice la operación de información para mostrar información sobre usuarios, configuración, estadísticas, bloqueos o variables de entorno de una geodatabase corporativa. En este ejemplo se solicita información sobre la configuración del servicio de ArcSDE (solo se muestran resultados parciales). Como no se especifica la opción -i, se supone que el servicio tiene el valor predeterminado (5151).

sdemon -o info -I config

ArcSDE I/O Manager Configuration Parameters
-------------------------------------------
ArcSDE Version               10.1
ArcSDE Server Build          123456
Underlying DBMS              PostgreSQL
Max. Server Connections      52
Root Path                    C:\arcgis
Temp Path                    C:\Temp
...

En este ejemplo se devuelve información sobre los bloqueos en una geodatabase.

sdemon -o info -I locks -i 99887 -u auser -p dpwd -D gis

ArcSDE Instance 99887 Lock Table Information on server1

No ArcSDE Layer Locks registered.

1 SDE Id:  12, State:  9, Lock Type: Shared State
1 ArcSDE State Lock(s) currently in use.

1 SDE Id:  12, table:  62, Lock Type: Shared Table
1 ArcSDE Table Lock(s) currently in use  

No ArcSDE Object Locks registered.

En este ejemplo, se solicita información para geodatabases de esquema sde y de esquema de usuario en una base de datos Oracle:

sdemon -o info -I instances

ArcSDE Instance sdeora's instances on blue at Wed May 04 11:45:33 2011
----------------------------------------------------------------
Instance    Type      Created                       Id
---------   ------    --------------------------    --------
SDE         MASTER    Wed Oct 27 09:35:02 2005      0
SDE2        PROJECT   Tues Apr 12 08:12:09 2011     1

SugerenciaSugerencia:

También puede utilizar SQL para consultar la tabla del sistema INSTANCES para obtener información sobre las geodatabases de esquema de usuario en Oracle.

En el siguiente ejemplo se muestra qué usuarios están conectados a la geodatabase. En la información que se devuelve, S-ID es el identificador SDE del servidor, S-PID es el identificador de proceso de nivel del sistema operativo del servidor, User es el nombre de usuario bajo el que se hizo la conexión, Conn es el tipo de conexión (AS = servicio de ArcSDE/servidor de aplicaciones o DC = conexión directa), ClientMachine:OS es el nombre del equipo del cliente que se conecta y el sistema operativo que ejecuta, y Started indica la fecha y hora en que se inició la conexión.

sdemon -o info -I users -i 8874 -s myserver

ArcSDE Instance 8874 Registered Server Tasks on myserver at Wed Jun 01 08:33:55 2011
---------------------------------------------------------------
S-ID   S-PID  User       Conn    ClientMachine:OS      Started
-----  ------ ---------- ------  --------------------  ----------
123    558899 JAKE       AS      dcli:Win32            Wed Jun 01 06:30:00 2011
124    558900 MOLLY      DC      flying:Win32:XDR      Wed Jun 01 07:00:00 2011

La misma información devuelta con la opción users_long aparecería como sigue:

sdemon -o info -I users_long -i 8874 -s myserver

ArcSDE Instance 8874 Registered Server Tasks on myserver at Wed Jun 01 08:34:26 2011
---------------------------------------------------------------
Server task ID: 123
Server task PID: 558899
Connection type: AppSrvr
User name: JAKE 
Client machine: dcli
Client OS: Win32  
XDR: no
Start time: Wed Jun 01 06:30:00 2011

Server task ID:  124  
Server task PID: 558900 
Connection type: Direct
User name: MOLLY
Client machine: flying
Ciient OS: Win32
XDR: yes
Start time: Wed Jun 01 07:00:00 2011

Quitar conexiones de una geodatabase

La operación de cancelación desconecta todas las conexiones o una conexión concreta al servicio de ArcSDE o se puede utilizar para cancelar una conexión directa específica a la geodatabase.

La cancelación solo se debe utilizar si un proceso de usuario se ha cerrado incorrectamente o no responde. No obstante, puede que llegue un momento en que tenga que desconectar a todos los usuarios, por ejemplo, si quedan conectados unos pocos rezagados después de pedirle a todos los usuarios que se desconecten para llevar a cabo una actualización.

En este ejemplo se han desconectado todas las conexiones a la geodatabase:

sdemon -o kill -t all -i 4664 -p zeus

En este ejemplo se ha desconectado una conexión concreta. La conexión está utilizando el identificador de proceso (S-ID) 400.

sdemon -o kill -t 400 -i 50999 -p nolooking

9/11/2013