无法进入远程SQL Server 2008上的存储过程 [英] Can't step into stored procedure on remote SQL Server 2008
问题描述
我在虚拟Windows Server 2008 x64
上安装了域控制器.
I have a domain controller installed on virtual Windows Server 2008 x64
.
SQL Server 2008 Express x64
在Windows Server 2008 x64
上运行,客户端在Windows 7 RTM x86
上运行.两者都已加入域.
SQL Server 2008 Express x64
is running on Windows Server 2008 x64
and client on Windows 7 RTM x86
. Both have joined the domain.
我正在域管理员用户下同时启动Visual Studio 2008
和SQL Server Management Studio 2008
.此帐户是SQL Server
上的组sysadmin
的成员.
I'm starting both Visual Studio 2008
and SQL Server Management Studio 2008
under domain admin user. This account is a member of group sysadmin
on SQL Server
.
服务器的端口135-139
和1433-1434
上的TCP
和UDP
都有防火墙例外.
Server has firewall exceptions for both TCP
and UDP
on ports 135-139
and 1433-1434
.
Visual Studio 2008 Remote Debugger
服务在服务器上启动,并且允许Domain Admins
组进行调试.
Visual Studio 2008 Remote Debugger
services is started on server and Domain Admins
group is allowed to debug.
远程DCOM的工作原理:我可以附加到远程服务器并列出其进程,可以切换为仅显示托管代码等.
Remote DCOM works: I can attach to remote server and list it's processes, can switch to show only managed code, etc.
当我开始调试SMS中的查询时,出现此错误:
When I'm starting debugging of a query in SMS I'm getting this error:
无法启动调试器错误HRESULT 通话已返回E_FAIL 到COM组件. (mscorlib)程序 位置:
Failed to start debugger Error HRESULT E_FAIL has been returned from a call to a COM component. (mscorlib) Program Location:
在System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode,IntPtr errorInfo)
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
在Microsoft.SqlServer.Management.UI.VSIntegration.DebugSession.DebugCallbacks.OnSqlInitializeDebuggingEvent(ISqlInitializeDebuggingEvent sqlInitializeDebuggingEvent)
at Microsoft.SqlServer.Management.UI.VSIntegration.DebugSession.DebugCallbacks.OnSqlInitializeDebuggingEvent(ISqlInitializeDebuggingEvent sqlInitializeDebuggingEvent)
debugEngine,IDebugProcess2 debugProcess,IDebugProgram2 debugProgram,IDebugThread2 debugThread,IDebugEvent2 debugEvent, 引导与riidEvent,UInt32属性)
at Microsoft.SqlServer.Management.UI.VSIntegration.DebugSession.DebugCallbacks.Microsoft.VisualStudio.Debugger.Interop.IDebugEventCallback2.Event(IDebugEngine2 debugEngine, IDebugProcess2 debugProcess, IDebugProgram2 debugProgram, IDebugThread2 debugThread, IDebugEvent2 debugEvent, Guid& riidEvent, UInt32 attribute)
和
无法访问SQL Server 调试界面.视觉 Studio调试器无法连接到 远程计算机.防火墙可能是 阻止通过DCOM与 远程计算机.请参阅帮助 寻求帮助.
Unable to access the SQL Server debugging interface. The Visual Studio debugger cannot connect to the remote computer. A firewall may be preventing communication via DCOM to the remote computer. Please see Help for assistance.
和
无法启动程序MSSSQL://server.mydomain.local/master/sys/=0
Unable to start program MSSSQL://server.mydomain.local/master/sys/=0
当使用VS进入存储过程时,我会得到第一个:
And when stepping-in into a stored procedure using VS I'm getting the first one and this:
HRESULT的异常:0x89710016
Exception from HRESULT: 0x89710016
我该怎么办?
推荐答案
一旦我在客户端和服务器上都禁用了防火墙,它就会起作用.
Once I disabled the firewall on both client and server, it worked.
这篇关于无法进入远程SQL Server 2008上的存储过程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!