日期:2014-05-18  浏览次数:20407 次

应用T-sql查看服务器磁盘剩余空间
公司现在有差不多20台服务器,每天人工去查磁盘剩余空间浪费不少时间,现在想在某一台服务器(a)上通过链服访问其他服务器查看剩余空间。
但xp_fixeddrives这个存储过程需要的权限太高,基于安全性考虑链服的链接用户又只有datareader权限,无法执行这个存储过程。
目前考虑的方法是在每台服务器上设置JOB执行xp_fixeddrives并将信息插入本地数据库的一个表中,然后在a服务器上设置JOB每天访问每台服务器上的这个表并进行汇总,然后通过邮件发送通知。
这个方法虽然可行,但必须在每台服务器上新建存储信息的表觉得有点浪费资源,而且维护起来也太麻烦,想问下各位除了xp_fixeddrives这个存储过程可以查看服务器磁盘磁盘空间大小以外,有没有其他方法可以实现同样的功能?比如是否有存储磁盘剩余空间大小的系统表或者系统视图?

备注:xp_fixeddrives这个系统存储过程在sql server2008中是已经被隐藏的了,因为涉及到安全性的问题,所以是无法查看这个存储过程的代码的。

------解决方案--------------------
SQL code
Exec master.dbo.xp_fixeddrives

------解决方案--------------------
我也想知道。
------解决方案--------------------
SQL code
Exec master.dbo.xp_fixeddrives

------解决方案--------------------
SQL code

master.dbo.xp_cmdshell 'wmic logicaldisk list brief'