我在一家新公司工作,我看到的第一件事是,他们甚至不知道他们有多少个例子。他们没有密码,老DBA也不知道他在做什么。
长话短说,我可以在几乎每台服务器上创建自己的sysadmin帐户(我只会将所有数据库移动到1到2个实例),但有些是我无法做到的。
在这个由mssqltips链接中有一个名为PsExec的工具。在本教程之后,我可以运行该程序并使用NT AUTHORITY\SYSTEM连接到Server。但这不管用。NT AUTHORITY\SYSTEM是Public,我不能用sysadmin添加我的帐户。这个程序只运行在SQL 2008中吗?
没有办法停止服务器,因为我们的数据库aew运行在整个巴西。
这里的帖子不计其数,但几乎每个人都需要重新启动Server。
当没有系统管理员帐户时如何在服务器2008中向用户添加系统管理员 (这篇文章提到了这个程序,但就像我说的,它不适合我(他正在使用2008年))。

在这个视频里他在用-M方法。有人已经在Server 2014上测试过了吗?我想知道,我会尽力的。
我可以与NT AUTHORITY\SYSTEM用户连接,但是当我尝试创建sysadmin登录或更改sa密码时,它说我无权这样做。然后,看看nt的权利,它是公开的。我可以在我的机器上用-m技巧更改sa登录,但是我想要的是不需要关闭SQL的东西。
发布于 2015-12-10 13:32:56
下面是一篇包含详细步骤的technet文章。
简而言之,您需要在单用户模式下启动SQL服务器,并使用sqlcmd进行连接以添加您的帐户。只要您在OS级别拥有管理权限,这将为您提供所需的服务。
一个注意事项是,如果sqlagent被配置为自动启动,那么在以单用户模式启动SQL server之前,您应该禁用它,这样sqlagent就不会获得连接。
发布于 2016-09-01 02:35:23
据我所知,如果没有SQL Server的一些停机时间,就无法做到这一点。如果服务器上没有已知的sysadmin用户,那么您必须至少把它取下来几分钟。
(我相信问题体中提到的psexec方法适用于较早版本的Server,但OP发现,至少在Server 2014中,即使是NT AUTHORITY\SYSTEM也不是系统管理员。)
如果您在正文中提到的-m方法(它确实需要重新启动SQL server )对您有效,那么由@Aaron链接的technet文章可能正是您所需要的。但是,如果未启用混合模式身份验证,则会遇到麻烦--否则,Sever将拒绝对您刚刚创建的SQL登录名进行身份验证。
下面的方法将授予Server上的Windows用户sysadmin特权,该权限将允许您连接关闭的混合模式身份验证。它刚刚在Server 2014上对我起了作用。与technet中提到的方法一样,它确实需要本地管理员访问Windows服务器。
C:\Windows\SysWOW64\SQLServerManager13.mscC:\Windows\SysWOW64\SQLServerManager12.mscC:\Windows\SysWOW64\SQLServerManager11.mscC:\Windows\SysWOW64\SQLServerManager10.mscLogin failed for user ‘[user]’. Reason: Server is in single user mode. Only one administrator can connect at this time. (Microsoft SQL Server, Error: 18461).的错误消息。-m标志,指示服务器在单用户模式下启动。sqlcmd,然后键入以下命令在Server实例中添加一个系统管理员帐户:使用主GO创建从Windows GO sp_addsrvrolemember 域名\用户名登录的域名\用户名,“sysadmin”GO注意,如果希望将本地用户添加为系统管理员,而不是域用户,请使用上面的计算机名称而不是domainname。sqlcmd,再次停止Server,从启动参数中删除-m标志,并启动Serverhttps://dba.stackexchange.com/questions/123374
复制相似问题