Save-SqlMigrationReport

生成 In-Memory OLTP 迁移清单

语法

Save-SqlMigrationReport
    [-Server <String>]
    [-Database <String>]
    [-Schema <String>]
    [-Username <String>]
    [-Password <String>]
    [-Object <String>]
    [-InputObject <SqlSmoObject>]
    [-MigrationType <MigrationType>]
    [-FolderPath <String>]
    [<CommonParameters>]

说明

Save-SqlMigrationReport 生成 In-Memory OLTP 迁移清单。

如果移植到使用 In-Memory OLTP,则会告知数据库中哪些表会受益。 确定要移植以使用 In-Memory OLTP 的表后,可以使用 SQL Server Management Studio 中的内存优化顾问将基于磁盘的表迁移到内存优化表。

Note: This cmdlet is only available for PowerShell 5 (v21). It is not longer available in v22+ of the SQLServer module.

示例

示例 1

PS C:\> Save-SqlMigrationReport -Server 'MySQLServer' -Database 'MyDB' -FolderPath 'C:\MigrationReports'

此命令将为服务器上的MyDb数据库中MySQLServer的所有表和存储过程生成一个报表。 将为每个数据库对象创建报表文件(.html 格式),并将其保存在或下方 C:\MigrationReports\MyDBStored ProcedureTables

示例 2

PS C:\> $db = Get-Item 'SQLSERVER:\SQL\MySQLServer\DEFAULT\Databases\MyDB'
PS C:\> Save-SqlMigrationReport -FolderPath 'C:\MigrationReports' -InputObject $db

此命令将生成与示例 1 相同的报表; InputObject 显式传递,并封装有关服务器和数据库的信息。

示例 3

PS C:\> CD 'SQLSERVER:\SQL\MySQLServer\DEFAULT\Databases\MyDB'
PS SQLSERVER:\SQL\MySQLServer\DEFAULT\Databases\MyDB> Save-SqlMigrationReport -FolderPath 'C:\MigrationReports'

此命令将生成与示例 1 和 2 相同的报表。 请注意, InputObject 是从上下文推断的,即当前工作目录。

参数

-Database

要为其生成报表的数据库的名称。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-FolderPath

将报表文件保存到的文件夹的路径。 报表文件将组织在文件夹下,其名称与嵌套在某个或文件夹下Stored ProcedureTables参数的值相同,具体取决于对象的类型。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InputObject

要为其生成报表的对象(数据库、表或存储过程 SMO 对象)。

类型:SqlSmoObject
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MigrationType

迁移的类型。 目前仅支持 OLTP

类型:MigrationType
接受的值:OLTP
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Object

要为其生成报表的对象(表或存储过程)的名称。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Password

指定在 Username 参数中指定的 SQL Server 身份验证登录 ID 的密码 。 密码是区分大小写的。 请尽可能使用 Windows 身份验证。 如果可能使用强密码,请勿使用空白密码。

如果指定 密码 参数后跟密码,则任何可以看到监视器的用户都可以看到密码。

如果在 .ps1 脚本中编码 密码 后跟密码,则读取脚本文件的任何人都可以看到密码。

将适当的 NTFS 权限分配给该文件,以防止其他用户能够读取该文件。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Schema

要为其生成报表的对象(表或存储过程)的架构。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Server

要连接到的服务器的名称(MYCOMPUTER 或 MYCOMPUTER\MYINSTANCE)。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Username

指定用于与数据库引擎实例建立 SQL Server 身份验证连接的登录 ID。

密码必须通过 Password 参数指定。

如果未指定用户名和密码,则此 cmdlet 会尝试使用运行 Windows PowerShell 会话的 Windows 帐户进行 Windows 身份验证连接。 请尽可能使用 Windows 身份验证。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False