Как получить начальный размер базы данных в PowerShell SQLPS?

Несколько дней я искал, как получить начальный размер базы данных и файлов журналов с помощью модуля PowerShell SQLPS. По неизвестной причине эта информация не включена в свойства возвращаемого объекта из Get-SqlDatabase команда.

Спасибо за помощь.

1 ответ

Прежде всего, ярлык "начальный размер" немного неудачен, так как это скорее фактический размер - см. Статью об этом в блоге.

При этом, вы можете попробовать что-то вроде этого

$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

Другие вопросы по тегам