Copy-DPMDatasourceReplica
Creates a new copy of the replica of the data source.
Syntax
Copy-DPMDatasourceReplica
[-Datasource] <Datasource>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Copy-DPMDatasourceReplica
-Line
Description
Note
A new optional parameter [-CheckReplicaFragmentation] is included in DPM 2019 UR1. For more information, see Parameters.
The Copy-DPMDatasourceReplica cmdlet creates a new copy of the DPM datasource on SC DPM 2019. This cmdlet must be run only when there are high backup latencies for backups due to replica fragmentation. Run the below command to verify the number of extents and identify fragmentation level.
No. of extents = fsutil file queryExtents <replica_filename> | Measure-Object -Line
Compare the number of extents with replica_file_size/refs_cluster_size (refs_cluster_size can be 4K or 64K). If the value for number of extents is close enough to the above value, cmdlet Copy-DPMDatasourceReplica can be used to defrag the replica.
Consider the following while using this cmdlet
Storage
Make sure storage pool has enough free space available to create a new copy of replica. Further, there will be a storage bloat until the older recovery points get pruned.
Datasource Make sure the data source is idle and is not undergoing any operation such as backup, recovery etc. If data source is in any state other than idle. the copy of replica is not allowed.
Fragmentation
Post replica copy is created, ensure the fragmentation is not present by using fsutil command as explained above.
Examples
Example 1
PS C:\> $pg = Get-DPMProtectionGroup -DPMServerName "TestingServer"
This command gets the list of all protection groups on the DPM server named TestingServer.
Example 2
PS C:\> $ds = Get-DPMDatasource -ProtectionGroup $pg[<index>]
This command gets the list of all data sources within $pg[<index>]
.
Example 3
PS C: \> Copy-DPMDatasourceReplica -Datasource $ds[<index>]
This command creates a copy of the replica for $ds[<index>]
.
Parameters
-CheckReplicaFragmentation
Calculates the fragmentation percentage for a replica.
Note
This parameter is applicable for DPM 2019 UR1.
Type: | SwitchParameter |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Datasource
Specifies a data source object for which this cmdlet removes a replica and creates a new copy of replica.
A data source can be a file system share or volume for the Windows operating system, Microsoft SQL Server database, Microsoft Exchange Server storage group, Microsoft SharePoint farm, Microsoft Virtual Machine, System Center 2019 - Data Protection Manager (DPM) database, or system state that is a member of a protection group. To obtain a datasource object, use the cmdlet Get-DPMDatasource cmdlet.
Type: | Datasource |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.Datasource
Outputs
System.Object