SQL Server 2005之Dedicated Administration Connection

在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/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/193161/viewspace-50335/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值