< Back
Invoke-DbaAdvancedInstall
Post
NAME Invoke-DbaAdvancedInstall
SYNOPSIS
Designed for internal use, implements parallel execution for Install-DbaInstance.
SYNTAX
Invoke-DbaAdvancedInstall [[-ComputerName] <String>] [[-InstanceName] <String>] [[-Port]
<System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]>]
[[-InstallationPath] <String>] [[-ConfigurationPath] <String>] [[-ArgumentList] <System.String[]>] [[-Version]
<Version>] [[-Configuration] <Hashtable>] [[-Restart] <Bool>] [[-PerformVolumeMaintenanceTasks] <Bool>]
[[-SaveConfiguration] <String>] [[-Authentication] <String>] [[-Credential] <Pscredential>] [[-SaCredential]
<Pscredential>] [-EnableException <Switch>] [<CommonParameters>]
DESCRIPTION
Invokes an install process for a single computer and restarts it if needed
PARAMETERS
-ArgumentList [<System.String[]>]
Array of command line arguments for setup.exe
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Authentication [<String>]
Chooses an authentication protocol for remote connections.
If the protocol fails to establish a connection
Defaults:
* CredSSP when -Credential is specified - due to the fact that repository Path is usually a network share and
credentials need to be passed to the remote host
to avoid the double-hop issue.
* Default when -Credential is not specified. Will likely fail if a network path is specified.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-ComputerName [<String>]
Target computer with SQL instance or instances.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Configuration [<Hashtable>]
A hashtable with custom configuration items that you want to use during the installation.
Overrides all other parameters.
For example, to define a custom server collation you can use the following parameter:
PS> Install-DbaInstance -Version 2017 -Configuration @{ SQLCOLLATION = 'Latin1_General_BIN' }
Full list of parameters can be found here: https://docs.microsoft.com/en-us/sql/da ... ll-windows
/install-sql-server-from-the-command-prompt#Install
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-ConfigurationPath [<String>]
Path to Configuration.ini on a local machine
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Credential [<Pscredential>]
Windows Credential with permission to log on to the remote server.
Must be specified for any remote connection if installation media is located on a network folder.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-EnableException [<Switch>]
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.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-InstallationPath [<String>]
Path to setup.exe
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-InstanceName [<String>]
Instance name to be used for the installation
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-PerformVolumeMaintenanceTasks [<Bool>]
Allow SQL Server service account to perform Volume Maintenance tasks.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Port [<System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089]]>]
After successful installation, changes SQL Server TCP port to this value. Overrides the port specified in
-SqlInstance.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Restart [<Bool>]
Restart computer automatically after a successful installation of Sql Server and wait until it comes back
online.
Using this parameter is the only way to chain-install more than 1 instance, since every single patch will
require a restart of said computer.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-SaCredential [<Pscredential>]
Securely provide the password for the sa account when using mixed mode authentication.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-SaveConfiguration [<String>]
Save installation configuration file in a custom location. Will not be preserved otherwise.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Version [<Version>]
Canonic version of SQL Server, e.g. 10.50, 11.0
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
OUTPUTS
-------------------------- EXAMPLE 1 --------------------------
PS C:\\>Invoke-DbaAdvancedUpdate -ComputerName SQL1 -Action $actions
Invokes update actions on SQL1 after restarting it.
RELATED LINKS
SYNOPSIS
Designed for internal use, implements parallel execution for Install-DbaInstance.
SYNTAX
Invoke-DbaAdvancedInstall [[-ComputerName] <String>] [[-InstanceName] <String>] [[-Port]
<System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]>]
[[-InstallationPath] <String>] [[-ConfigurationPath] <String>] [[-ArgumentList] <System.String[]>] [[-Version]
<Version>] [[-Configuration] <Hashtable>] [[-Restart] <Bool>] [[-PerformVolumeMaintenanceTasks] <Bool>]
[[-SaveConfiguration] <String>] [[-Authentication] <String>] [[-Credential] <Pscredential>] [[-SaCredential]
<Pscredential>] [-EnableException <Switch>] [<CommonParameters>]
DESCRIPTION
Invokes an install process for a single computer and restarts it if needed
PARAMETERS
-ArgumentList [<System.String[]>]
Array of command line arguments for setup.exe
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Authentication [<String>]
Chooses an authentication protocol for remote connections.
If the protocol fails to establish a connection
Defaults:
* CredSSP when -Credential is specified - due to the fact that repository Path is usually a network share and
credentials need to be passed to the remote host
to avoid the double-hop issue.
* Default when -Credential is not specified. Will likely fail if a network path is specified.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-ComputerName [<String>]
Target computer with SQL instance or instances.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Configuration [<Hashtable>]
A hashtable with custom configuration items that you want to use during the installation.
Overrides all other parameters.
For example, to define a custom server collation you can use the following parameter:
PS> Install-DbaInstance -Version 2017 -Configuration @{ SQLCOLLATION = 'Latin1_General_BIN' }
Full list of parameters can be found here: https://docs.microsoft.com/en-us/sql/da ... ll-windows
/install-sql-server-from-the-command-prompt#Install
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-ConfigurationPath [<String>]
Path to Configuration.ini on a local machine
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Credential [<Pscredential>]
Windows Credential with permission to log on to the remote server.
Must be specified for any remote connection if installation media is located on a network folder.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-EnableException [<Switch>]
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.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-InstallationPath [<String>]
Path to setup.exe
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-InstanceName [<String>]
Instance name to be used for the installation
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-PerformVolumeMaintenanceTasks [<Bool>]
Allow SQL Server service account to perform Volume Maintenance tasks.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Port [<System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089]]>]
After successful installation, changes SQL Server TCP port to this value. Overrides the port specified in
-SqlInstance.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Restart [<Bool>]
Restart computer automatically after a successful installation of Sql Server and wait until it comes back
online.
Using this parameter is the only way to chain-install more than 1 instance, since every single patch will
require a restart of said computer.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-SaCredential [<Pscredential>]
Securely provide the password for the sa account when using mixed mode authentication.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-SaveConfiguration [<String>]
Save installation configuration file in a custom location. Will not be preserved otherwise.
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
-Version [<Version>]
Canonic version of SQL Server, e.g. 10.50, 11.0
Required? false
Position? named
Default value
Accept pipeline input? False
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
OUTPUTS
-------------------------- EXAMPLE 1 --------------------------
PS C:\\>Invoke-DbaAdvancedUpdate -ComputerName SQL1 -Action $actions
Invokes update actions on SQL1 after restarting it.
RELATED LINKS