我司数据库一季度巡检一次, 所以经常用到下面脚本
--1. 查看数据库版本信息
select @@version
--2. 查看所有数据库名称及大小
exec sp_helpdb
--3. 查看数据库所在机器的操作系统参数
exec master..xp_msver
--4. 查看数据库启动的参数
--5. 查看数据库启动时间
- select convert(varchar(30),login_time,120)
- from master..sysprocesses where spid=1
--6. 查看数据库服务器名
select 'Server Name:'+ltrim(@@servername)
--7. 查看数据库实例名
select 'Instance:'+ltrim(@@servicename)
--8. 数据库的磁盘空间呢使用信息
exec sp_spaceused
--9. 日志文件大小及使用情况
dbcc sqlperf(logspace)
--10. 表的磁盘空间使用信息
select
@@total_read [读取磁盘次数],
@@total_write [写入磁盘次数],
@@total_errors [磁盘写入错误数],
getdate() [当前时间]
--12. 获取 I/O 工作情况
--13. 查看 CPU 活动及工作情况
- select
- @@cpu_busy,
@@timeticks [每个时钟周期对应的微秒数],
@@cpu_busy*cast(@@timeticks as float)/1000 [CPU 工作时间 (秒)],
@@idle*cast(@@timeticks as float)/1000 [CPU 空闲时间 (秒)],
getdate() [当前时间]
--14. 检查锁与等待
exec sp_lock
--15. 检查死锁
- exec sp_who
- exec sp_who2
--17. 活动用户和进程的信息
exec sp_who 'active'
--20. 查看所有数据库用户所属的角色信息
exec sp_helpsrvrolemember
--21. 查看链接服务器
exec sp_helplinkedsrvlogin
--25. 查询文件组和文件
- select
- df.[name],df.physical_name,df.[size],df.growth,
- f.[name][filegroup],f.is_default
- from sys.database_files df join sys.filegroups f
- on df.data_space_id = f.data_space_id
--28. 查看 SQL Server 的实际内存占用
select * from sysperfinfo where counter_name like '%Memory%'
--29. 显示所有数据库的日志空间信息
- dbcc sqlperf(logspace)
- select *,CAST(cntr_value/1024.0 as decimal(20,1)) MemoryMB
- from master.sys.sysperfinfo
- where counter_name='Total Server Memory (KB)'
来源: http://www.bubuko.com/infodetail-3201726.html