- 工信部备案号 滇ICP备05000110号-1
- 滇公网安备53011102001527号
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
- CN域名投诉举报处理平台:电话:010-58813000、邮箱:service@cnnic.cn
欢迎来到8455线路检测中心小课堂
今天告诉大家当SQL Server的Windows账户被误删且sa禁用时,无法登录时改如何解决。
当 SQL Server 的 Windows 身份验证账户被误删且 sa 登录同时被禁用时,会导致完全无法登录数据库。这种“双重锁定”状态通常源于两个操作叠加:
1. 安装时选择“Windows 身份验证模式”:默认禁用 sa 账户。
2. 后续误删 Windows 登录账户:导致唯一访问途径失效。
单用户管理员模式启动
1. 停止 SQL Server 服务
以管理员身份运行命令提示符(CMD)或 PowerShell
net stop MSSQLSERVER # 若为默认实例;命名实例需替换为实例名
如果输入net stop MSSQLSERVER 失败 需要查询实例名:
1.1 win + R 输入 services.msc 点击确定
1.2 找到 SQL Server (XXX) 括号中的XXX就是实例名
2. 以单用户模式启动 SQL Server
进入安装目录后输入:
sqlservr.exe -m -f # -m 启用单用户模式,-f 最小配置启动
保持此窗口运行,不要关闭
3. 通过 SSMS 连接并修复账户
3.1 打开 SQL Server Management Studio (SSMS)
3.2 服务器名输入 localhost,身份验证选择 Windows 身份验证。
3.3 点击“连接”,若弹出登录框点击“取消”,然后在菜单栏选择“新建查询”。
执行以下sql命令:
ALTER LOGIN sa ENABLE; -- 启用 sa 账户
ALTER LOGIN sa WITH PASSWORD = 'YourNewPassword'; -- 设置 sa 密码
CREATE LOGIN [YourHostName\\Administrator] FROM WINDOWS; -- 重建 Windows 账户
ALTER SERVER ROLE sysadmin ADD MEMBER [YourHostName\\Administrator]; -- 授予管理员权限
GO
这里的PASSWORD = ' YourNewPassword '需要换成你自己重新设定的密码;YourHostName 替换成计算机名(打开cmd输入hostname命令查看)
可能会遇到如下错误:
使用者'CN\\...'的登入失败,原因服务器为单一使用者模式.此时只有一位管理员可以链接.(MicrosoftSql server , 错误:18461)
出现此错误是因为 SQL Server 在单用户模式下只允许一个管理员连接,而 SSMS 在连接时可能会尝试建立多个连接(如对象资源管理器、查询窗口等)。以下是详细解决方法:
-保持单用户模式窗口运行(不要关闭sqlservr.exe -m -f的窗口)
-以管理员身份打开新命令提示符:sqlcmd -S localhost\\SQLEXPRESS -E
(-S localhost\\SQLEXPRESS:指定命名实例;-E:使用 Windows 身份验证)
-在 SQLCMD 中执行修复命令:
1> ALTER LOGIN sa ENABLE;
2> GO
1> ALTER LOGIN sa WITH PASSWORD = 'YourStrongPassword!123';
2> GO
1> CREATE LOGIN [BUILTIN\\Administrators] FROM WINDOWS;
2> GO
1> ALTER SERVER ROLE sysadmin ADD MEMBER [BUILTIN\\Administrators];
2> GO
1> QUIT
如按下回车,没出现任何错误代表成功.
4. 重启服务
4.1 在单用户模式窗口按 ctrl + c 停止服务
4.2 重新以正常模式启动:
net start MSSQLSERVER # 若为默认实例;命名实例需替换为实例名
最后就可以打开ssms连接登录sa了。
更多技术知识,8455线路检测中心期待与你一起探索。
售前咨询
售后咨询
备案咨询
二维码

TOP