如何在PowerShell SQLPS中获取初始数据库大小?

时间:2016-09-25 11:45:46

标签: sql sql-server powershell sqlps

我一直在搜索如何通过PowerShell SQLPS模块获取数据库及其日志文件的初始大小几天。由于某些未知原因,此信息未包含在Get-SqlDatabase命令的返回对象的属性中。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

首先,标签'初始尺寸'有点不幸,因为它实际尺寸 - 请参阅this blog article关于它

话虽如此,你可以尝试这样的事情

$db = Get-SqlDatabase YourDBName

# Size of files of primary group
$db.FileGroups['Primary'].Files |
    Select-Object -Property Name, @{N = 'Size'; E = { $_.Size / 1KB }}

# Size of log files
$db.LogFiles |
    Select-Object -Property Name, @{N = 'Size'; E = { $_.Size / 1KB }}

对于我家庭实验室的测试数据库,这看起来像这样

PS> $db.FileGroups['Primary'].Files |
      Select-Object -Property Name, @{N = 'Size'; E = { $_.Size / 1KB }}

Name    Size
----    ----
AXDB   12408
AXDB_2    50

PS> $db.LogFiles |
      Select-Object -Property Name, @{N = 'Size'; E = { $_.Size / 1KB }}

Name     Size
----     ----
AXDB_log 5448

SSMS