zoukankan      html  css  js  c++  java
  • 维护计划生成的SSIS包存储在哪

    首先理解导入导出包的基本概念:
    http://technet.microsoft.com/zh-cn/library/ms141772(v=SQL.110).aspx
    包既可以保存在SQL Server msdb数据库的sysssispackages表中,也可以保存在文件系统中。
    包存储区是Integration Services服务监视和管理的逻辑存储区,它包括在Integration Services服务的配置文件中指定的msdb数据库和文件系统。
    我们创建包含两个子计划的维护计划MaintenancePlanTest,如下图所示:

    --与维护计划及作业相关的表

    1 --包存储区MSDB下的信息
    2 select * from msdb.dbo.sysssispackagefolders
    3 select * from msdb.dbo.sysssispackages
    4 --记录维护计划的子计划信息
    5 select * from msdb.dbo.sysmaintplan_subplans--每一个子计划对应一个job,在一个子计划下添加多个任务并不会在job中表现为多个steps
    6 select * from msdb.dbo.sysmaintplan_log--在维护计划运行后,会在此表中进行记录
    7 select * from msdb.dbo.sysjobs--相关的作业信息
    8 select * from msdb.dbo.sysjobsteps--相关的作业步骤
    9 select * from msdb.dbo.sysjobschedules--相关的作业调度

    --图例中在MSDB下产生的维护计划及作业信息

     1 select spf.foldername,sp.name,sps.subplan_name,sps.subplan_description
     2       ,sj.job_id,sj.name,sjs.step_name,sjs.subsystem,sjs.command
     3 from msdb.dbo.sysssispackagefolders spf--包存储区MSDB下的信息
     4 INNER JOIN msdb.dbo.sysssispackages sp--包存储区MSDB下的信息
     5 ON spf.folderid=sp.folderid
     6 INNER JOIN msdb.dbo.sysmaintplan_subplans sps--每一个子计划对应一个job
     7 ON sp.id=sps.plan_id
     8 INNER JOIN msdb.dbo.sysjobs sj--相关的作业信息
     9 ON sps.job_id=sj.job_id
    10 INNER JOIN msdb.dbo.sysjobsteps sjs--相关的作业步骤
    11 ON sj.job_id=sjs.job_id
    12 ORDER BY sp.id,sps.subplan_name,sjs.step_id


    --删除维护计划涉及的过程

    1 execute msdb.dbo.sp_maintplan_delete_plan
    2 execute msdb.dbo.sp_maintplan_delete_subplan
    3 execute msdb.dbo.sp_maintplan_delete_log
    4 execute msdb.dbo.sp_delete_job

    SQL Server 的维护计划生成的SSIS包,存储在哪个位置?

    使用“维护计划”(“设计”选项卡)可以指定维护计划及其子计划的属性。将任务从工具箱拖到计划设计器中。右键单击任务组以创建分支执行路径。维护计划将另存为 Integration Services包,它们由SQL Server代理作业执行。在“设计”选项卡,每一个子计划对应一个job。通过查看作业属性对应步骤下面包源为SQL Server。
    因此推断维护计划生成的SSIS包是保存在msdb库sysssispackages表中,而非文件系统。
    可通过在对象资源管理器中连接到Integration Services(服务器名称应该填写计算机名)。然后展开'已存储的包'-->MSDB-->右击对应包-->导出-->包位置选择'文件系统'即可导出后缀为.dtsx形式的SSIS包。当然也可以直接迁移维护计划。
    通过查看作业步骤属性:

    类型SSIS,包源:SQL Server、文件系统、SSIS包存储区 分别对应的命令行
    /SQL "Maintenance PlansMaintenancePlan" /SERVER "tcp:127.0.0.1,1433" /CHECKPOINTING OFF /SET "PackageSubplan_1.Disable";false /REPORTING E
    /FILE "C:Documents and SettingsAdministratorMy Documents新建包.dtsx" /CHECKPOINTING OFF /SET "PackageSubplan_1.Disable";false /REPORTING E
    /DTS "MSDBMaintenance PlansMaintenancePlan" /SERVER SERVERNAME /CHECKPOINTING OFF /SET "PackageSubplan_1.Disable";false /REPORTING E
    扩展:
    通过'SQLServer导入和导出向导'导数据,选项'保存SSIS包'若选择SQL Server则保存到msdb数据库下(可通过在对象资源管理器中连接到Integration Services查看,右键单击该包并选择“运行包”,即可执行数据导入导出);若选择文件系统则保存到指定路径的.dtsx文件。

    【作者】: 醒嘞
    【出处】: http://www.cnblogs.com/Uest/
    【声明】: 本文内容仅代表个人观点。如需转载请保留此段声明,且在文章页面明显位置给出原文链接!
  • 相关阅读:
    系统的讲解
    后端架构师技术图谱
    设计模式简介(45种)
    浅入浅出 Go 语言接口的原理
    我所认为的RESTful API最佳实践
    Mysql 索引精讲
    客户端与服务端的三次握手与四次挥手
    线程的安全和可重入(待续)
    进程和线程(待续)
    设计模式(3)--观察者模式(待续)
  • 原文地址:https://www.cnblogs.com/Uest/p/3483713.html
Copyright © 2011-2022 走看看