Yesterday I blogged briefly about a few of the changes you can see in SQL Server 2022 if you pry at the metadata a bit:
There were some additional changes I found interesting in setup, and one of them doesn't exactly qualify as "obscure" if I'm being honest.
Feature selection
You will notice some changes in the Feature Selection screen. Some of the options have been consolidated; for example, you now get R, Python, and Java with MLS, instead of picking. One item has been added: SQL Server Extension for Azure. Unfortunately, this option is checked by default in the CTP 2.0 version of setup.
Here's how it looked in CTP 2.0 (click to enlarge):
I'm not against installing the thing, generally, but there is a bigger problem as a result. You may not even have noticed that the option was pre-selected for you; depending on your screen size, it may be "below the fold." But you will eventually get to the following configuration screen, where – unless you have a bunch of Azure auth information handy – you will not pass GO
and you will not collect $200 (click to enlarge):
For search goodness (the first one is repeated for good measure):
Provided input is not valid. Expecting the AZURETENANTID value to be in guid format.
Even if you fill in all the fields with valid information (which Andy did), the dialog will still block you from proceeding, complaining about AZURESUBSCRIPTIONID
.
To undo this oversight, you will need to click Back a bunch of times and, forgive me for the first world complaint, it is not very fast. This is because each dialog has to completely repaint, including gathering existing instance information.
Hopefully that default changes in the next CTP; I left my comments on Joey D'Antoni's feedback item here.
Command line arguments
The list of command line arguments has grown, too.
ACTION | Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter. |
ADDCURRENTUSERASSQLADMIN | Provision current user as a Database Engine system administrator for SQL Server 2022 CTP2.0 Express. |
AGTDOMAINGROUP | Either domain user name or system account. |
AGTSVCACCOUNT | Either domain user name or system account. |
AGTSVCPASSWORD | Password for domain user name. Not required for system account. |
AGTSVCSTARTUPTYPE | Startup type for the SQL Server Agent service. Supported values are Manual, Automatic or Disabled. |
ALLINSTANCES | Specifies that all instances are to be included in the Setup operation. This parameter is supported only when applying a patch. |
ASBACKUPDIR | The location for the Analysis Services backup files. |
ASCOLLATION | The collation used by Analysis Services. |
ASCONFIGDIR | The location for the Analysis Services configuration files. |
ASDATADIR | The location for the Analysis Services data files. |
ASLOGDIR | The location for the Analysis Services log files. |
ASPROVIDERMSOLAP | Specifies if the MSOLAP provider can run in process. |
ASSERVERMODE | Specifies the server mode of the Analysis Services instance. Valid values are MULTIDIMENSIONAL and TABULAR. The default value is TABULAR. |
ASSVCACCOUNT | The account used by the Analysis Services service. |
ASSVCPASSWORD | The password for the Analysis Services service account. |
ASSVCSTARTUPTYPE | Controls the service startup type setting for the service. |
ASSYSADMINACCOUNTS | Specifies the list of administrator accounts to provision. |
ASTELSVCACCT | Account for SQL Server Analysis Services CEIP service: Domain\User or system account. |
ASTELSVCPASSWORD | A SQL Server Analysis Services CEIP service password is required only for a domain account. |
ASTELSVCSTARTUPTYPE | Startup type for the SQL Server Analysis Services CEIP service. |
ASTEMPDIR | The location for the Analysis Services temporary files. |
AZUREARCPROXYSERVER | Proxy name for Arc for servers(optional). |
AZUREREGION | Azure region to onboard current SQL servers. |
AZURERESOURCEGROUP | Resource group name to create Azure Arc enabled SQL Server resources. |
AZURESERVICEPRINCIPAL | Azure Service Principal application id to perform Arc enabled SQL Server onboard. |
AZURESERVICEPRINCIPALSECRET | Azure Service Principal secret to authenticate with Azure. |
AZURESUBSCRIPTIONID | Subscription Id to create Arc enabled SQL Server resources. |
AZURETENANTID | Tenant Id value for the current principal/subscription exist. |
BROWSERSVCSTARTUPTYPE | Startup type for Browser Service. |
CLUSTERPASSIVE | Specifies that SQL Server Setup should not manage the SQL Server services. This option should be used only in a non-Microsoft cluster environment. |
CONFIGURATIONFILE | Specifies the configuration file to be used for Setup. |
CONFIRMIPDEPENDENCYCHANGE | Indicates that the change in IP address resource dependency type for the SQL Server multi-subnet failover cluster is accepted. |
ENABLERANU | Set to "1" to enable RANU for SQL Server Express. |
ENU | Use the /ENU parameter to install the English version of SQL Server on your localized Windows operating system. |
EXTSVCACCOUNT | User account for Launchpad Service. |
EXTSVCPASSWORD | User password for Launchpad Service account. |
FAILOVERCLUSTERDISKS | Specifies a cluster shared disk to associate with the SQL Server failover cluster instance. |
FAILOVERCLUSTERGROUP | Specifies the name of the cluster group for the SQL Server failover cluster instance. |
FAILOVERCLUSTERIPADDRESSES | Specifies an encoded IP address. The encodings are semicolon-delimited (;), and follow the format <IP Type>;<address>;<network name>;<subnet mask>. Supported IP types include DHCP, IPV4, and IPV6. |
FAILOVERCLUSTERNETWORKNAME | Specifies the name of the SQ LServer failover cluster instance. This name is the network name that is used to connect to SQL Server services. |
FAILOVERCLUSTERROLLOWNERSHIP | Specifies whether the upgraded nodes should take ownership of the failover instance group or not. Use 0 to retain ownership in the legacy nodes, 1 to make the upgraded nodes take ownership, or 2 to let SQL Server Setup decide when to move ownership. |
FEATURES | Specifies features to install, uninstall, or upgrade. The list of top-level features include SQL, AS, IS, MDS, and Tools. The SQL feature will install the Database Engine, Replication, Full-Text, and Data Quality Services (DQS) server. The Tools feature will install shared components. |
FILESTREAMLEVEL | Level to enable FILESTREAM feature at (0, 1, 2 or 3). |
FILESTREAMSHARENAME | Name of Windows share to be created for FILESTREAM File I/O. |
FTSVCACCOUNT | User account for Full-text Filter Daemon Host. |
FTSVCPASSWORD | User password for Full-text Filter Daemon Host account. |
FTUPGRADEOPTION | Full-text catalog upgrade option. |
HELP | Displays the command line parameters usage. |
IACCEPTRSUNINSTALL | By specifying this parameter, you acknowledge that Reporting Services will be uninstalled and you've performed any necessary backup and/or migration. |
IACCEPTSQLSERVERLICENSETERMS | By specifying this parameter and accepting the SQL Server license terms, you acknowledge that you have read and understood the terms of use. |
IACKNOWLEDGEENTCALLIMITS | When entering an Enterprise Server/CAL license product key (as opposed to Enterprise Core) on computers with greater than 20 physical cores (40 logical cores with Hyper-threading enabled), this parameter is required to acknowledge that the SQL Engine will only utilize up to 20 physical cores, or 40 logical cores with Hyper-threading enabled. |
INDICATEPROGRESS | Specifies that the detailed Setup log should be piped to the console. |
INSTALLSHAREDDIR | Specify the root installation directory for shared components. This directory remains unchanged after shared components are already installed. |
INSTALLSHAREDWOWDIR | Specify the root installation directory for the WOW64 shared components. This directory remains unchanged after WOW64 shared components are already installed. |
INSTALLSQLDATADIR | The Database Engine root data directory. |
INSTANCEDIR | Specify the instance root directory. |
INSTANCEID | Specify the Instance ID for the SQL Server features you have specified. SQL Server directory structure, registry structure, and service names will incorporate the instance ID of the SQL Server instance. |
INSTANCENAME | Specify a default or named instance. MSSQLSERVER is the default instance for non-Express editions and SQLExpress for Express editions. This parameter is required when installing the SQL Server Database Engine (SQL), or Analysis Services (AS). |
ISMASTERSVCACCOUNT | Either domain user name or system account. |
ISMASTERSVCPASSWORD | Password for domain user. |
ISMASTERSVCPORT | Network port. |
ISMASTERSVCSSLCERTCN | CNs in a SSL certificate, e.g. CN=[MachineName]; CN=[IP]. |
ISMASTERSVCSTARTUPTYPE | Startup type for Integration Services Scale Out Master service. Automatic, Manual or Disabled. |
ISMASTERSVCTHUMBPRINT | Thumbprint of a SSL certificate. |
ISSVCACCOUNT | Either domain user name or system account. |
ISSVCPASSWORD | Password for domain user. |
ISSVCSTARTUPTYPE | Startup type for Integration Services. Automatic, Manual or Disabled. |
ISTELSVCACCT | Account for SQL Server Integration Services CEIP service: Domain\User or system account. |
ISTELSVCPASSWORD | A SQL Server Integration Services CEIP service password is required only for a domain account. |
ISTELSVCSTARTUPTYPE | Startup type for the SQL Server Integration Services CEIP service. |
ISWORKERSVCACCOUNT | Either domain user name or system account. |
ISWORKERSVCCERT | Path of a certificate file. |
ISWORKERSVCMASTER | Master machine name/ip and port, https://[Name]:[Port] or https://[IP]:[Port]. |
ISWORKERSVCPASSWORD | Password for domain user. |
ISWORKERSVCSTARTUPTYPE | Startup type for Integration Services Scale Out Worker service. Automatic, Manual or Disabled. |
NPENABLED | Specify 0 to disable or 1 to enable the Named Pipes protocol. |
PBDMSSVCACCOUNT | Account for SQL Server PolyBase Data Movement Service: Domain\User or system account. |
PBDMSSVCPASSWORD | A SQL Server PolyBase Data Movement Service password is required only for a domain account. |
PBDMSSVCSTARTUPTYPE | Startup type for the SQL Server PolyBase Data Movement Service. |
PBENGSVCACCOUNT | Account for SQL Server PolyBase Engine: Domain\User or system account. |
PBENGSVCPASSWORD | A SQL Server PolyBase Engine service password is required only for a domain account. |
PBENGSVCSTARTUPTYPE | Startup type for the SQL Server PolyBase Engine. |
PBPORTRANGE | Port range for PolyBase Services (inclusive). |
PID | Specify the SQL Server product key to configure which edition you would like to use. |
QUIET | Setup will not display any user interface. |
QUIETSIMPLE | Setup will display progress only, without any user interaction. |
ROLE | Setup roles install SQL Server in a predetermined configuration. |
RULES | Specifies the list of rule IDs or rule group IDs to run. |
SAPWD | Password for SQL Server sa account. |
SECURITYMODE | The default is Windows Authentication. Use "SQL" for Mixed Mode Authentication. |
SQLBACKUPDIR | Default directory for the Database Engine backup files. |
SQLCOLLATION | Specifies a Windows collation or an SQL collation to use for the Database Engine. |
SQLMAXDOP | The max degree of parallelism (MAXDOP) server configuration option. |
SQLMAXMEMORY | Use SQLMAXMEMORY to minimize the risk of the OS experiencing detrimental memory pressure. |
SQLMINMEMORY | Use SQLMINMEMORY to reserve a minimum amount of memory available to the SQL Server Memory Manager. |
SQLSVCACCOUNT | Account for SQL Server service: Domain\User or system account. |
SQLSVCINSTANTFILEINIT | Set to "True" to enable instant file initialization for SQL Server service. |
SQLSVCPASSWORD | A SQL Server service password is required only for a domain account. |
SQLSVCSTARTUPTYPE | Startup type for the SQL Server service. |
SQLSYSADMINACCOUNTS | Windows account(s) to provision as SQL Server system administrators. |
SQLTELSVCACCT | Account for SQL Server CEIP service: Domain\User or system account. |
SQLTELSVCPASSWORD | A SQL Server CEIP Engine service password is required only for a domain account. |
SQLTELSVCSTARTUPTYPE | Startup type for the SQL Server CEIP service. |
SQLTEMPDBDIR | Directories for Database Engine TempDB files. |
SQLTEMPDBFILECOUNT | The number of Database Engine TempDB files. |
SQLTEMPDBFILEGROWTH | Specifies the automatic growth increment of each Database Engine TempDB data file in MB. |
SQLTEMPDBFILESIZE | Specifies the initial size of a Database Engine TempDB data file in MB. |
SQLTEMPDBLOGDIR | Directory for the Database Engine TempDB log files. |
SQLTEMPDBLOGFILEGROWTH | Specifies the automatic growth increment of the Database Engine TempDB log file in MB. |
SQLTEMPDBLOGFILESIZE | Specifies the initial size of the Database Engine TempDB log file in MB. |
SQLUSERDBDIR | Default directory for the Database Engine user databases. |
SQLUSERDBLOGDIR | Default directory for the Database Engine user database logs. |
SUPPRESSPAIDEDITIONNOTICE | Specifies that SQL Server Setup should not display the paid edition notice when ran from the command line. |
SUPPRESSPRIVACYSTATEMENTNOTI | Specifies that SQL Server Setup should not display the privacy statement when ran from the command line. |
TCPENABLED | Specify 0 to disable or 1 to enable the TCP/IP protocol. |
UIMODE | Parameter that controls the user interface behavior. Valid values are Normal for the full UI,AutoAdvance for a simplied UI, and EnableUIOnServerCore for bypassing Server Core setup GUI block. |
UpdateEnabled | Specify whether SQL Server Setup should discover and include product updates. The valid values are True and False or 1 and 0. By default SQL Server Setup will include updates that are found. |
UpdateSource | Specify the location where SQL Server Setup will obtain product updates. The valid values are "MU" to search Microsoft Update, a valid folder path, a relative path such as .\MyUpdates or a UNC share. By default SQL Server Setup will search Microsoft Update or a Windows Update service through the Window Server Update Services. |
USEMICROSOFTUPDATE | If this parameter is provided, then this computer will use Microsoft Update to check for updates. |
USESQLRECOMMENDEDMEMORYLIMIT | Use USESQLRECOMMENDEDMEMORYLIMITS to minimize the risk of the OS experiencing detrimental memory pressure. |
That's a lot