Skype for Business in-place upgrade and SQL Express 2012

If you’re a small business using Lync 2013 standard edition, you might want to in-place upgrade your current Lync server to the new Skype for Business Server.
If you followed the prerequisites I previously listed here, or better yet, Greig Sheridan’s comprehensive article on how to upgrade, you should have the basics ready by now.

Lync 2013 is originally installed with SQL Express 2012, However, if you’re falling behind on SQL updates, you might not be able to complete start the installation as Skype for Business Server 2015 requires at least SQL Express 2012 SP1:

SQL2012SP1 missingUpgrading SQL Express 2012 to SP1 or SP2 is an easy task, but might be a little time consuming if you do it manually: You’ll need to update each database individually, meaning running the process 3 times (for RTC, RTCLOCAL, LYNCLOCAL).

update DB1
A faster way is to run it via command prompt or PowerShell:

First, download SQL Express 2012 SP2 (I know they only ask for SP1, but walk that extra mile, will ya?).
Choose to download the SQLEXPR_x64_ENU.exe file, this is all you need.
Place the file in a local folder on the server and run the following command:

SQLEXPR_x64_ENU.exe /action=Patch /allinstances /quiet /IAcceptSQLServerLicenseTerms

Command

The above will do the following for you:

  • Run the update process (/action=Patch)
  • Update all instances on the server (/allinstances)
  • Hide the GUI part where you need to use the mouse at least 5 times (/quiet)
  • Accept the T&Cs on your behalf (/IAcceptSQLServerLicenseTerms)

You’ll have no visibility of the update process (unless you choose to omit the /quiet switch) so go grab some coffee, this might take up to 20 minutes.
Look for event 17069 in the Application Log. you’re expecting to see “Microsoft SQL Server 2012 – 11.0.5058.0 (X64)” on the first line of the event – this means your upgrade process is complete:

SQLVersion

There should be an event per updated database.

Once completed, a restart of the server is recommended. Additionally, you’ll have to update the Lync databases with the following command:

Install-CsDatabase -ConfiguredDatabases -SqlServerFqdn <FEServer.domain> -Verbose

This will update the databases and will show you the following output in the log:

****Creating DbSetupInstance for ‘Microsoft.Rtc.Common.Data.LisDatabase’****
Trying to connect to Sql Server FE02.y0av.local\rtc. using windows authentication…
Sql version: Major: 11, Minor: 0, Build 5058.
Sql version is acceptable.

You can now run the Skype for Business Server 2015 installation on this server.

 

 

Lync 2013 Monitoring Server errors…

When you’re trying to view different reports in Lync Server 2013 monitoring, you might get the following error:

WebPage Error

“Report processing stopped because too many rows in summary tables are missing in the call detail recording (CDR) database. To resolve this issue, run dbo.RtcGenerateSummaryTables on the LcsCDR database.”

Additional parameters might appear instead of “dbo.RtcGenerateSummaryTables”, depending on the report you wish to view.

To fix this problem, start SQL Management Studio on your SQL server and choose the Lync Monitoring instance:

SQL Connection

Once connected, expand “Databases”->”LcsCDR”->”Programmability”:

Programmability

In “Programmability”, expand “Stored Procedures”:

Stored Procedures

And scroll down until you find the procedure mentioned in the error:

Generate Summary

Right-click the procedure and choose “Execute Stored Procedure”:

Execute

A new “Execute Procedure” window will open, Press “OK”:

Execute Screen

A script will run and will (hopefully) return a ‘0’ value, meaning everything went ok:

Script ran

That’s it! Return to your reports webpage and refresh:

Reports OK

Good Luck!