Databases Reference
In-Depth Information
$PrimaryFileGroup
=
New-Object ('Microsoft.SqlServer.Management.Smo.FileGroup')
($DataBase, "PRIMARY")
$DataBase.FileGroups.Add($PrimaryFileGroup)
$SalesFileGroup
=
New-Object ('Microsoft.SqlServer.Management.Smo.FileGroup')
($DataBase, "SalesFileGrp")
$DataBase.FileGroups.Add($SalesFileGroup)
# Create the data files.
$DataBaseDataFile
=
New-Object ('Microsoft.SqlServer.Management.Smo.DataFile')
($PrimaryFileGroup, "MyDBTest_Primary_Data")
$DataBaseDataFile2
=
New-Object ('Microsoft.SqlServer.Management.Smo.DataFile')
($SalesFileGroup, "MyDBTest_SalesFileGrp_Data")
# Add the data files to their respective filegroups.
$PrimaryFileGroup.Files.Add($DataBaseDataFile)
$SalesFileGroup.Files.Add($DataBaseDataFile2)
# Define the data file location, size and growth
$DataBaseDataFile.FileName
=
"E:\Data\MyDBTest_Data_primary.mdf"
$DataBaseDataFile2.FileName
=
"E:\Data\MyDBTest_Data_SalesFileGrp.ndf"
$DataBaseDataFile.Size
=
[double](25.0 * 1024.0)
$DataBaseDataFile.GrowthType
=
"Percent"
$DataBaseDataFile.Growth
=
25.0
$DataBaseDataFile.MaxSize
=
[double](100.0 * 1024.0)
$DataBaseDataFile.IsPrimaryFile
=
'True'
$DataBaseDataFile2.Size
=
[double](25.0 * 1024.0)
$DataBaseDataFile2.GrowthType
=
"Percent"
$DataBaseDataFile2.Growth
=
25.0
$DataBaseDataFile2.MaxSize
=
[double](100.0 * 1024.0)
# Create the log file.
$DataBaseLogFile
=
new-object ('Microsoft.SqlServer.Management.Smo.LogFile')
($DataBase, "MyDBTest_Log")
$DataBase.Logfiles.add($DataBaseLogFile)
$DataBaseLogFile.FileName
=
"E:\Data\MyDBTest_Log.ldf"
$DataBase.Create()
Figure 13-25 shows the database files created in the E: drive.
You can change the recovery model by using the
set RecoveryModel
method (see Figure 13-26). In this
example, you change the
FULL
recovery of the database
"MyDBTest"
to
simple
recovery:
$server
=
New-Object ('Microsoft.SqlServer.Management.Smo.Server')
'PowerServer3\SQL2008'
$database
=
New-Object ('Microsoft.SqlServer.Management.Smo.Database')
($server, "MyDBTest")
$database.RecoveryModel
#Recovery model values 1 is FULL, 2 is BulkLogged, 3 is Simple
$rmodel
=
3
$database.Set_RecoveryModel($rmodel)
$database.RecoveryModel
Search WWH ::
Custom Search