WEB开发网
开发学院数据库MSSQL Server 初学者被SQL Server拒之门外的解决办法 阅读

初学者被SQL Server拒之门外的解决办法

 2007-08-20 09:49:13 来源:WEB开发网   
核心提示:问:我把我自己关在SQL Server 外面了,不能作为sysadmin登录,初学者被SQL Server拒之门外的解决办法,有什么办法解决吗?我需要重新安装SQL Server吗?答:不必重新安装SQL Server,要想重新访问SQL Server,并且因为没有定义其它Windows身份验证登录帐户而无法进入SQL

问:我把我自己关在SQL Server 外面了,不能作为sysadmin登录。有什么办法解决吗?我需要重新安装SQL Server吗?

答:不必重新安装SQL Server。要想重新访问SQL Server,需要修改SQL Server 2000 和 SQL Server 7.0决定SQL Server身份验证模式的注册表键值。

在SQL Server 7.0中,该键为:

HKEY_LOCAL_MACHINESOFTWAREMicrosoft
MSSQLServerMSSQLServerLoginMode

在SQL Server 2000中,该键为:

HKEY_LOCAL_MACHINESOFTWAREMicrosoft
MicrosoftSQLServerMSSQLServerLoginMode

"LoginMode"值为0表示只进行Windows 的身份验证,为1表示验证模式为混合模式。在您把自己关在外面之后,您可以把LoginMode改为1,重新启动SQL Server,然后以sa(system administrator)身份登录,输入您知道的sa密码即可。

以下关于SQL Server的角色成员的信息可能会帮助您理解为什么您会把自己关在SQLServer外面。在您安装SQL Server 2000 或 7.0的时候,安装进程自动地为BUILTINAdministrators",创建一个登录帐号,该帐号为 sysadmin角色成员。“BUILTINAdministrators”登录帐号代表了Microsoft Windows® 2000 或Microsoft Windows NT® server 上的系统管理员本地组。 Windows 2000 或 Windows NT的 “Administrator”帐户是系统管理员本地组的成员。此外,如果您的服务器是一个域的成员(包括Windows 2000 的域和Windows NT 4.0的域),Domain Admins全局组也会成为本地系统管理员组的成员。这意味着系统管理员本地组的所有成员都会自动地获得SQL Server上的“sysadmin”权限。

为了加强您的SQL Server的安全性,您可能更愿意创建您自己的组并授予它sysadmin权限,然后删除BUILTINAdministrators登录帐号,或者至少从sysadmin, sysadmin的身份登录到SQL Server上,除非按照我上面所说的方法修改注册表键值。正确的顺序是:

创建Windows 2000 或者 Windows NT 用户组并为组分配成员。例如:创建一个叫做SQLAdmins的组。

把SQLAdmins映射为SQL Server里的一个用Windows身份验证方式验证登录的帐户,并把该帐户分派到sysadmin服务器角色。

删除BUILTINAdministrators登录帐户或者把它从sysadmin服务器角色中删除。

把SQL Server的身份验证模式改为“仅进行Windows身份验证”。

重新启动SQL Server 以反映身份验证模式的变化。

注意: 如果您以下面的这种错误顺序实施这些步骤:删除BUILTINAdministrators”登录帐户,改变SQL Server 的身份验证模式为“仅进行Windows身份验证”,然后重新启动SQL Server,那么sa 帐户将被禁用,并且因为没有定义其它Windows身份验证登录帐户而无法进入SQL Server。为了避免这种情况发生,请以正确的顺序实施这些安全措施。

Tags:初学者 SQL Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接