SQL Server BI Step by Step SSIS 6 --- 获取远程主机的可用磁盘空间

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介:

 SSIS不仅是一个ETL工具,其实它的功能非常强大。就拿它的WMI Data Reader任务和Event Watcher任务来说,甚至可以获取很多操作系统的信息。Windows管理规范(Windows Management Instrumentation)是Windows中的“最高机密”之一. WMI通过WQL查询,可以来完成以下应用:
      1.读取系统事件日志来查找某个特定的错误
      2.查询运行中的应用程序列表
      3.查询在程序包执行期间有多少内存可用调试
      4.确定磁盘上的空余磁盘空间
     当然,这些应用你也可以通过C#调用WMI来实现。不过使用SSIS,你可以结合这些应用,与数据库的操作,数据转换和集成联系起来,能够发挥更强大的作用。
    
需求:
     需要获取远程服务器的磁盘可用空间大小.

实现:
   
1.首先需要确定的是,查询远程电脑的磁盘大小,必须具有这台主机的管理员权限,或者能够以管理员的身份来运行包.
     2.新建一个SSIS包,名称为WMI_Query,在控制流中添加WMI数据读取器任务,双击对期属性进行设置:
       screenshot 
   WMIConnection直接新建的链接,输入主机名称,用户名和密码即可,当然,在这里也可以采用动态连接的方式,那样需要直接改变WMIConnection的连接字符串.
    screenshot

 

  WQL的输入方式为直接输入,这里也可以使用变量名教文件输入。查询磁盘空间的语句为:

SELECT FreeSpace, DeviceId, Size, SystemName, Description FROM
Win32_LogicalDisk
where DriveType= 3

  WMI中DriveType是指驱动器类型,  0代表未知,1代表可移动,2代表固定,3代表网络,4代表CD-ROM,5代表RAM磁盘,我们设置目标的方式为变量,并且直接新建一个字符串的变量DiskUsageResults.
   3. 为了方便查看,我们可以添加一个脚本任务来输出这个变量,直接弹出窗口来显示磁盘信息:

 
public void Main()
{
    // TODO: Add your code here
    MessageBox.Show(Dts.Variables["DiskUsageResults"].Value.ToString());
    Dts.TaskResult = (int)ScriptResults.Success;
}

  运行包,我们可以直接看到远程机器上面的所有的磁盘使用情况
screenshot

结论:
     1.可能这种功能能够派上用场的时候比较少,但是SSIS提供的功能已经涵盖非常广,在很多问题的解决方案中能够成为一种选择。
资源:
     1.WMI Data Reader Task Query   http://www.sqlservercentral.com/articles/Integration+Services+(SSIS)/67428/
     2.图解SSIS监视文件夹并自动导入数据   http://blog.csdn.net/jinjazz/archive/2008/07/29/2730135.aspx

作者:孤独侠客似水流年
出处:http://lonely7345.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

分类: SQL Server

本文转自孤独侠客博客园博客,原文链接:http://www.cnblogs.com/lonely7345/archive/2009/09/17/1568808.html,如需转载请自行联系原作者
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
11月前
|
关系型数据库 BI 分布式数据库
PolarDB NL2BI解决方案,让你不懂SQL也能进行数据查询分析并生成BI报表
无需创建和开通资源,在预置环境中免费体验PolarDB MySQL及其NL2BI解决方案
PolarDB NL2BI解决方案,让你不懂SQL也能进行数据查询分析并生成BI报表
|
SQL 存储 数据挖掘
Quick BI 的模型设计与生成SQL原理剖析
本文介绍Quick BI如何进行维度建模,基于维度模型如何来自动化的生成分析查询的SQL语句,从而使数据分析变得更容易。
3003 0
|
1月前
|
SQL 关系型数据库 BI
使用 Webshell 访问 SQL Server 主机并利用 SSRS
使用 Webshell 访问 SQL Server 主机并利用 SSRS
|
3月前
|
Java 测试技术 容器
从零到英雄:Struts 2 最佳实践——你的Web应用开发超级变身指南!
【8月更文挑战第31天】《Struts 2 最佳实践:从设计到部署的全流程指南》深入介绍如何利用 Struts 2 框架从项目设计到部署的全流程。从初始化配置到采用 MVC 设计模式,再到性能优化与测试,本书详细讲解了如何构建高效、稳定的 Web 应用。通过最佳实践和代码示例,帮助读者掌握 Struts 2 的核心功能,并确保应用的安全性和可维护性。无论是在项目初期还是后期运维,本书都是不可或缺的参考指南。
50 0
|
5月前
|
SQL 关系型数据库 Linux
SQL 主机
SQL 主机
23 0
|
6月前
|
Kubernetes Cloud Native 数据库
云原生|kubernetes|k8s下部署SQLServer以及Navicat连接SQLServer报错:远程主机强迫关闭了一个现有的连接 错误的解决
云原生|kubernetes|k8s下部署SQLServer以及Navicat连接SQLServer报错:远程主机强迫关闭了一个现有的连接 错误的解决
266 0
|
SQL 关系型数据库 BI
通过WebShell登录SQL Server主机并使用SSRS报表服务
本文将为您介绍如何使用RDS实例的主机账号登录到RDS SQL Server实例主机中。您可以在登录主机后使用SSRS(SQL Server Reporting Services)服务管理和操作SQL Server数据库。
通过WebShell登录SQL Server主机并使用SSRS报表服务
|
网络协议 Java 数据库连接
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
264 0
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
|
Kubernetes Cloud Native 安全
云原生|kubernetes|k8s下部署SQLServer以及Navicat连接SQLServer报错:远程主机强迫关闭了一个现有的连接 错误的解决
云原生|kubernetes|k8s下部署SQLServer以及Navicat连接SQLServer报错:远程主机强迫关闭了一个现有的连接 错误的解决
1172 0

热门文章

最新文章