18456报错,sql单用户模式创建登录账号
实在没有办法的情况才建议进入单用户模式,否则可能导致不可预料后果!
一、停止SQL服务,建议在sql的配置管理器里面停掉sql服务(sql broswer服务好像不能关,具体关不关自己试下吧)。
net stop mssqlserver
ps:有时候登录不上是没有将sql server 服务启动账号改成local system,或者指定成用户名+密码形式,一旦改密码就不能登录了!
二、在【配置管理器】-【网络配置】里禁用VIA协议,启用Named Pipes和TCP/IP协议。
三、使用sql的sqlservr.exe进入单用户模式(使用windows搜索sqlservr就能找到了)
以管理员身份运行cmd,切换到sqlservr.exe目录执行 sqlservr -m 命令,保持当前窗口开启状态(一旦关闭会退出单用户模式)!
-m参数后面加应用程序名称,可以强行指定连接到sql的客户端程序。 servr -m "sqlcmd"
四、sqlcmd创建可登录sql的账户,管理员打开cmd窗口,依次执行下列命令:
>sqlcmd >create login satemp with password='sa123456' >go >sp_addsrvrolemember 'satemp','sysadmin' >go
结束第三、四步的DOS窗口,即可使用satemp账户登录sql
注意事项:
建议使用sqlcmd登录单用户模式下的sql,使用ssms登录不熟悉的朋友可能会提示只允许一个用户登录,sql代理服务也要关闭。如果还是提示“当前服务器处于单用户模式,目前只有一位管理员能够连接”,可以使用如下命令排查是哪些程序在连接sql服务!
netstat -ano |findstr 1433
使用上述命令前,在任务管理器的进程里查看选择pid列,执行命令后的最后的数字就是占用该端口的应用程序pid,在任务管理器里可找到对应的程序名字将它结束就行。
C:\Users\Administrator>netstat -ano |findstr 80 TCP 192.168.1.2:49188 161.155.185.130:8099 CLOSE_WAIT 1676 TCP 192.168.1.2:49571 36.125.147.123:80 CLOSE_WAIT 1640 TCP 192.168.1.2:55914 8.8.8.8:80 ESTABLISHED 5292 TCP 192.168.1.2:64533 112.134.184.18:80 ESTABLISHED 3060 TCP 192.168.1.2:64566 125.39.205.35:80 ESTABLISHED 5292 TCP 192.168.1.2:64573 219.147.35.144:80 CLOSE_WAIT 5292 TCP 192.168.1.2:64574 123.151.30.60:80 CLOSE_WAIT 5292 TCP 192.168.1.2:64594 220.131.132.162:80 ESTABLISHED 2396 TCP 192.168.1.2:64595 191.199.37.175:80 ESTABLISHED 2396
基于互联网精神,在注明出处的前提下本站文章可自由转载!
本文链接:https://ranjuan.cn/18456报错,sql单用户模式创建登录账号/
赞赏
微信赞赏支付宝赞赏
发表评论