3

I am trying to make transactional replication and getting the exception on publications while viewing the snapshot agent status:

The locale identifier (LCID) 8192 is not supported by SQL Server

What does it mean? Solution?

jarlh
  • 42,561
  • 8
  • 45
  • 63
Nauman
  • 218
  • 1
  • 3
  • 11
  • Does this answer your question? [SSIS Error while deploying package The locale identifier (LCID) is not supported by SQL Server](https://stackoverflow.com/questions/21135511/ssis-error-while-deploying-package-the-locale-identifier-lcid-is-not-supported) – Ruben Hensen Mar 22 '20 at 18:44

2 Answers2

5

This might not be 100% accurate but it is how I understand it: SQL Server runs as a service on Windows. This service is executed by a user, and every user has a specific locale and local identifier. SQL basically just wants an en_US locale because otherwise it messes something up.

To solve this we can first change the user that runs the service and see if that fixes it (it did for me). Go to Windows Services, right click SQL Server (MSSQLSERVER) > properties > Log On > Tick the 'Local System account' radiobutton. Restart the service by right clicking SQL Server (MSSQLSERVER) again and clicking restart.

If it works, great! If it doesn't, change the locale of the Locale System account to en_US and the id to 00000409. Go to RegEdit -> HKEY_USERS -> [SID Local Admin] -> Control Panel -> International and change keys "Locale" and "LocaleName" for the desired region. As answered on a different question here

Ruben Hensen
  • 796
  • 1
  • 9
  • 24
2

I solved it in the following way.

First, check in Services which user SQL Server (MSSQLSERVER) runs as:

enter image description here

Next, open the Registry Editor and navigate to Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\. Find which ID the user has. In my case, the user MSSQLSERVER has the ID S-1-5-80-3880718306-3832830129-1677859214-2598158968-1052248003:

enter image description here

When you have the user's ID, in the Registry Editor, go to the path Computer\HKEY_USERS\[USER ID]\Control Panel\International. In my case, the path is Computer\HKEY_USERS\S-1-5-80-3880718306-3832830129-1677859214-2598158968-1052248003\Control Panel\International. There you will find two keys named Locale and LocaleName:

enter image description here

In my case, they had the following values:

  • Locale = 00000c00
  • LocaleName = en-SE

Change them to:

  • Locale = 00000409
  • LocaleName = en-US

enter image description here

Next, restart the service SQL Server (MSSQLSERVER).

In my case, I wanted to deploy an SSIS package to SQL Server, and it worked after I had done this change:

enter image description here

Daniel Jonsson
  • 3,261
  • 5
  • 45
  • 66