第1章 开始使用SQLServer和PowerShell 1
1.1 简介 1
值得注意的PowerShell V3属性 1
1.2 在你开始之前:使用SQLServer和PowerShell工作 3
1.3 使用示例代码工作 4
1.4 浏览SQL ServerPowerShell 层次结构 5
1.5 安装SMO 9
1.6 导入SMO程序集 10
1.7 发现SQL相关的cmdlets和模块 12
1.8 创建SQL Server实例对象 18
1.9 浏览SMO服务器对象 20
第2章 SQL Server和PowerShell基础任务 22
2.1 介绍 22
2.2 列出SQL Server实例 24
2.3 发现SQL Server服务 27
2.4 启动/停止SQL Server服务 29
2.5 列出SQLServer配置设置 33
2.6 修改SQL Server实例配置 36
2.7 查找数据库对象 40
2.8 创建数据库 44
2.9 修改数据库属性 45
2.10 删除数据库 48
2.11 修改数据库所有者 49
2.12 创建表 51
2.13 创建视图 55
2.14 创建存储过程 58
2.15 创建触发器 61
2.16 创建索引 65
2.17 执行查询语句/SQL脚本 68
2.18 使用Invoke-Sqlcmd实施批量导出 69
2.19 使用bcp实施批量导出 71
2.20 使用BULK INSERT实施批量导入 73
2.21 使用bcp实施批量导入 77
第3章 基本管理 80
3.1 介绍 80
3.2 创建SQL Server实例清单 80
3.3 创建SQL Server数据库清单 84
3.4 列出安装的热补丁和服务包 86
3.5 列出运行/阻塞的进程 89
3.6 杀掉阻塞进程 91
3.7 检查磁盘空间使用 93
3.8 配置WMI服务器事件警告 96
3.9 分离数据库 101
3.10 附加数据库 102
3.11 复制数据库 106
3.12 在多台服务器上执行查询 108
3.13 创建文件组 109
3.14 将辅助数据文件添加到文件组 111
3.15 将索引移动到不同的文件组 113
3.16 检查索引锁片 116
3.17 重新组织/重建索引 118
3.18 运行DBCC命令 120
3.19 配置数据库邮件 121
3.20 列出SQL Server作业 128
3.21 添加SQL Server操作员 130
3.22 创建SQL Server作业 132
3.23 添加SQL Server事件告警 135
3.24 运行SQL Server作业 137
3.25 调度SQL Server作业 139
第4章 安全 146
4.1 介绍 146
4.2 列出SQL Server服务帐号 146
4.3 修改SQL Server服务帐号 148
4.4 列出验证模式 151
4.5 修改验证模式 152
4.6 列出SQL Server日志中的错误信息 155
4.7 列出登录失败的尝试信息 159
4.8 列出登录、用户和数据库匹配 160
4.9 列出登录/用户角色和许可 162
4.10 创建登录 164
4.11 给登录分配许可和角色 166
4.12 创建数据库用户 168
4.13 给数据库用户分配许可权限 171
4.14 创建数据库角色 173
4.15 修复孤立用户 176
4.16 创建凭据 179
4.17 创建代理 181
第5章 高级管理 185
5.1 介绍 185
5.2 列出方面和方面属性 185
5.3 列出策略 187
5.4 导出策略 189
5.5 导入策略 192
5.6 创建条件 195
5.7 创建策略 198
5.8 评估策略 201
5.9 启用/禁用更改跟踪 203
5.10 运行并保存Profiler跟踪事件 205
5.11 提取跟踪文件的内容 211
5.12 创建数据库主密钥 215
5.13 创建证书 217
5.14 创建对称和非对称密钥 219
5.15 配置透明数据加密(TDE) 224
第6章 备份和恢复 229
6.1 介绍 229
6.2 修改数据库恢复模式 229
6.3 列出备份历史 232
6.4 创建备份设备 233
6.5 列出备份头部和文件列表信息 235
6.6 创建完整备份 238
6.7 创建一个镜像媒体集合的备份 243
6.8 创建差异备份 246
6.9 创建事务日志备份 248
6.10 创建文件组备份 250
6.11 将数据库恢复到一个时间点 252
6.12 实施在线逐步恢复 261
第7章 SQLServer开发 268
7.1 介绍 268
7.2 插入XML到SQL Server 268
7.3 从SQL Server抽取XML 271
7.4 从SQL Server内容创建RSS种子 273
7.5 将XSL应用到RSS种子 278
7.6 将二进制数据存储到SQL Server 281
7.7 从SQLServer抽取二进制数据 284
7.8 创建新的程序集 288
7.9 列出用户定义的程序集 291
7.10 抽取用户定义的程序集 292
第8章 商业智能 298
8.1 介绍 298
8.2 列出SSRS报表服务器上的条目 298
8.3 列出SSRS报表属性 300
8.4 使用ReportViewer查看SSRS报表 302
8.5 下载SSRS报表到Excel和 PDF 306
8.6 SSRS目录 309
8.7 创建SSRS数据源 313
8.8 修改SSRS报表的数据源参照 316
8.9 将SSRS报表上传到报表管理器 319
8.10 下载所有SSRS报表RDL文件 322
8.11 将带有角色的用户添加到SSRS报表 326
8.12 在SSIS包存储和MSDB创建目录 330
8.13 将SSIS包部署到包存储 332
8.14 执行存储在包存储或文件系统中的SSIS包 334
8.15 将SSIS包下载到文件 336
8.16 创建SSISDB目录 338
8.17 创建SSISDB文件夹 341
8.18 将ISPAC文件部署到SSISDB 343
8.19 执行存储在SSISDB中的SSIS包 345
8.20 列出SSAS cmdlets 348
8.21 列出SSAS实例属性 349
8.22 备份SSAS数据库 351
8.23 恢复SSAS数据库 352
8.24 执行SSAS cube 353
第9章 有用的PowerShell片段 355
9.1 介绍 355
9.2 为Get-Help文档化PowerShell脚本 355
9.3 获取时间戳 358
9.4 获取额外错误信息 359
9.5 列出进程 361
9.6 获取别名 363
9.7 导出到CSV和XML 364
9.8 使用Invoke-Expression 365
9.9 测试正则表达式 367
9.10 管理文件夹 370
9.11 管理文件 372
9.12 搜索文件 374
9.13 读取事件日志 376
9.14 发送电子邮件 377
9.15 嵌入C#代码 379
9.16 创建HTML报表 381
9.1 7解析XML 382
9.18 从Web服务抽取数据 384
9.19 使用PowerShell远程 386
附录A SQL Server和PowerShell快捷键 390
附录B PowerShell入门 406
附录C 资源 430
附录D 创建SQL Server VM 435