博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Sql 2005数据库的sa密码忘记了怎么办?
阅读量:5113 次
发布时间:2019-06-13

本文共 1329 字,大约阅读时间需要 4 分钟。

情况一:只是忘记了密码

 
sp_password Null,'123,'sa'
把sa的密码设为“123”
 
执行成功后有“Command(s) completed successfully.” OK!
 
情况二:忘记了密码,而且从sysadmin中删除了builtin\Administrators帐号,现在没其他人是sysadmin了
 
A:
SQL Server 2005/2008提供了针对该情况的更好的灾难恢复方法,无需侵入master数据库,不会对master数据库中的对象和数据(例如登陆帐号,证书等)造成损坏。Windows管理员组的成员现在当SQL Server以单用户模式启动(另外一个名称为维护模式)的情况下对SQL Server有了访问权限。
 
通过使用单用户模式,SQL Server 2005/2008避免了Windows管理员以sysadmin的身份在不被发现的情况下滥用权限。Windows管理员帐号能进行部分维护任务,例如安装补丁等。
 
要将SQL Server以单用户模式启动,您可以在命令行模式下增加“-m”参数。您也可以使用SQL Server配置管理员工具。它提供了对文件访问和其他权限的合适控制。要是用配置管理工具来恢复您的系统,您可以根据如下步骤:
 
1. 从菜单->SQL Server 2005->配置,打开配置管理工具(SQL Server Configuration Manager)
2. 停止您想要恢复的SQL Server实例
3. 找到“高级”标签,“启动参数”选项文本框中增加“;–m”
4. 点击“是”按钮,重新启动SQL Server实例
请注意:请确保在“;”和“-m”之间没有空格。注册参数解析器对类似的输入错误非常敏感。您可以在SQL Server的ERRORLOG文件内看到显示“SQL Server started in single-user mode.”
5. 在SQL Server实例以单用户模式启动后,Windows管理员帐号就能使用sqlcmd工具在Windows验证模式下连接SQL Server。您可以使用T-SQL命令诸如“sp_addsrvrolemember”来在sysadmin服务器角色中添加现有登录帐号或新创建一个登录帐号。范例语句如下:
 
EXEC sp_addsrvrolemember 'CONTOSO\Buck', 'sysadmin';
 
GO
 
6. 只要sysadmin访问权限被恢复,在配置管理中从启动参数中移除“;-m”参数,重新启动SQL Server实例
 
重要的安全提示:
a. 该过程应该只能被用于当没有其他方法使用特权帐号(例如sysadmin或等同角色)来访问系统的灾难恢复。
b. 该过程允许Windows管理员在SQL Server中有越权行为。它包含了可以被监测和检测出的明确的侵入行为,包含:
1. 在单用户模式下停止SQL Server并重启
2. 使用Windows帐号连接SQL Server。

 

转载于:https://www.cnblogs.com/leonkin/archive/2012/02/22/2363818.html

你可能感兴趣的文章
Entity Framework 三
查看>>
最近写了2套软件,WEB版的进销存管理系统,服装连锁店管理软件
查看>>
Android 调用已安装市场,进行软件评分的功能实现
查看>>
java中的String.format使用
查看>>
html active属性
查看>>
Maven MyBatis快速入门
查看>>
扩展方法:获取枚举的描述信息
查看>>
jquery笔记
查看>>
Andorid:日常学习笔记(3)——掌握日志工具的使用
查看>>
【Spring Boot学习之一】Spring Boot简介
查看>>
个人中心标签页导航
查看>>
HTML5应用盈利难,解决5大难题是关键
查看>>
HTML5设备能否改变企业应用开发?
查看>>
单反快门检测软件
查看>>
python静态方法和类方法
查看>>
模拟登录
查看>>
简单的CRUD(二)
查看>>
Spring MVC 跳转失败,但配置正确填坑
查看>>
UDP通信后端缓冲区 List<T>
查看>>
c++/c关于函数指针
查看>>