Split-SPScaleOutDatabase
Moves a specified percentage of partitions from one scale-out database to another.
Syntax
Split-SPScaleOutDatabase
-NewDatabaseName <String>
-SourceDatabase <SPDatabasePipeBind>
-SourceServiceApplication <SPServiceApplicationPipeBind>
[-AssignmentCollection <SPAssignmentCollection>]
[-Confirm]
[-MoveLowerHalf]
[-NewDatabaseCredentials <PSCredential>]
[-NewDatabaseFailoverServer <String>]
[-NewDatabaseServer <String>]
[-SourcePercentage <Int32>]
[-WhatIf]
[<CommonParameters>]
Split-SPScaleOutDatabase
-SourceDatabase <SPDatabasePipeBind>
-SourceServiceApplication <SPServiceApplicationPipeBind>
-TargetDatabase <SPDatabasePipeBind>
[-AssignmentCollection <SPAssignmentCollection>]
[-Confirm]
[-MoveLowerHalf]
[-SourcePercentage <Int32>]
[-WhatIf]
[<CommonParameters>]
Description
This cmdlet contains more than one parameter set. You may only use parameters from one parameter set and you may not combine parameters from different parameter sets. For more information about how to use parameter sets, see Cmdlet parameter sets.
Use the Split-SPScaleOutDatabase
cmdlet to move a specified percentage of partitions from a source database to an existing target database or to a new database that you create with the specified parameters.
For permissions and the most current information about Windows PowerShell for SharePoint Products, see the online documentation at SharePoint Server Cmdlets.
Examples
---------------EXAMPLE 1---------------
$databases = Get-SPScaleOutDatabase -ServiceApplication $serviceApplication
$database = $databases[0]
Split-SPScaleOutDatabase -NewDatabaseName Database2 -NewDatabaseServer MyDatabaseServer -SourceDatabase $database -SourceServiceApplication $serviceApplication -SourcePercentage 30
This example creates a new scale-out database named Database2 on the MyDatabaseServer database server in the given service application.
The example also moves 30% of the data from the upper side of the data range in the first scale-out database of the given service application.
---------------EXAMPLE 2---------------
$ssa = Get-SPEnterpriseSearchServiceApplication
$newReportingDb = "Search_AnalyticsReporting2"
$reportingDb = Get-SPScaleOutDatabase -SearchApplication $ssa
Split-SPServerScaleOutDatabase -SourceServiceApplication $ssa -SourceDatabase $reportingDb -NewDatabaseName $newReportingDb -SourcePercentage 33
This example scales out the Search Analytics database, moving 33% of data to the new databases.
Parameters
-AssignmentCollection
Manages objects for the purpose of proper disposal. Use of objects, such as SPWeb or SPSite, can use large amounts of memory and use of these objects in Windows PowerShell scripts requires proper memory management. Using the SPAssignment object, you can assign objects to a variable and dispose of the objects after they are needed to free up memory. When SPWeb, SPSite, or SPSiteAdministration objects are used, the objects are automatically disposed of if an assignment collection or the Global parameter is not used.
When the Global parameter is used, all objects are contained in the global store.
If objects are not immediately used, or disposed of by using the Stop-SPAssignment
command, an out-of-memory scenario can occur.
Type: | SPAssignmentCollection |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-Confirm
Prompts you for confirmation before executing the command.
For more information, type the following command: get-help about_commonparameters
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-MoveLowerHalf
Specifies whether to move the lower or the upper side of the data range from the source scale-out database. If this parameter is not specified, the default behavior is to move the upper side of the source scale-out database data range.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-NewDatabaseCredentials
Specifies the credentials to use when creating the scale-out database. These credentials will have owner rights on the newly created scale-out database. If a value is not provided, the current user's credentials will be used by default.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-NewDatabaseFailoverServer
Specifies the failover server name of the new scale-out database to be created. If a value is not provided, the new scale-out database does not have a failover server.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-NewDatabaseName
Specifies the name of a new scale-out database that you are creating.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-NewDatabaseServer
Specifies the name of the server of the new scale-out database to be created. If a value is not provided, the default database server is used.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-SourceDatabase
The source scale-out database to move data from.
Type: | SPDatabasePipeBind |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-SourcePercentage
Specifies the percentage of data in the source scale-out database to move. If a value is not provided, the default value of 50 percent is used.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-SourceServiceApplication
The service application in which the data move operation will take place.
Type: | SPServiceApplicationPipeBind |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-TargetDatabase
The target scale-out database to move data to.
Type: | SPDatabasePipeBind |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |
-WhatIf
Displays a message that describes the effect of the command instead of executing the command.
For more information, type the following command: get-help about_commonparameters
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | SharePoint Server Subscription Edition |