dbatools icon indicating copy to clipboard operation
dbatools copied to clipboard

Replication: Additional commands & functionality to add

Open jpomfret opened this issue 2 years ago • 0 comments

Summarize Command's Functionality

Replication Work

Commands to Create

List to keep track of commands we need and who's working on them, most of the names are being pulled from thin air so if you don't agree with new vs add they can all be discussed\changed.

Meaning of the checkmarks:

  • [X] Done
  • [ ] not done
  • [-] in progress by...

General

  • [X] Get-DbaReplServer
  • [X] Export-DbaReplServerSetting

Distribution

  • [X] Get-DbaReplDistributor
  • [X] Disable-DbaReplDistributor
  • [X] Enable-DbaReplDistributor
  • [ ] Set-DbaReplDistributor (updating properties?)

Publishing

  • [X] Get-DbaReplPublisher
  • [ ] Set-DbaReplPublisher (updating properties?)
  • [X] Get-DbaReplPublication
  • [X] Disable-DbaReplPublishing
  • [X] Enable-DbaReplPublishing
  • [X] New-DbaReplPublication
  • [X] Remove-DbaReplPublication

Articles

  • [X] Add-DbaReplArticle
  • [X] Remove-DbaReplArticle
  • [X] Get-DbaReplArticle
  • [ ] Set-DbaReplArticle

Columns

  • [X] Get-DbaReplArticleColumn
  • [ ] Add-DbaReplArticleColumn
  • [ ] Remove-DbaReplArticleColumn

Subscriptions

  • [-] Get-DbaDbSubscription - in progress
  • [ ] Set-DbaReplDistributor (update properties)
  • [X] New-DbaDbSubscription
  • [X] Remove-DbaReplSubscription

Monitoring\Troubleshooting

  • [X] Test-DbaReplLatency - #TODO - needs some love, not working?
  • [ ] Run-DbaReplSnapshotAgent ?
  • [ ] Get-DbaReplSnapshotAgentStatus
  • [ ] Get-DbaReplLogReaderAgentStatus
  • [ ] Test-DbaReplSnapFolder - similar to Test-DbaPath but from replication service account perspective or something similar to check If the share (UNC or Local) is accessible from both, publisher and subscriber side
  • [ ] Reinitialise-? - what do we need here

How to run pester tests locally

 # run the tests
 invoke-pester .\tests\gh-actions-repl.ps1

Testing

Some additional scenarios for us to test commands against.

  • how the commands work when we have a "third site" involved , I mean if we have the distribution db not on the Publication-Server and not on the Subscriber-Server (that's not so common, but it is a thing imo) - I saw some unusual behaviour with replication commands when the setup is with a separate Distribution-DB-Server.

Is there a command that is similiar or close to what you are looking for?

No

Technical Details

The basis of replication support is being added to dbatools as part of pr #8958 but there is some additional things that can be added that are documented here.

jpomfret avatar Jun 18 '23 16:06 jpomfret