0

我目前正在使用 PowerShell 创建一个数据库,如下所示:

$db = New-Object Microsoft.SqlServer.Management.Smo.Database($server, $database)
$db.Collation = "...";
...

$db.Create()

现在我的问题是:如何设置数据和日志文件的初始大小及其各自的增长大小?

到目前为止,我尝试了以下方法:

foreach ($fg in $db.FileGroups) {
  foreach($f in $fg) {
      $f.Size = $initialDataFileSizeInKB
      $f.Growth = $dataFileGrowthInKB
      $f.GrowthType = [Microsoft.SqlServer.Management.Smo.FileGrowthType]::KB
    }
  }
}

foreach($lf in $db.LogFiles) {
    $lf.Size = $initialLogFileSizeInKB
    $lf.Growth = $logFileGrowthInKB
    $lf.GrowthType = [Microsoft.SqlServer.Management.Smo.FileGrowthType]::KB
}

但是,这不起作用 - 问题似乎是还没有文件或日志文件。如何设置默认值?

4

1 回答 1

0

对于 Growth 和 GrowthType 修改各个文件。

foreach ($fg in $db.FileGroups) {
   foreach ($f in $fg.Files) {
      $f.Growth = $dataFileGrowthInKB
      $f.GrowthType = 'KB'
      $f.Alter()
   }
}
我不确定是否要修改初始大小。您是否尝试将其设置为数据库创建的一部分?

于 2014-04-01T17:24:22.377 回答