sysadmin和sa在sql server 2000中 - 删除并重新创建登录?

时间:2013-10-25 02:46:41

标签: sql-server-2000 sysadmin sa

这是一个有点开放式的问题,所以任何填补我知识空白的信息都会受到赞赏。

从2000到2008进行SQL Server升级时,升级顾问程序可以发出以下警告: Upgrade Advisor检测到一个或多个与固定服务器角色名称匹配的用户定义登录名。 SQL Server 2008中保留了固定服务器角色名称。在升级到SQL Server 2008之前重命名登录。

我相信这是因为例如在sql server 2000数据库中登录'sysadmin'将在2008年与'sysadmin'的固定服务器角色冲突。

有没有办法安全地删除并重新创建这些登录信息,或者是否可以删除“sa”的登录信息会产生意想不到的后果?

1 个答案:

答案 0 :(得分:0)

Repro of issue:

1)删除内置/管理员帐户。 2)尝试通过sqlcmd或Management studio连接到SQL Server。您将收到错误18456 Level 14 State 1。 3)假设我也忘记了SA密码。

解决方案: 1)使用管理员帐户登录服务器。

2)停止SQL Server服务并使用-m switch(单用户模式)启动它。

2)键入sqlcmd -E并按Enter键。如果是其命名实例,则sqlcmd -S -E并按Enter键。

4)你会看到>标志

5)您需要使用的命令

 CREATE LOGIN [BUILTIN\Administrators] FROM WINDOWS WITH DEFAULT_DATABASE=  [master], DEFAULT_LANGUAGE=[us_english]

go

6)为我们刚刚创建的登录提供sysadmin角色

EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Administrators', @rolename = N'sysadmin'


GO

7)你完成了。退出它.8)重新启动没有-m参数的SQL Server服务。

您已完成。再次登录到SQL Server并重置SA密码。保存下雨天的SA密码。

Source

相关问题