ITPub博客

首页 > Linux操作系统 > Linux操作系统 > SQL Server 2005之Dedicated Administration Connection

SQL Server 2005之Dedicated Administration Connection

原创 Linux操作系统 作者:NinGoo 时间:2019-07-17 15:36:02 0 删除 编辑

在SQL Server2000以前,如果数据库的CPU使用率突然达到100%,可能会令DBA束手无策,平时强大的企业管理器和查询分析器甚至根本无法再连入服务器,无奈之下也许只有强行重启服务,但重启服务造成的系统中断可能会让你的Boss相当不满,而失去的现场信息可能给排查原因造成困难。

微软也意识到了这个问题,SQL Server 2005中提供了一个叫做Dedicated Administration Connection(DAC)的特性,可以让你在这种情况下连进服务器。


该特性在新提供的命令行工具sqlcmd(使用-A选项)和图形管理工具SQL Server Management Studio中都可以使用。

默认情况下,只能在服务器所在的机器上进行连接。使用Surface Area Configuration配置(Enable remote DAC)后,可以通过网络使用DAC连接服务器。

通过SSMS使用DAC连接服务器的步骤如下(引自MSDN):

  1. In SQL Server Management Studio, with no other DACs open, on the toolbar, click Database Engine Query.

  2. In the Connect to Database Engine dialog box, in the Server name box, type ADMIN: followed by the name of the server instance. For example, to connect to a server instance named ACCTPAYABLE, type ADMIN:ACCTPAYABLE.

  3. Complete the Authentication section, providing credentials for a member of the sysadmin group, and then click Connect.

    The connection is made.

    If the DAC is already in use, the connection will fail with an error indicating it cannot connect.

DAC是在紧急情况下能够连入服务器的一种连接方式,所以也有很多的限制:

  • 同一时间内只允许一个DAC连接,否则会报error 17810错误。
  • Express版本默认不监听DAC连接,可以通过配置跟踪标志为7806来启用DAC监听。
  • DAC自动连接登录用户的默认数据库,如果其默认数据库不是master,则连接后不能切换到master库。如果默认数据库离线,则会报错error 4060,此时可以通过sqlcmd的-d选项更改初始数据库。
  • 无法执行并行操作,所以不能执行restore/backup等。
  • DAC只能使用少量的资源,所以不要执行复杂的查询比如多表连接等。
  • 一般情况下,使用DAC连进服务器进行故障排查。可以通过查询SQL Server 2005新提供的动态性能管理视图(DMV)来查询系统状况,可以通过DBCC执行系统检查,可以通过kill 杀死异常会话等。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/193161/viewspace-50335/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2004-12-07

  • 博文量
    200
  • 访问量
    131831