Creating a ConfigurationFile.ini for SQL Standard or Enterprise is easy. The installer automatically creates one for you and gives you the path at the ‘Ready to Install’ step. For some reason this default functionality for Express was removed starting with SQL 2008 R2 and continues to SQL 2012. I haven’t messed with SQL 2014 Express, but one might assume it’s gone there as well.
Anyways, getting the installer to generate a ConfigurationFile.ini is pretty easy. Open a command prompt and add the following parameters to the .exe:
/ACTION=INSTALL /UIMODE=Normal
Note that /Action is a required parameter. Also, setting /UImode to Normal will present every dialog box that exists in the installer (even ones that do not apply to Express). Normal is the default value for non-express editions.
A few things to know for your ConfigurationFile.ini
- Add the following to the bottom of your file to agree to the license agreement: IACCEPTSQLSERVERLICENSETERMS=”True”
- If you want to run in Mixed mode and need to specify the SA password, add the following to bottom of the file: SAPWD=”ENTER_YOUR_PASSWORD”
- To perform an unattended or silent install modify QUIET=”False” to “True”
- For a silent install you will need to comment out or remove UIMODE=”Normal” in the file. This cannot be used in a silent install
Source: Installing SQL Server from the Command Prompt
Update 10/26/16: In the comments, Stephan states that his SQL 2014 install would not accept TRUE/FALSE for the IACCEPTSQLSERVERLICENSETERMS. Try using 1 instead of TRUE if you experience the same error. I recently created a config file for 2014 and was able to use TRUE. FYI in case you do though!
This works like a charm. I was looking everywhere for it. Thank you!
Glad this helped! Good Luck
Great post. Thank you for the help.
I already found the technet article but simply overread it.
One note on installing SQL 2014 Express. I get this error:
Exception type: Microsoft.SqlServer.Chainer.Infrastructure.InputSettingValidationException
Message:
The specified value for setting ‘IACCEPTSQLSERVERLICENSETERMS’ is invalid. The expected value type is Boolean.
So IACCEPTSQLSERVERLICENSETERMS=”True” must be IACCEPTSQLSERVERLICENSETERMS=1
Thanks for the information. I did not experience this when I create a file for SQL 2014 express, but maybe they introduced this in a newer release. Good to know in case we see this happen. I also updated the post above to include your findings.
Has anyone gotten IACCEPTSQLSERVERLICENSETERMS working in a SQL 2016 Express config file? I’ve tried everything mentioned here, and nothing seems to work.
I copy-pasted that configuration item from a guide, and it appears that the error is caused by the double-quotes surrounding “True”. Make sure to delete them and re-type them yourself within the configuration file, and you should be clear
That’s great information to have. Thank you.