If found the following error while starting my SQL Server 2012 instance, after the update KB3072779 performed by Windows Update (Windows Server 2012 Foundation).
Creating procedure sp_sqlagent_get_perf_counters...
2016-11-14 12:09:07.84 spid5s Error: 468, Severity: 16, State: 9.
2016-11-14 12:09:07.84 spid5s Cannot resolve the collation conflict between "Latin1_General_CS_AS" and "Latin1_General_CI_AS" in the equal to operation.
So now I'm unable to start the SQL Server instance. I managed to run it with -t902
and perform some queries.
I did check the following:
select serverproperty('collation')
which returned:
Latin1_General_CS_AS
also
select name, collation_name from sys.databases
which returned:
master Latin1_General_CI_AS
tempdb Latin1_General_CI_AS
model Latin1_General_CI_AS
msdb Latin1_General_CI_AS
From what I've read so far, system databases must have the same collation as the server. What I'm not aware of is what happened here and what should I do now.
Did this update change the server collation?
What can I do now to run my instance normally?
===========================
EDIT: I finally arrive to solve the problem by following the steps described in one of the links posted by @hot2use
https://www.mssqltips.com/sqlservertip/3519/changing-sql-server-collation-after-installation
Best Answer
I would go and look at the setup.log files for the Service Pack 3 Upgrade. They should be found here:
More information can be found here: View and Read SQL Server Setup Log Files (Microsoft)
This might provide you with information on what happened.
If you feel like rebuilding you SQL Server instance with the correct collation, then you could try the solution here:
How to change server level collation for a SQL Server Instance
There are slight variations of above post involving re-installing the system databases and or just modifying some objects:
It's not highly recommended and is best tested in a non-productive environment first. Currently there are no documented cases of the collation being changed during the setup of a service pack on SQL Server. If you don't find any information in the setup logs, then I would try and contact Microsoft and open a case/ticket.