SharePoint 2016 New-SPConfigurationDatabase: The Missing Documentation

Ben Steginkpowershell, SharePoint 20161 Comment

Confused

If you’ve tried to configure SharePoint 2016 with PowerShell, you need to use the New-SPConfigurationDatabase cmdlet. If you look at the PowerShell cmdlet index here https://technet.microsoft.com/en-us/library/ff678226.aspx You’ll find the cmdlet listed there, but it isn’t indicated as being to new to SharePoint 2016. Technically, this is correct as this same cmdlet was used to configure SharePoint 2013. If you click on the cmdlet to view the details, it takes you to the SharePoint 2013 documentation. Likewise, if you run get-help New-SPConfigurationDatabase in PowerShell, you’ll also get the SharePoint 2013 documentation.

This would be all well and good if the cmdlet was the same, however, there are some important changes to this cmdlet, in the way of added parameters. So, what’s missing from the documentation…

Missing Parameters

-ServerRoleOptional [Required]*: This eliminates the requirement of including the -LocalServerRole parameter.

-LocalServerRole [Required]*: This is the parameter is required if you don’t set the -ServerRoleOption Switch. Using the options below you can use this parameter to set the minrole for server.

Option Description
Application Application Server, this is what you want to use if your are running service applications other than search.
ApplicationWithSearch Requires Feature Pack 1** – Application Server with Search Services
Custom You can specify your own services to run on the server, there aren’t any predefined
DistributedCache Server used for hosting the distributed cache service
Invalid No Idea yet on this one, not really sure how you configure a farm with and Invalid server role, but if I figure it out or someone lets me know in the comments, I’ll update this post
Search Server will be used to host various search services
SingleServer If you want to run SharePoint 2016 as a single server
WebFrontEnd Pretty self explanatory, this is when you are using the server as a web front end
WebFrontEndWithDistributedCache Requires Feature Pack 1** – This will be the the WebFrontEnd Role and the DistributedCahce role combined into a single role

Both ApplicationWithSearch and WebFrontEndWithDistributedCache are if you want to have the recently announced smaller SharePoint farms with support for no downtime patching.

*Only one of these is required. -ServerRoleOptional eliminates the need to specify -LocalServerRole and if you specify -LocalServerRole, there is no need (or requirement) to include -ServerRoleOptional.

**The options that require Feature Pack 1 will show up already in the October 2016 CU, however, you’ll receive an error if you try to use one of these options.

-DatabaseFailOverServer [Optional]: If you’re using database mirroring to archive high availability (HA), you can use this to set the failover server for your configuration and admin content databases. If you are using other forms of HA, i.e. AlwaysOn or Clustering, this parameter isn’t used.

  • It seems that using the ServerRoleOptional field with the new-spcontentdatabase cmdlet will cause the config database to be provisioned in “Active Directory Account Creation Mode”. If you’re building a single server farm you will not be able to create site collections after using this flag. Use the “LocalServerRole” flag instead with SingleServerFarm