• 远程调试存储过程


    源主机环境:window xp sp2 vs2005 team

    目标主机环境:window 2003 sp2 Sqlserver2005

    我在以前的公司配置过VS2008远程调试Sqlserver2005的存储过程,今天突然想起这个件事情,于是在现在的公司配置这个环境,并且配置成功。步骤如下:

      (1):在目标主机上新建一个用户,并且使他隶属于Administrators组。如果是2003的操作系统,创建用户输入密码后,保存后可能会遇到不符合密码策略等问题,这个问题的解决办法是:控制面板 --》本地安全安全策略--》密码安全 把一些策略禁用就可以了。然后在数据中创建相同的用户,使其属于sysadmin组。然后打开数据库服务,修改以此用户运行,重启服务。

      (2):在源主机中创建一个相同的用户,用户名和密码都相同。然后切换用户,启动VS2005 ,添加服务器,选择windwos 认证,选择要是调试的数据。右键那个链接会找到以应用程序调试和允许CLR调试等选项,选中他们,然后修改项目的属性--》调试 SqlServer 勾上。

      (3):打开要调试的存储过程,设置断点,程序中进去存储过程的部分也要设置断点,运行即可看到效果。

      

       总结 1):平台支持调试,2):具有权限的Window用户 3):以特殊的用户运行数据库服务。其实最简的办法是修改Administrator的密码,因为每台电脑都有这个用户。把目标主机和源主机的密码设置成一样,并且在数据中给administartor分配适当的权限问题就解决了。

      后来在网上查询又发现其它的一些知识:

      Visual Studio 的 Professional 和 Team System 版本可以对 SQL Server 中的存储过程设置断点并进入存储过程对其进行调试。

      

    调试远程实例中的T-SQL 数据库对象

    若SQL Server 数据库实例与 Visual Studio 在同一台机器上,则通过Visual Studio 调试数据库对象相当简单。但如果 SQL Server 与Visual Studio 位于不同的机器上,则需要进行仔细配置以使各方面工作正常。为此我们的两个重要任务是:

    • 确保通过 ADO.NET 连接到数据库时使用的登录帐户具有 系统管理员 (sysadmin) 的身份。
    • 确保在开发机器上 Visual Studio 使用的 Windows 用户帐户是一个有效的、具有 sysadmin 身份的 SQL Server 登录帐户。

    第一步相对简单。首先,确定使用哪个用户帐户来从ASP.NET 应用程序连接到数据库,然后通过SQL Server Management Studio 将此登录帐户添加到 sysadmin 角色中。

    第二个任务要求您在调试应用程序时所使用的Windows 用户帐户是远程数据库上的一个有效的登录帐户。但有时您登录到工作站的Windows 帐户并非SQL Server 上的一个有效登录帐户。比起将您的特定登录帐户添加到SQL Server 来,一个更好的办法是将某个Windows 用户帐户指定为 SQL Server 调试帐户。然后,可以使用该Windows 登录帐户的证书运行 Visual Studio ,以便调试远程SQL Server 实例的数据库对象。

    下面用一个例子来说明上述情况。假设Windows 域中有一个名为 SQLDebug 的Windows 帐户。需要将此帐户添加到远程 SQL Server 实例中,使其作为一个有效登录帐户及sysadmin 角色的一个成员。然后,我们需要以 SQLDebug 用户身份运行 Visual Studio ,以便通过 Visual Studio 调试远程 SQL Server 实例。这可以通过如下步骤完成:从工作站退出,用SQLDebug 帐户重新登录,然后启动 Visual Studio 。但一个更简单的方法是用我们自己的证书登录工作站,然后使用runas.exe 作为 SQLDebug 用户启动Visual Studio 。利用runas.exe ,可以借其他用户帐户的身份执行特定的应用程序。要作为SQLDebug 用户来启动Visual Studio ,可以命令行输入以下命令:

    runas.exe /user:SQLDebug "%PROGRAMFILES%\Microsoft Visual Studio 8\Common7\IDE\devenv.exe"

    关于该过程的更详细的介绍,请参见 William R. Vaughn 的 Hitchhiker’s Guide to Visual Studio and SQL Server, Seventh Edition ,以及怎样为调试设置 SQL Server 权限

    注意: 如果您的开发机器运行的是 Windows XP Service Pack 2 ,您将需要配置Internet Connection Firewall 以允许远程调试。文章怎样启用 SQL Server 2005 调试 中提到这一过程包含两个步骤:“(a) 在Visual Studio 宿主机器上,必须向 Exceptions 列表添加 Devenv.exe ,并打开 TCP 135 端口;(b) 在远程 (SQL ) 机器上,必须打开TCP 135 端口并向 Exceptions 列表添加 sqlservr.exe 。如果您的域策略要求通过IPSec 进行网络通信,则必须打开 UDP 4500 和 UDP 500 端口。

  • 相关阅读:
    寒假作业1
    秋季学习总结
    记叙在人生路上对你影响最大的三位老师
    2019年春季学期第二周作业
    币值转换
    第九周作业
    第八周作业
    第七周作业
    第六周作业
    第五周作业
  • 原文地址:https://www.cnblogs.com/BlueWoods/p/1681765.html
Copyright © 2020-2023  润新知