使用powershell 处理 Analysis Services 对象web
加载Analysis Services 提供程序和Cmdletsql
在powershell 中运行 Import-Module “SQLPS”,若是不想显示黄色的警告信息则运行 Import-Module “SQLPS” -disablenamecheckingshell
注意红色框框运行这个已经进入sql server 的Module数据库
能够经过命令查询到Analysis Services里面的经常使用对象,具体的这个Module里面提供了多少操做命令呢?服务器
每个命令的具体帮助在下面的表格里面,来自于微软哦,可信度至关的高。app
Cmdletui |
说明this |
等效的 AMO 方法spa |
---|---|---|
向数据库角色添加成员 |
||
备份 Analysis Services 数据库 |
||
执行查询 |
||
处理多维数据集 |
||
处理维度 |
||
处理分区 |
||
合并分区 |
||
建立文件夹以便包含数据库备份。 |
||
指定将数据库还原到其上的一个或多个远程服务器。 |
||
从数据库角色中删除成员。 |
||
还原服务器实例上的数据库。 |
若是我不想进入SQLPS这个Module里面直接在Powershell里面处理Analysis services里面的对象,就须要加载SQLASCmdlets 模块
咱们能够在这里直接处理数据库中的纬度
Invoke-ProcessDimension -Name "WDBrowser" -Database "SquidASAV10" -ProcessType "ProcessUpdate" -Server "."
注意这个-server 的参数,文档中解释:若是没有,默认是链接本地的Analysis Services,可是实际上有时候默认的并非那么完美,会遇到下面的错误
因此,仍是加上一个“.”比较好
最后在列一下处理ProcessType这个参数,这个是处理Analysis Services对象的一个重要参数,大处处理数据库,小处处理一个分区的数据都须要用到
仍是来自于微软官方的解释:
模式 |
适用于 |
说明 |
---|---|---|
处理默认值 ProcessDefault |
多维数据集、数据库、维度、度量值组、挖掘模型、挖掘结构和分区。 |
检测数据库对象的处理状态,进行必要的处理,将未处理对象或部分处理的对象转变成为已彻底处理的对象。 若是更改数据绑定,“处理默认值”将对受影响的对象执行“处理所有”。 |
处理所有 ProcessFull |
多维数据集、数据库、维度、度量值组、挖掘模型、挖掘结构和分区。 |
处理 Analysis Services 对象及其包含的全部对象。 对已被处理的对象执行“处理所有”时,Analysis Services 将删除该对象中的全部数据,而后再处理该对象。 若是对对象进行告终构更改(例如,添加、删除或 重命名属性层次结构),则须要此类处理。 |
处理清除 ProcessClear |
多维数据集、数据库、维度、度量值组、挖掘模型、挖掘结构和分区。 |
删除指定对象和任何低级构成对象中的数据。 该数据被删除后将不会被从新加载。 |
处理数据 ProcessData |
维度、多维数据集、度量值组和分区。 |
只处理数据,而不生成聚合或索引。 若是分区中存在数据,则在使用源数据从新填充该分区以前, 该数据被删除。 |
处理添加 ProcessAdd |
维度、度量值组和分区 | 对于维度,添加新成员并更新维度属性标题和说明。 对于度量值组和分区,添加新的可用事实数据并只处理相关分区。 |
处理更新 ProcessUpdate |
维度 |
强制从新读取数据并更新维度属性。 相关分区的灵活聚合和索引将被删除。 |
处理索引 ProcessIndexes |
多维数据集、维度、度量值组和分区 |
为全部已处理的分区建立或从新生成索引和聚合。 对于未处理的对象,此选项会生成错误。 若是关闭“迟缓处理”,则须要使用此选项进行处理。 |
处理结构 ProcessStructure |
多维数据集和挖掘结构 |
若是未处理多维数据集,则 Analysis Services 将在必要时处理该多维数据集的全部维度。 而后, Analysis Services 将只建立多维数据集定义。 若是将该选项应用于挖掘结构,它将使用源数据填充挖掘结构。 该选项与“处理所有”选项之间的差异在于该选项不会将处理向下遍历至挖掘模型自己。 |
处理清除结构 ProcessClearStructureOnly |
挖掘结构 |
从挖掘结构中删除全部定型数据。 |