Today I decided to install SCCM to see if it would help with the WDS work I have been doing.
After a quick download from the Microsoft website, I kicked off the installer, only to find a nice helpful error message:
Setup is unable to connect to SQL server with the connection information provided. Verify the following:
- The SQL Server and instance names are entered correctly
- The specified SQL Server instance is not configured to use dynamic ports
- If a firewall is enabled on the SQL Server, inbound rules exist to allow connections to the correct ports
- The account used to run Setup has permissions to connect to the specified SQL Server instance.
OK, so let’s check this out. I can ping the SQL server by name, so the connection details themselves are OK.
Other applications are connected to the instance, so the firewall rules are fine.
I’m logged in with my Domain Administrator account, which is also a database administrator, so no problems there.
So that just leaves dynamic ports. I initially skipped this as one of the applications we use doesn’t like dynamic ports, so we turn them off. But what do you know, one of them was still set to dynamic.
To fix this, just open up SQL Server Configuration Manager, and take a look through the ‘Client Protocols’ and ‘Protocols for INSTANCE’ sections. Inside each one will be a protocol called TCP/IP.
Open up the properties for it and switch to the IP Addresses tab. Under each IP, there is a setting for ‘TCP Dynamic Ports’.
If this is set to 0, dynamic ports are enabled. Once you find the offending setting under the right IP, change the dynamic port to 1433 and restart the SQL services, after which you will be able to finish setting up System Centre.
I didn’t want to mess with the setting on a production server, so I decided to set up a local SQL Server on my testing VM, which got the SQL connection working.
Well, sort of.