DBCC FREEPROCCACHE
来源:互联网 发布:乐乎论坛 校园卡 编辑:程序博客网 时间:2024/06/05 15:04
- SQL Server 2008 R2
- SQL Server 2008
- SQL Server 2005
删除计划缓存中的所有元素,通过指定计划句柄或 SQL 句柄从计划缓存中删除特定计划,或者删除与指定资源池相关联的所有缓存条目。
Transact-SQL 语法约定
DBCC FREEPROCCACHE [ ( { plan_handle | sql_handle | pool_name } ) ] [ WITH NO_INFOMSGS ]
小心使用 DBCC FREEPROCCACHE 清除计划缓存。例如,释放计划缓存将导致系统重新编译存储过程,而不重用缓存中的存储过程。这会导致查询性能暂时性地突然降低。对于计划缓存中每个已清除的缓存存储区,SQL Server 错误日志将包含以下信息性消息:“由于 'DBCC FREEPROCCACHE' 或 'DBCC FREESYSTEMCACHE' 操作,SQL Server 经历了 '%s' 缓存存储区(计划缓存的一部分)的 %d 次刷新。”只要每五分钟刷新一次缓存,此消息就将每五分钟记录一次。
如果未指定 WITH NO_INFOMSGS 子句,DBCC FREEPROCCACHE 将返回:
“DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。”
需要对服务器拥有 ALTER SERVER STATE 权限。
A.从计划缓存中清除查询计划
以下示例通过指定查询计划句柄从计划缓存中清除查询计划。为了确保示例查询在计划缓存中,首先执行该查询。将查询sys.dm_exec_cached_plans 和sys.dm_exec_sql_text 动态管理视图以返回查询的计划句柄。然后,将结果集中的计划句柄值插入DBCC FREEPROCACHE 语句,以从计划缓存中仅删除该计划。
USE AdventureWorks2012;GOSELECT * FROM Person.Address;GOSELECT plan_handle, st.textFROM sys.dm_exec_cached_plans CROSS APPLY sys.dm_exec_sql_text(plan_handle) AS stWHERE text LIKE N'SELECT * FROM Person.Address%';GO
下面是结果集:
plan_handle text
-------------------------------------------------- -----------------------------
0x060006001ECA270EC0215D05000000000000000000000000 SELECT * FROM Person.Address;
(1 row(s) affected)
-- Remove the specific plan from the cache.DBCC FREEPROCCACHE (0x060006001ECA270EC0215D05000000000000000000000000);GO
B.清除计划缓存中的所有计划
以下示例清除计划缓存中的所有元素。指定了 WITHNO_INFOMSGS 子句来阻止显示信息消息。
DBCC FREEPROCCACHE WITH NO_INFOMSGS;
C.清除与资源池相关联的所有缓存条目
以下示例清除与指定资源池相关联的所有缓存条目。sys.dm_resource_governor_resource_pools 视图首先被查询,以便获取pool_name 的值。
SELECT * FROM sys.dm_resource_governor_resource_pools;GODBCC FREEPROCCACHE ('default');GO
- DBCC FREEPROCCACHE
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC FREEPROCCACHE
- dbcc
- DBCC
- DBCC
- DBCC
- DBCC
- DBCC
- DBCC
- DBCC PAGE、DBCC LOG、DBCC EXTENTINFO、DBCC IND、DBCC SHOW_STATISTICS、DBCC SHOWCONTIG、DBCC SQLPERF
- DBCC SHOWCONTIG
- DBCC CheckIdent
- DBCC命令
- DBCC CheckIdent
- 【SQL】DBCC
- -------------------------DBCC命令-------------------------------
- DBCC命令
- -DBCC命令-
- C函数库介绍:dos.h、alloc.h、malloc.h、stdlib.h、process.h
- 深入理解Android(卷1) 邓凡平的博客
- MyBatis入门介绍,凤凰涅槃:从 iBatis 到 MyBatis
- ASP.NET MVC3 快速入门-第六节 增加一个追加数据的方法和一个追加数据的视图 .
- Sidecar 让你通过WiFi免费拨打北美用户电话
- DBCC FREEPROCCACHE
- Machine Perception Toolbox MPT 机器感知
- ASP.NET MVC3 快速入门-第七节 在Movie(电影)模型与数据表中添加一个字段 .
- C# 值类型和引用类型--string
- C语言的谜题
- javascript系统错误:-1072896658的解决办法。
- ASP.NET MVC3 快速入门-第八节 在模型中添加验证规则 .
- worl2010设置标题 编号丢失的解决方法
- log4j 配置与应用