使用Runas命令远程登录SQL Server



我使用runas命令被困在这一点上。我正在尝试使用该服务器上的Windows身份验证登录远程SQL Server实例。我正在使用此命令 -

runas /netonly /user:DomainUsername 
      /server=someIP "C:Program Files (x86)Microsoft SQL Server100ToolsBinnVSShellCommon7IDESsms.exe"

但是,当我这样做时,它会打开我的管理工作室 - IP是远程服务器,默认情况下选择Windows身份验证,并且我具有当前系统的域和用户名。

实际上,我需要一种指定连接字符串以登录远程SQL Server并在其上射击查询的方法。这是跨域。

还有一个问题 - 我需要在机器上放置管理工作室,我从?

发出查询

谢谢。

编辑

我正在改善以更好地理解。

我有服务器A和服务器B(两台独立的计算机)。我需要从B上发出查询。A没有任何SQL Server或管理工作室。B有两个。我必须使用Windows身份验证(MyDomain 用户名之类的东西)才能登录B。我正在使用Management Studio属性中"目标"中提到的Runas命令。这是错误的吗?我正在使用不同的用户名(但域)与我必须登录到B。我如何完成此任务?

谢谢您的延迟编辑。

我在快捷方式上使用以下内容在XP映像上运行SSM,该XP映像不在域上使用域凭据连接到服务器。

%windir%System32runas.exe /netonly /user:domainusername "C:Program FilesMicrosoft SQL Server100ToolsBinnVSShellCommon7IDESsms.exe -S SERVERNAME"

是正确的,/netonly将打开您当前的环境,而SSM会在登录对话框中愚蠢地显示您的凭据。这是可以预期的,因为/Netly确实意味着仅在Net 上使用提供的身份。但是,当您使用任何远程资源进行身份验证时,远程站点将使您验证为"域用户名"。

您可能不需要/服务器选项。

我无法发表评论,所以我会给出新的答案。使用服务器名称

使用快捷方式
%windir%System32runas.exe /netonly /user:domainusername "C:Program Files (x86)Microsoft SQL Server140ToolsBinnManagementStudioSsms.exe -S SERVERNAME"

您首先需要将服务器名称和服务器IP添加到主机文件:

C:WindowsSystem32driversetchosts

没有它,您需要使用服务器IP:

%windir%System32runas.exe /netonly /user:domainusername "C:Program Files (x86)Microsoft SQL Server140ToolsBinnManagementStudioSsms.exe -S SERVER_IP"

例如,您想使用account name stackuser2019在域主中使用名称MSSQLSERVER01连接到服务器10.10.10.123。因此,您将此行添加到主机文件:

10.10.10.123 MSSQLSERVER01

从CMD或快捷方式运行后:

%windir%System32runas.exe /netonly /user:MASTERSTACKUSER2019 "C:Program Files (x86)Microsoft SQL Server140ToolsBinnManagementStudioSsms.exe -S MSSQLSERVER01"

步骤1:导航到ssms.exe文件

ssms 2016版本:

C:Program Files (x86)Microsoft SQL Server130ToolsBinnManagementStudioSsms.exe

ssms 2017版本:

C:Program Files (x86)Microsoft SQL Server140ToolsBinnManagementStudioSsms.exe

右键单击 on ssms.exe ,然后选择 properties

然后 tab 兼容性

然后单击按钮更改所有用户的设置

check 以管理员的身份运行此程序,然后单击OK

步骤2:使用此路径做一个快捷方式

ssms 2016版本: C:WindowsSystem32runas.exe /savecred /user:domainusername "cmd /c "C:Program Files (x86)Microsoft SQL Server130ToolsBinnManagementStudioSsms.exe""

SSMS 2017版本: C:WindowsSystem32runas.exe /savecred /user:domainusername "cmd /c "C:Program Files (x86)Microsoft SQL Server140ToolsBinnManagementStudioSsms.exe""

注意: cmd/c 在路径中,这会使整个差异。

就是这样。希望它对您有用。

ps :大约在第一步更改所有用户的设置

如果使用名称 - pipe的连接,(即您无法使用Servername连接),则可以使用IP地址,例如:

%windir%System32runas.exe /netonly /user:domainusername "Ssms.exe -S 10.20.30.10"

SSMS.exe的路径取决于您的SQL引擎版本:

  • 2008 R2:C:Program Files (x86)Microsoft SQL Server100ToolsBinnVSShellCommon7IDESsms.exe
  • 2012:C:Program Files (x86)Microsoft SQL Server110ToolsBinnManagementStudioSsms.exe
  • 2014:C:Program Files (x86)Microsoft SQL Server120ToolsBinnManagementStudioSsms.exe
  • 2016:C:Program Files (x86)Microsoft SQL Server130ToolsBinnManagementStudioSsms.exe