SQL Server 本地数据库登陆不上 解决方法

sql本地数据库登陆不了的话。先看看本身计算机 服务 SQL server  (MSSQLSERVER)  没有打开的话,请打开。sql

今天说的情景模式是  你误删了windows登陆;禁用了sa登陆;sa密码忘记了;或是你计算机名字被公司修改了,老的名字忘记了;又或是你用的别人的以前安装好的SQL数据库,终归,你本地数据库登陆不了,用不了。shell

 

1. 先停了SQL ,打开命令提示符,执行net stop mssqlserver 就行了。你去计算机服务里面停也行。均可以.  sql server broswer不能关,一直开着数据库

 

2.找到你的SQL安装位置。sqlservr.exe    (找不到能够全局搜索)  输入路径  加上 /m /f   表示以最少的配置启动SQL Server实例,会自动将服务器置于单用户模式编程

 

3.打开sql数据库的新建查询,执行如下代码windows

sp_configure 'show advanced options',1
reconfigure
--打开xp_cmdshell功能
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

--建立登陆名  DESKTOP-9JU2DAT 为我本地计算机名
CREATE LOGIN [DESKTOP-9JU2DAT\Administrator] FROM WINDOWS;
GO

--赋予登陆名的权限为sysadmin    DESKTOP-9JU2DAT  为我本地计算器名
USE master
GO
EXEC [sys].[sp_addsrvrolemember] @loginame = 'DESKTOP-9JU2DAT\Administrator', -- sysname
    @rolename = sysadmin -- sysname

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

意思是  修改注册表。而后在建立新的windows身份验证服务器

OK,完事儿ide

关闭一下SQL Server。并重启sql Server (MSSQLSERVER)sqlserver

 

直接windows 身份验证登陆spa

两三行代码,慢慢发现编程的乐趣。。code

相关文章
相关标签/搜索