Many of my customers run production environments which have never, and will never, be able to connect directly to the internet. They still have the desire to install Books Online (BOL) into those environments though, which leads up to this blog post - how do we do that?
SQL 2012 & SQL 2014
For SQL Server 2012 and SQL Server 2014, the BOL content can be downloaded directly from:
SQL 2012 BOL here: http://www.microsoft.com/en-us/download/details.aspx?id=347
SQL 2014 BOL here: https://www.microsoft.com/en-us/download/details.aspx?id=42557
These downloads will give you a .EXE file which can then be extracted. Once extracted, you will see a "Product Documentation" folder (so for example, the SQL 2012 folder is called "SQLServer2012Documentation_December2012_EN") containing a top level installation file called "HelpContentSetup.msha". Then, go into SSMS, into the Help Viewer, go into "Add and Remove Content", then change the "Installation Source" to Disk, and navigate to the appropriate folder and specifically the file "HelpContentSetup.msha". You will then see the following:
The Product Documentation can then be installed in the usual manner... Just click "Add" and "Update".
SQL 2016 & SQL 2017
For SQL Server 2016 and SQL Server 2017, the BOL content cannot currently be downloaded directly in a self extracting ZIP from the internet. I am investigating if there are plans to release in a similar format to the SQL 2012 and SQL 2014 content, and will update the blog accordingly.
So... for SQL 2016 & SQL 2017, how do we get the BOL content onto a production machine without internet connectivity?
It is admittedly a little more involved, but we need a non-production machine which can connect to the internet and download the BOL content to the non-production machine first. Then we copy the BOL folder structure from the non-production machine to the production machine - Et. Voila.
So... step by step:
- On the non-production machine, launch SSMS (I used 17.6 in my test - the only caution I would offer is to ensure the version of the Help Viewer are the same). Go into the "Add and Remove Content" tab, and select the Installation Source as "Online" (See "1").
- Select the BOL content you would like to have (personally, I'd select everything here!) by "Add"ing, and then clicking "Update" (See "2") in the bottom right corner.
- The BOL content will then download into the location specified in the "Local Store Path" (See "3"), for me this is "C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Extensions\Application"
Now we need to copy the content from this location over to the Production machine, and install it in the same location for the Production Machine's Help Viewer to be able to see it. To do this:
- If we look in the "Local Store Path", we should be able to see:
- These three folders are the ones we need to copy over to the Production Machine, and install into the exact same folder structure.
- Once copied, launching the Help Viewer should immediately show BOL as being available.
If the installed BOL content shows unrendered HTML tags rather than the expected nicely formatted HTML documentation, it is likely that we need to turn off the IE Enhanced Security in Server Manager.