Howto: 恢复SQLServer数据库后,如何同步登陆名和用户名

文章编号 : 29672
软件: ArcSDE 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10
操作系统: Windows 2000, XP, 2003Server, 2008Server, Win 7
已邀请:

易智瑞技术支持

赞同来自:

摘要: 该文章提供了恢复数据库后如何同步SQLServer的登录名的步骤。 这个过程在SDE 数据库被恢复后经常是必须的。在这种环境中SDE的用户和登录名是不同步的。

如果SDE的登陆名没有被添加或者和数据库中的用户同步,会连接不上数据库导致ArcSDE服务无法启动。

内容: SP_CHANGE_USERS_LOGIN存储过程可以通过重新映射登录名和数据库名来解决这个问题。这个过程应该在所有的包括SDE用户名的数据库中执行。这个过程也必须针对于所有的SQLServer中的用户。 如果只启动SDE的服务,那制作SDE用户的映射就可以了。

1. 在运行SP_CHANGE_USERS_LOGIN之前,保证SQLServer的登录名已经被添加到SQLServer实例中了。
2 在SQLServer Management Studio中运行:
use database_name
go
EXEC sp_change_users_login 'Update_One', 'sde', 'sde'
Go

命令执行完后,会有如下的报告:
'The command(s) completed successfully.'

3 确定是否已经解决
使用ArcCatalog利用SDE用户登陆数据库,来查看登录名和用户名是否已经被正确的同步了。

你也可以运行以下的查询来查找主数据库中的syslogins表和数据库中的sysusers中的记录是否对应。


use master
go
select * from syslogins where name='sde'
go

use database_name
go
select * from sysusers where name='sde'
go




创建时间:2005-08-18
最近更新: 2011-10-31


原文链接
http://support.esrichina.com.c ... .html

要回复问题请先登录注册