sqlserver 2008 R2 进程查看

yoyo35533 2011-12-08 02:59:01
sqlserver 2008 R2 在哪里看当前活动和锁?还有在哪儿看数据库进程列表?
...全文
583 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yoyo35533 2011-12-08
  • 打赏
  • 举报
回复
在server management studio里面有地方看吗
gogodiy 2011-12-08
  • 打赏
  • 举报
回复

如何判断数据库的死锁
use master
go
declare @spid int,@bl int
DECLARE s_cur CURSOR FOR
select 0 ,blocked
from (select * from sysprocesses where blocked>0 ) a
where not exists(select * from (select * from sysprocesses where blocked>0 ) b
where a.blocked=spid)
union select spid,blocked from sysprocesses where blocked>0
OPEN s_cur
FETCH NEXT FROM s_cur INTO @spid,@bl
WHILE @@FETCH_STATUS = 0
begin
if @spid =0
select '引起数据库死锁的是: '+ CAST(@bl AS VARCHAR(10)) + ' 进程号,其执行的SQL语法如下'
else
select '进程号SPID:'+ CAST(@spid AS VARCHAR(10))+ ' 被' + '进程号SPID:'+ CAST(@bl AS VARCHAR(10)) +' 阻塞,其当前进程执行的SQL语法如下'
DBCC INPUTBUFFER (@bl )
FETCH NEXT FROM s_cur INTO @spid,@bl
end
CLOSE s_cur
DEALLOCATE s_cur

exec sp_lock
rucypli 2011-12-08
  • 打赏
  • 举报
回复
--检查一个连接当前所持有的锁
select request_session_id,resource_type, resource_associated_entity_id,
request_status, request_mode,
resource_description
FROM sys.dm_tran_locks


--当然我们也可以结合其他的动态管理视图,直接查出某个数据库上面的锁是在哪些表格,以及在哪些索引上面。例如(图9-3):
use AdventureWorks
go
SELECT request_session_id,resource_type, resource_associated_entity_id,
request_status, request_mode,
resource_description, p.object_id,object_name(p.object_id) as object_name, p.*
FROM sys.dm_tran_locks left join sys.partitions p
on sys.dm_tran_locks.resource_associated_entity_id = p.hobt_id
WHERE resource_database_id = db_id('AdventureWorks')
order by request_session_id, resource_type, resource_associated_entity_id
--小F-- 2011-12-08
  • 打赏
  • 举报
回复
--检查一个连接当前所持有的锁
select request_session_id,resource_type, resource_associated_entity_id,
request_status, request_mode,
resource_description
FROM sys.dm_tran_locks


--当然我们也可以结合其他的动态管理视图,直接查出某个数据库上面的锁是在哪些表格,以及在哪些索引上面。例如(图9-3):
use AdventureWorks
go
SELECT request_session_id,resource_type, resource_associated_entity_id,
request_status, request_mode,
resource_description, p.object_id,object_name(p.object_id) as object_name, p.*
FROM sys.dm_tran_locks left join sys.partitions p
on sys.dm_tran_locks.resource_associated_entity_id = p.hobt_id
WHERE resource_database_id = db_id('AdventureWorks')
order by request_session_id, resource_type, resource_associated_entity_id
--小F-- 2011-12-08
  • 打赏
  • 举报
回复
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_who_lock]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)  drop procedure [dbo].[sp_who_lock]  GO  use master  go  create procedure sp_who_lock  as  begin  declare @spid int,@bl int,  @intTransactionCountOnEntry int,  @intRowcount int,  @intCountProperties int,  @intCounter int  create table #tmp_lock_who (  id int identity(1,1),  spid smallint,  bl smallint)  IF @@ERROR<>0 RETURN @@ERROR  insert into #tmp_lock_who(spid,bl) select 0 ,blocked  from (select * from sysprocesses where blocked>0 ) a   where not exists(select * from (select * from sysprocesses where blocked>0 ) b   where a.blocked=spid)  union select spid,blocked from sysprocesses where blocked>0  IF @@ERROR<>0 RETURN @@ERROR   -- 找到临时表的记录数  select @intCountProperties = Count(*),@intCounter = 1 from #tmp_lock_who  IF @@ERROR<>0 RETURN @@ERROR   if @intCountProperties=0 select '现在没有阻塞和死锁信息' as message  -- 循环开始  while @intCounter <= @intCountProperties  begin  -- 取第一条记录  select @spidspid = spid,@blbl = bl  from #tmp_lock_who where Id = @intCounter   begin  if @spid =0   select '引起数据库死锁的是: '+ CAST(@bl AS VARCHAR(10)) + '进程号,其执行的SQL语法如下'  else  select '进程号SPID:'+ CAST(@spid AS VARCHAR(10))+ '被' + '进程号SPID:'+ CAST(@bl AS VARCHAR(10)) +'阻塞,其当前进程执行的SQL语法如下'  DBCC INPUTBUFFER (@bl )  end   -- 循环指针下移  set @intCounter = @intCounter + 1  end  drop table #tmp_lock_who  return 0  end 
目录 SQL Server维护 1 适用人员: 2 一、 SQL Server安装 4 SQL 2000安装 4 检查SQL Server 2000版本 20 SQL 2005 安装 20 SQL 2005配置 32 检查SQL Server2005版本 34 SQL 2008(包括 SQL 2008R2)安装 35 SQL 2008配置 45 检查SQL Server 2008版本 45 Windows 2008中安装SQL 2008 46 常见问题 49 安装过程中提示有文件或进程挂起 49 使用windows账号可以登录,可是sa没法登陆 49 本地能连接上,其他电脑不能连接 52 安装过程中提示性能计数器错误 52 二、 SQL Server卸载 54 SQL 2000卸载 54 SQL 2005 卸载 55 SQL 2008卸载 56 三、 更改SQL Server排序规则 56 SQL 2000 排序规则修改 56 SQL 2005 排序规则修改 58 SQL 2008 排序规则修改 58 四、 备份与还原数据库 59 SQL 2000备份数据库 59 SQL 2000还原数据库 62 SQL 2005/2008 备份数据库 65 SQL 2005/2008 还原数据库 68 五、 附加与分离数据库 74 SQL 2000附加数据库 75 SQL 2000分离数据库 76 SQL 2005/2008附加数据库 77 SQL 2005/2008分离数据库 81 六、 建立维护计划为服务器加速 83 SQL 2000中建立维护计划优化系统 83 SQL 2005或SQL 2008种建立维护计划优化系统 88 1、自行创建维护计划 88 2、运用维护计划向导创建维护计划 91 3、各维护计划任务选项的说明 101 4、手动删除维护计划 107 七、 启用AWE或者3GB为服务器加速 108 判断采用AWE还是3GB 108 AWE方式确定SQL Server占用的内存大小 108 3GB开启方式 108 在SQL 2000 中开启AWE 111 在SQL 2005或SQL 2008中开启AWE 113 八、 日志清除 116 各版本数据库清除语句 116 SQL 2000、SQL 2005清除语句 116 SQL 2008清除语句 116 通过重建数据库彻底解决问题(还没实践过,慎用) 116 九、 索引维护 117 SQL 2000索引维护 117 SQL 2005/2008索引维护 121 十、 触发器管理 125 触发器查询语句 125 触发器管理语句 126 触发器管理工具 126 十一、 利用SQL Server导入导出数据 127 SQL 2000数据导入导出 127 SQL 2005/2008数据导入导出 133 十二、 SQL跟踪器的使用 144 易飞6.0特殊设置 144 SQL 2000跟踪器的使用 145 SQL 2005/2008跟踪器的使用 150 十三、 数据库异常检测以及简单修复 154 1. SQL Server数据库为什么易损坏呢? 154 2 预防措施 154 3. 其他的一些常用的修复命令 154 1. DBCC CHECKDB 154 2. DBCC CHECKTABLE 155 4.数据库日志损坏的修复 155 5. 数据库质疑的一般处理 156 6.还原数据库到指定时间点 156

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧