从地理数据库 (geodatabase) 中移除 ArcSDE 服务连接
有时,某连接可能会挂起,从而使一个或多个地理数据库资料档案库表中的某记录呈孤立状态。发生此类情况时,您可能需要强制结束连接。要执行此操作,请使用 sdemon 管理命令。
执行 sdemon 命令的 kill 操作可移除与地理数据库的连接并清除 PROCESS_INFORMATION 表和锁表中的所有记录。
sdemon 命令的 kill 操作的语法如下所示:
sdemon –o kill –t {all | <pid>} [–D <database_name>] [–s <server_name>] -i <service> -u <user_name> -p <password>
-t 选项用于指定是移除与地理数据库的所有连接 (all) 还是只移除特定连接 (<pid>)。多数情况下,应输入地理数据库资料档案库中所剩某特定连接的进程标识符 (pid)。
如果要连接到除 Oracle 以外的任何数据库,请使用 -D 选项输入数据库的名称。(如果要连接到 Oracle,请不要指定 -D 选项。)
如果要连接到远程服务器上的数据库,请使用数据库所在服务器的名称指定 -s 选项。
指定 ArcSDE 服务的服务端口号。
使用 –u 和 –p 选项指定 ArcSDE 管理员用户的用户名和密码。
步骤:
- 在可以访问 ArcSDE 管理命令的计算机上打开 MS-DOS (Windows) 或 shell(UNIX 或 Linux)命令提示符。
- 获得有关已连接用户的信息,方法是使用 SE_connection_get_instance_users 函数、查询 PROCESS_INFORMATION 表或者执行 sdemon 命令的 info 操作及 user 或 users_long 选项。有关如何使用 sdemon 命令获得连接列表的说明,请参阅显示连接会话。
- 在返回的信息中,识别出要移除的连接的 SDE ID。对于 sdemon -o info 的 users 选项,为 S-ID。对于 users_long 选项,为 Server task ID。对于 SE_connection_get_instance_users 函数,为 svr_id。如果查询 PROCESS_INFORMATION 表,则为 sde_id。
- 输入 sdemon 命令的 kill 操作及本主题中之前所述相应选项。使用 -t 选项为要移除的连接指定 SDE ID 的值。
提示:
有关 sdemon 命令的详细信息,请参阅随企业级 ArcGIS Server 的 ArcSDE 组件附送的《ArcSDE 管理命令参考》。
相关主题
3/7/2012