Compare-sqmServerConfiguration
Configuration
sqmSQLTool v1.8.2+ · Compare
[PSCustomObject] rows.
Instance-level properties compared:
Version, Edition, LoginMode, MaxMemory, MinMemory, MaxDop, CostThresholdForParallelism, BackupDirectory, DefaultFile, DefaultLog. Collation is always included as a reference row regardless of match.
With
-CompareDatabases, user databases are also compared: Owner, RecoveryModel, and Collation per database. Missing databases on either side are reported as <missing>.
Parameters
| Parameter | Type | Required | Default | Notes |
|---|---|---|---|---|
| -SourceInstance | string | Required | , | Reference SQL Server instance. |
| -TargetInstance | string | Required | , | Instance to compare against the source. |
| -SqlCredential | PSCredential | Optional | , | Used for both instance connections. For different credentials per instance, connect manually first. |
| -CompareDatabases | switch | Switch | $false | Also compare user databases (Owner, RecoveryModel, Collation). Missing databases are flagged. |
| -EnableException | switch | Switch | $false | Throw on error instead of returning $null. |
| -CompareLogins | switch | Switch | $false | Wenn gesetzt, werden Server-Logins verglichen (Vorhanden, SID, Standard-DB, Sprache, Deaktiviert-Status, Server-Rollen, Passwort-Hash, Datenbankzuordnung und Datenbankrollen je Datenbank). |
| -ExcludeLogin | string[] | Optional | @() | Nur mit -CompareLogins relevant. Diese Logins ausschliessen (Wildcards erlaubt). |
| -IncludeMigrationObjects | switch | Switch | $false | Wenn gesetzt, werden zusaetzlich migrationsrelevante Serverobjekte verglichen: Linked Servers, Credentials, SQL-Agent-Jobs, Endpoints, Database-Mail-Profile. |
| -IncludeSystemLogins | switch | Switch | $false | Nur mit -CompareLogins relevant. Wenn gesetzt, werden auch Systemlogins (sa, ##MS_*, NT SERVICE\*, NT AUTHORITY\*, BUILTIN\*) verglichen. Standard: ausgeblendet, da 'sa' und Systemkonten instanzspezifische Zufallswerte haben und keinen echten Drift darstellen. |
| -Login | string[] | Optional | @() | Nur mit -CompareLogins relevant. Nur diese Logins vergleichen (Wildcards erlaubt). |
| -NoOpen | switch | Switch | $false | Unterdrueckt das automatische Oeffnen des Reports. |
| -NoReport | switch | Switch | $false | Ueberspringt die Report-Erstellung (nur Rueckgabeobjekt, z.B. fuer Skript-Weiterverarbeitung). |
| -OutputPath | string | Optional | (Get-sqmDefaultOutputPath) | Ausgabeverzeichnis fuer TXT/HTML. Standard: aus Modulkonfiguration. |
Execution Flow
Examples
Compare two instances, instance-level settings only
Compare-sqmServerConfiguration -SourceInstance "SQL01" -TargetInstance "SQL02"
Include database-level comparison and format as table
Compare-sqmServerConfiguration -SourceInstance "SQL01" -TargetInstance "SQL02" -CompareDatabases | Format-Table