SqlServer2008 / SqlServer2012 禁用windows登錄,sa忘記密碼或密碼過期如何登陸


以管理員身份運行cmd

1、cmd 下  停止SqlServer服務,net stop mssqlserver;

2、新建windows賬號test,加入administrators組里,授予管理員權限;

3、切換到test用戶下;

4、以管理員方式運行cmd,執行命令,

5、不要關閉上圖命令窗口,重新以管理員身份運行一個cmd窗口,執行sqlcmd -i d:\1.sql; sql腳本如下:

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXEC [sys].[sp_configure] @configname = 'xp_cmdshell', -- varchar(35)
@configvalue = 1 -- int
RECONFIGURE WITH override


--修改注冊表,修改身份驗證為混合驗證方式
USE [master]
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode', REG_DWORD, 2
GO

--創建登錄名
CREATE LOGIN [機器名\test] FROM WINDOWS;
GO

--賦予登錄名的權限為sysadmin
USE master
GO
EXEC [sys].[sp_addsrvrolemember] @loginame = '機器名\test', -- sysname
@rolename = sysadmin -- sysname

--關閉xp_cmdshell功能
EXEC [sys].[sp_configure] @configname = 'xp_cmdshell', -- varchar(35)
@configvalue = 0 -- int
RECONFIGURE WITH override

 

6、關掉所有cmd窗口,重新啟動SqlServer服務

打開SqlServerManagementStudio,以Windows身份驗證方式登錄,可以登錄成功,把sa密碼更改后 可以正常使用了

 

參照:https://blog.csdn.net/QQ38397892/article/details/84454200


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM