忘记SQL Server 管理员密码不可怕,学会这招就够了

简介:

如果忘记 SQL Server 管理员密码,可以使用下面的方式处理 

1. 使用 SQL Server 服务器计算机本地 Administrators 组的任何成员登录到 SQL Server 服务器 
2. 确定忘记管理员密码的 SQL Server 服务 
可以在服务(services.msc)里面查看,或者使用下面的 Powershell 命令 
Get-Service | ? DisplayName -Like ‘SQL Server (*)’ 
3. 停止 SQL Server 服务 
4. 以单用户模式(/m参数)启动 SQL Server 服务 
使用参数 /m 启动,在管理员命令提示符下执行 
net start start mssqlserver /m 
5. 使用 slqcmd 完成管理员解锁 
在单用户模式下启动 SQL Server 可使计算机本地 Administrators 组的任何成员作为 sysadmin 固定服务器角色的成员连接到 SQL Server 实例 

6. 完成后停止 SQL Server 服务,并以正常方式启动 SQL Servr 和相关服务即可

Powershell 通用脚本 – 将当前登录帐号加入 SQL Server 的 sysadmin 成员

# 脚本需要在管理员命令提示符下的 Powrshell 中执行  
# 可以通过下面这个命令进入到管理员命令提示符下的 Powershell  
# Powershell Start-Process Powershell.exe -Verb runas  
ServiceName=′mssqlServiceName=′mssql reportdb’ # 定义要操作的 SQL Server 服务 
Service=Get−ServiceService=Get−Service ServiceName 
# 停止 SQL Server 服务并以单用户模式启动 
net.exe stop  (( Service.Name) 
net.exe start  (( Service.Name) /m 
# 当前用户加入 SQL Server 的 sysadmin 成员 
Instance=′.\'+(Instance=′.\'+( Service.Name -Split ‘$’)[1] 
If( -Not  Instance)$Instance=‘.′Instance)$Instance=‘.′ user = [Environment]::UserDomainName + ‘\’ + [Environment]::UserName 
sql="CREATELOGIN[sql="CREATELOGIN[ user] FROM WINDOWS; EXEC sp_addsrvrolemember [ user],sysadmin”sqlcmd.exe−Suser],sysadmin”sqlcmd.exe−S Instance -Q $sql 
# 以正常方式启动 SQL Server 服务(依赖的服务需要手工检查启动)  
net.exe stop  (( Service.Name) 

net.exe start  (( Service.Name)

其他说明

可以让您重新获得访问权限的一种方法是重新安装 SQL Server 并将所有数据库附加到新实例。这种解决方案很耗时,并且若要恢复登录名,可能还需要从备份中还原 master 数据库。如果 master 数据库的备份较旧,则它可能未包含所有信息。如果 master 数据库的备份较新,则它可能与前一个实例具有同样的登录名;因此管理员仍将被锁定。


原文发布时间为:2018-09-2

本文作者:邹建

本文来自云栖社区合作伙伴“数据和云”,了解相关信息可以关注“数据和云”。

相关文章
|
SQL 安全 关系型数据库
SQL注入之万能密码:原理、实践与防御全解析
本文深入解析了“万能密码”攻击的运行机制及其危险性,通过实例展示了SQL注入的基本原理与变种形式。文章还提供了企业级防御方案,包括参数化查询、输入验证、权限控制及WAF规则配置等深度防御策略。同时,探讨了二阶注入和布尔盲注等新型攻击方式,并给出开发者自查清单。最后强调安全防护需持续改进,无绝对安全,建议使用成熟ORM框架并定期审计。技术内容仅供学习参考,严禁非法用途。
2139 0
|
SQL 安全 Go
SQL注入不可怕,XSS也不难防!Python Web安全进阶教程,让你安心做开发!
在Web开发中,安全至关重要,尤其要警惕SQL注入和XSS攻击。SQL注入通过在数据库查询中插入恶意代码来窃取或篡改数据,而XSS攻击则通过注入恶意脚本来窃取用户敏感信息。本文将带你深入了解这两种威胁,并提供Python实战技巧,包括使用参数化查询和ORM框架防御SQL注入,以及利用模板引擎自动转义和内容安全策略(CSP)防范XSS攻击。通过掌握这些方法,你将能够更加自信地应对Web安全挑战,确保应用程序的安全性。
452 4
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
1038 13
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
734 9
|
SQL 存储 网络安全
关系数据库SQLserver 安装 SQL Server
【7月更文挑战第26天】
433 6
|
SQL 安全 Go
SQL注入不可怕,XSS也不难防!Python Web安全进阶教程,让你安心做开发!
【7月更文挑战第26天】在 Web 开发中, SQL 注入与 XSS 攻击常令人担忧, 但掌握正确防御策略可化解风险. 对抗 SQL 注入的核心是避免直接拼接用户输入至 SQL 语句. 使用 Python 的参数化查询 (如 sqlite3 库) 和 ORM 框架 (如 Django, SQLAlchemy) 可有效防范. 防范 XSS 攻击需严格过滤及转义用户输入. 利用 Django 模板引擎自动转义功能, 或手动转义及设置内容安全策略 (CSP) 来增强防护. 掌握这些技巧, 让你在 Python Web 开发中更加安心. 安全是个持续学习的过程, 不断提升才能有效保护应用.
347 1
|
SQL Oracle 关系型数据库
MySQL、SQL Server和Oracle数据库安装部署教程
数据库的安装部署教程因不同的数据库管理系统(DBMS)而异,以下将以MySQL、SQL Server和Oracle为例,分别概述其安装部署的基本步骤。请注意,由于软件版本和操作系统的不同,具体步骤可能会有所变化。
1539 3
|
存储 SQL C++
对比 SQL Server中的VARCHAR(max) 与VARCHAR(n) 数据类型
【7月更文挑战7天】SQL Server 中的 VARCHAR(max) vs VARCHAR(n): - VARCHAR(n) 存储最多 n 个字符(1-8000),适合短文本。 - VARCHAR(max) 可存储约 21 亿个字符,适合大量文本。 - VARCHAR(n) 在处理小数据时性能更好,空间固定。 - VARCHAR(max) 对于大文本更合适,但可能影响性能。 - 选择取决于数据长度预期和业务需求。
1523 1
|
SQL 存储 测试技术