Author | Jess Pomfret (@jpomfret), jesspomfret.com |
Availability | Windows, Linux, macOS |
Want to see the source code for this command? Check out Get-DbaDbCompression on GitHub.
Want to see the Bill Of Health for this command? Check out Get-DbaDbCompression.
Gets tables and indexes size and current compression settings.
This function gets the current size and compression for all objects in the specified database(s), if no database is specified it will return all objects in all user databases.
Get-DbaDbCompression
[-SqlInstance] <DbaInstanceParameter[]>
[[-SqlCredential] <PSCredential>]
[[-Database] <String[]>]
[[-ExcludeDatabase] <String[]>]
[[-Table] <String[]>]
[-EnableException]
[<CommonParameters>]
PS C:\> Get-DbaDbCompression -SqlInstance localhost
Returns objects size and current compression level for all user databases.
PS C:\> Get-DbaDbCompression -SqlInstance localhost -Database TestDatabase
Returns objects size and current compression level for objects within the TestDatabase database.
PS C:\> Get-DbaDbCompression -SqlInstance localhost -ExcludeDatabase TestDatabases
Returns objects size and current compression level for objects in all databases except the TestDatabase database.
PS C:\> Get-DbaDbCompression -SqlInstance localhost -ExcludeDatabase TestDatabases -Table table1, table2
Returns objects size and current compression level for table1 and table2 in all databases except the TestDatabase database.
The target SQL Server instance or instances. This can be a collection and receive pipeline input to allow the function to be executed against multiple SQL Server instances.
Alias | |
Required | True |
Pipeline | true (ByValue) |
Default Value |
Login to the target instance using alternative credentials. Accepts PowerShell credentials (Get-Credential).
Windows Authentication, SQL Server Authentication, Active Directory - Password, and Active Directory - Integrated are all supported.
For MFA support, please use Connect-DbaInstance.
Alias | |
Required | False |
Pipeline | false |
Default Value |
The database(s) to process - this list is auto populated from the server. If unspecified, all databases will be processed.
Alias | |
Required | False |
Pipeline | false |
Default Value |
The database(s) to exclude - this list is auto populated from the server.
Alias | |
Required | False |
Pipeline | false |
Default Value |
The table(s) to process. If unspecified, all tables will be processed.
Alias | |
Required | False |
Pipeline | false |
Default Value |
By default, when something goes wrong we try to catch it, interpret it and give you a friendly warning message.
This avoids overwhelming you with "sea of red" exceptions, but is inconvenient because it basically disables advanced scripting.
Using this switch turns this "nice by default" feature off and enables you to catch exceptions with your own try/catch.
Alias | |
Required | False |
Pipeline | false |
Default Value | False |