SQL Server 2000sa密码忘记的正确解决方法,以及对SQL Server 数据库安装的最佳安全方案的描述,在对SQL Server 2000sa密码忘记的解决过程中,我们首先是以“windows身份验证”方式登录SQL查询分析器,然后执行
EXEC sp_password NULL,'hello','sa'
就可以将sa的密码改为hello了。
SQL忘记sa密码修改方法
假如你在NT下(包括2000)装的SQL Server,则可以这样做:
直接打开"查询分析器"(注意不是从"企业管理器"中进入,可以从开始菜单的程序组进去,假如找不到的话,直接在"运行"中输入"isqlw.exe"也可);
选择"Windows身份验证"进入,不需要输入密码,只要你是本机的系统管理员或者域管理员,此时自动成为SQL Server的管理员;
在查询分析器窗口中输入下面的语句直接更改SQL Server 2000sa密码:
sp_password Null,\'ok\',\'sa\'
运行后sa的密码变为"ok"
sp_password存储过程的功能是更改SQL Server登录的密码;
语法格式:
sp_password [ [ @old = ] http://support.microsoft.com/kb/256986/EN-US/) Microsoft Windows
注册表说明
警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以SQL Server 2000sa密码忘记解决因注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。
假如不能确定如何验证 MSDE 安装的身份验证模式,可以查看相应的注册表项。默认情况下,对于 Windows 身份验证,Windows LoginMode 注册表子项的值设置为 1。假如启用了混合模式身份验证,则此值为 2。
LoginMode 子项的位置取决于您是将 MSDE 作为默认 MSDE 实例安装还是作为命名实例安装。假如 MSDE 是作为默认实例安装的,则 LoginMode 子项位于以下注册表子项中:
HKLMSoftwareMicrosoftMSSqlserverMSSqlServerLoginMode
假如 MSDE 是作为命名实例安装的,则 LoginMode 子项位于以下注册表子项中:
HKLMSoftwareMicrosoftMicrosoft SQL Server%InstanceName%MSSQLServerLoginMode
注意:切换身份验证模式之前,必须设置 sa 密码,以免暴露潜在的安全漏洞。
有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
274773 (http://support.microsoft.com/kb/274773/EN-US/) FIX:If You Change Windows Security to Windows/SQL Security the SA Password is Blank
要从混合模式切换到集成 (Windows) 身份验证模式,请按以下步骤操作: 1. 要停止 MSSQLSERVER 以及所有其他相关服务(如 SQLSERVERAgent),请在“控制面板”中打开服务程序。
2. 打开注册表编辑器。要打开注册表编辑器,请依次单击开始和运行,然后键入:“regedt32”(不包括引号)
3. 找到以下两个子项之一(取决于 MSDE 是作为默认 MSDE 实例安装的还是作为命名实例安装的):
HKEY_LOCAL_MACHINESoftwareMicrosoftMSSqlserverMSSqlServer
或者
HKEY_LOCAL_MACHINESoftwareMicrosoftMicrosoft SQL Server\MSSQLServer
4. 在右窗格中,双击 LoginMode 子项。
5. 在 Dword 编辑器对话框中,将此子项的值设置为 1。确保选择了 Hex 选项,然后单击确定。
6. 重新启动 MSSQLSERVER 和 SQLSERVERAgent 服务以使更改生效。
SQL Server 安装的最佳安全方案
下面的每一项都会增强系统的安全性,并且它们都属于任何 SQL Server 安装的标准安全“最佳方案”。 使用非空密码保护 sa 登录帐户。有些蠕虫程序仅当您未对 sa 登录帐户采取安全措施时才会发作。 有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
313418 (http://support.microsoft.com/kb/313418/EN-US/) PRB:使用空 (NULL) SA 密码的非安全的 SQL Server 会给蠕虫程序以可乘之机
因此,要确保内置 sa 帐户具有强密码,必须按照 SQL Server 联机丛书的“系统管理员 (SA) 登录”主题中的建议进行操作(即使您从未直接使用 sa 帐户)。
阻塞位于 Internet 网关的端口 1433,然后分配 SQL Server 侦听备用端口。
假如在 Internet 网关上必须使用端口 1433,请启用进出过滤功能以防止误用端口。
在 Microsoft Windows NT 帐户(而非本地系统帐户)下运行 SQLServer 服务和 SQL Server 代理。
启用 Microsoft Windows NT 身份验证,然后启用对成功和失败登录的审核。然后,停止并重新启动 MSSQLServer 服务。配置您的客户端使用 Windows NT 身份验证。
以上的相关内容就是对SQL Server 2000sa密码忘记解决方法的介绍,望你能有所收获。