惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
V
Visual Studio Blog
P
Privacy International News Feed
月光博客
月光博客
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
L
Lohrmann on Cybersecurity
N
News and Events Feed by Topic
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Apple Machine Learning Research
Apple Machine Learning Research
阮一峰的网络日志
阮一峰的网络日志
Webroot Blog
Webroot Blog
T
Threatpost
宝玉的分享
宝玉的分享
The Last Watchdog
The Last Watchdog
小众软件
小众软件
L
LINUX DO - 最新话题
C
Cisco Blogs
T
Troy Hunt's Blog
Schneier on Security
Schneier on Security
酷 壳 – CoolShell
酷 壳 – CoolShell
www.infosecurity-magazine.com
www.infosecurity-magazine.com
雷峰网
雷峰网
G
GRAHAM CLULEY
有赞技术团队
有赞技术团队
Know Your Adversary
Know Your Adversary
博客园 - 叶小钗
罗磊的独立博客
V
V2EX
博客园 - Franky
P
Proofpoint News Feed
SecWiki News
SecWiki News
腾讯CDC
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Jina AI
Jina AI
博客园 - 三生石上(FineUI控件)
S
Secure Thoughts
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Google DeepMind News
Google DeepMind News
Attack and Defense Labs
Attack and Defense Labs
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
PCI Perspectives
PCI Perspectives
V2EX - 技术
V2EX - 技术
Google DeepMind News
Google DeepMind News
Last Week in AI
Last Week in AI
aimingoo的专栏
aimingoo的专栏
Cisco Talos Blog
Cisco Talos Blog
N
News and Events Feed by Topic
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
SegmentFault 最新的问题

博客园 - Benny Ng

微软企业库Enterprise Library 5连接AS/400 UDB DB2的连接方法. (成功) 我可以在ASP.NET MVC的真正發展為免費的嗎?[转贴] SQL-记录表历史[转] 转自:http://www.cnblogs.com/codelove/archive/2011/07/02/2096296.html (自用,备份) WINXP下安装IIS+PHP5+MySQL5 64位Windows 7 sp1使用MyEclipse 9.0注册机无法获取System ID 配置JDK环境变量 vs2010 sp1 安装假死的问题解决,先把ISO文件内的可以安装的EXE文件都安装一次,特别是SILVERLIGHT那些,然后再安装ISO的SETUP就可以了。 SQL Server 2008支持将数据导出为脚本 [转] CD %systemroot%\system32\Inetsrv\ appcmd list wp - Benny Ng SQL SERVER – Fix : Error Msg 1813, Level 16, State 2, Line 1 Could not open new database ‘yourdatabasename’. CREATE DATA 只有MDF文件如何恢复数据库 在win7的操作系统下安装Oracle11R2 Comparing escape(), encodeURI(), and encodeURIComponent() <a href='#' => <a href='javascript:void(-1) 页面不跳转到最高处。 “页面跳转”。 sql 条件处理 Web Service 安全性解决方案(SOAP篇) SSRS (Reporting Services) 2008 当导出PDF看不到中文字的时候,是没有安装SQL2008 SP1的原因。(可能会显示框,或者字符显示不完整) Visual Studio 2010 Extension Manager: Online Gallery Behind Internet Proxy 配置windows 2008 作为远程访问SSL-VPN服务器系列之一 - Benny Ng
Server 2005 专用管理员连接 (DAC) 使用技巧
Benny Ng · 2011-04-06 · via 博客园 - Benny Ng

转:http://www.cnblogs.com/godwar/archive/2009/05/01/1447544.html

Server 2005 专用管理员连接 (DAC) 使用技巧

1 什么是专用管理员连接?
SQL Server 2005 为管理员提供了一种特殊的诊断连接,以供在无法与服务器建立标准连接时使用。

2 专用管理员连接有什么用?
即使在 SQL Server 不响应标准连接请求时,管理员也可以使用这种连接访问 SQL Server,以便执行诊断查询并解决问题。
管理员可以通过 DAC 访问正在运行的 SQL Server Database Engine 实例来排除服务器的故障(即使该服务器已停止响应其他客户端连接)。

3 专用管理员连接使用方法
(1)利用sqlcmd
sqlcmd -Sqiangguo\ods -A
sqlcmd -Sadmin:qiangguo\ods
(2)SQL Server Management Studio 查询编辑器启动 DAC
admin:<实例名>
如:ADMIN:QIANGGUO\ODS

4 专用管理员连接使用限制
(1)为了保证有可用的连接资源,每个 SQL Server 实例只允许使用一个 DAC。如果 DAC 连接已经激活,则通过 DAC 进行连接的任何新请求都将被拒绝,并出现错误 17810。
(2)DAC 最初尝试连接到与登录帐户关联的默认数据库。连接成功后,可以连接到 master 数据库。如果默认数据库离线或不可用,则连接返回错误 4060。但是,如果使用以下命令覆盖默认数据库,改为连接到 master 数据库,则连接会成功:
sqlcmd –A –d master
由于只要启动数据库引擎 实例,就能保证 master 数据库处于可用状态,因此建议使用 DAC 连接到 master 数据库。
(4)SQL Server 禁止使用 DAC 运行并行查询或命令。例如,如果使用 DAC 执行以下任何命令,都会生成错误 3637。
RESTORE或BACKUP
(5)DAC 只能使用有限的资源。请勿使用 DAC 运行需要消耗大量资源的查询(例如,对大型表执行复杂的联接)或可能造成阻塞的查询。这有助于防止将 DAC 与任何现有的服务器问题混淆。为避免潜在的阻塞情况,当需要运行可能造成阻塞的查询时,
请尽可能在基于快照的隔离级别下运行查询;否则,请将事务隔离级别设置为 READ UNCOMMITTED 和/或将 LOCK_TIMEOUT 值设置为较短的值(如 2000 毫秒)。这可以防止 DAC 会话被阻塞。
但是,根据 SQL Server 所处的状态,DAC 会话可能会在闩锁上被阻塞。可以使用 CNTRL-C 终止 DAC 会话,但不能保证一定成功。如果失败,唯一的选择是重新启动 SQL Server。
为保证连接成功并排除 DAC 故障,SQL Server 保留了一定的资源用于处理 DAC 上运行的命令。通常这些资源只够执行简单的诊断和故障排除功能,如下所示。
为了保留资源,DAC 连接在 SQL Server 2005 Express Edition 中不可用。

5 如何启用远程DAC连接?
只有 SQL Server sysadmin 角色的成员可以使用 DAC 连接。默认情况下,只能从服务器上运行的客户端建立连接。除非通过 sp_configure 使用 remote admin connections 选项进行配置,否则不允许使用网络连接。
DAC 支持加密和 SQL Server 的其他安全性功能。DAC 只允许将用户上下文切换到其他管理用户。
默认情况下,DAC 仅侦听环回 IP 地址 (127.0.0.1) 端口 1434。
remote admin connections 设置的可能值如下:
0 - 指明仅允许本地连接使用 DAC
1 - 指明允许远程连接使用 DAC
--启用远程DAC连接
sp_configure 'remote admin connections', 1;
GO
RECONFIGURE;
GO
注意:配置远程管理连接之后,会立即启用 DAC 侦听器而不必重新启动 SQL Server,并且客户端可以立即远程连接到 DAC。

6 常用脚本
--利用sqlcmd
sqlcmd -Sqiangguo\ods -A
sqlcmd -Sadmin:qiangguo\ods
-- 查询动态视图
select * from sys.dm_os_memory_cache_counters
select * from sys.dm_exec_requests
select * from sys.dm_exec_sessions
-- 结束会话
KILL <spid>
select * from sys.dm_exec_sessions where session_id = <spid>
select * from sys.dm_os_tasks where session_id = <spid>

7 常见错误
问题(1)
C:\Documents and Settings\guoqiang>sqlcmd -S qiangguo\ods,1434
HResult 0x274D,级别 16,状态 1
TCP 提供程序: 由于目标机器积极拒绝,无法连接。

Sqlcmd: 错误: Microsoft SQL Native Client : 建立到服务器的连接时发生错误。连接到
 SQL Server 2005 时,默认设置 SQL Server 不允许远程连接这个事实可能会导致失败。

Sqlcmd: 错误: Microsoft SQL Native Client : 登录超时已过期。
解决:

问题(2)
标题: 连接到服务器------------------------------

无法连接到 ADMIN:QIANGGUO\ODS。

------------------------------
其他信息:

不支持专用管理员连接。 (ObjectExplorer)
解决:

问题(3)
C:\Documents and Settings\guoqiang>sqlcmd -Sadmin:qiangguo\ods
Sqlcmd: 错误: Microsoft SQL Native Client : 由于打开服务器连接过程中的延迟,无法
完成登录过程。
解决:试着不用DAC 连接,用正常的连接成功后,再用DAC连接。
如:
C:\Documents and Settings\guoqiang>sqlcmd -S qiangguo\ods -A
Sqlcmd: 错误: Microsoft SQL Native Client : 由于打开服务器连接过程中的延迟,无法
完成登录过程。

C:\Documents and Settings\guoqiang>sqlcmd -S qiangguo\ods
1> quit

C:\Documents and Settings\guoqiang>sqlcmd -S qiangguo\ods -A
1>

问题(4)
标题: 连接到服务器
------------------------------

无法连接到 ADMIN:QIANGGUO\ODS。

------------------------------
其他信息:

已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: TCP 提供程序, error: 0 - 远程主机强迫关闭了一个现有的连接。)
(Microsoft SQL Server,错误: 10054)


解决:已经建立一个DAC连接,请先关闭后,再连接。

文章出处:http://www.diybl.com/course/7_databases/sql/sqlServer/200863/120812.html

================================================================

问题:

在使用SQL Server 2000的时候,大家可能已经很习惯用下面的语句在修改系统表了

EXEC sp_configure 'allow updates', 1
RECONFIGURE WITH OVERRIDE;
 
-- do some modification to system tables
 
EXEC sp_configure 'allow updates', 0
RECONFIGURE WITH OVERRIDE;

但是如果在SQL Server 2005中,你还是想通过运行上面的语句来修改系统表,那你就大错特错了,虽然在SQL Server 2005中运行上面的语句是不会有任何报错的,但是但你试图去修改系统表的时候你会得到下面这样的错误信息:

Msg 259, Level 16, State 1, Line 1
Ad hoc updates to system catalogs are not allowed.

这时候你只要在SQL Server 2005的BOL中查一下”allow updates”你就会发现如下的说明:

allow updates Option

Updated: 14 April 2006

This option is still present in the sp_configure stored procedure, although its functionality is unavailable in Microsoft SQL Server 2005 (the setting has no effect). In SQL Server 2005, direct updates to the system tables are not supported.

看来在SQL Server 2005中allow updates只是一个摆设了,根本不能用,而且系统表也不能直接被修改了。但是如果你确实需要修改系统表那怎么办呢?

还好,Microsoft还是没有做绝的,虽然allow updates不能用了,但还是可以通过别的途径修改系统表,那就是:先用单用户模式启动SQL Server 2005实例,然后再用DAC(Dedicated Administrator Connection/专用管理员连接)连接到SQL实例,然后不用运行什么sp_configure就可以直接修改系统表了。

基本的步骤:

1、启动到单用户模式

"C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe" -m

2、打开SQL Server Management Studio,在Connect to Server对话框中的Server Name处输入admin:InstanceName,这样就可以用DAC登陆启动的SQL Server实例了。

友情提示:

另外,SQL Server 2005加强了字典管理功能,如果要修改系统表的操作能有存储过程支持的情况下一定要用存储过程,不要去直接修改系统表,以维护数据字典的一致性。

参考资料:

1、allow updates Option

2、Using a Dedicated Administrator Connection

3、Starting SQL Server in Single-User Mode

================================================================

 如何使用SQL Server 2005 专用管理员连接(DAC)登录到服务器

 什么是DAC

   SQL Server 2005 为管理员提供了一种特殊的诊断连接,以供在无法与服务器建立标准连接时使用。即使在 SQL Server 不响应标准连接请求时,管理员也可以使用这种连接访问 SQL Server,以便执行诊断查询并解决问题。命令行界面 (sqlcmd) 通过使用特殊的管理员开关 (-A),提供并支持这种专用管理员连接 (DAC)

如何使用DAC登录到服务器

1 本机DAC登录 

命令行方式下执行  sqlcmd -A -S sql服务器名

远程DAC登录

  1) 打开远程DAC选项

    '程序'->'Sql Server2005'->  '配置工具'-> 'Sql Server  外围应用配置器'-> '功能的外围应用配置器'-> 'DataBase Engine'->  'DAC' -> '启用远程DAC'

  2)  登录到远程服务器

  sqlcmd -A -S 192.168.0.1 -U sa -P 123456

登录后, 可以通过查询动态管理视图来诊断问题