Recently I ran into an odd scenario. Net new SQL servers were built in Dev, QA and Prod. I had to create Linked Servers to SSAS. All of these were on SQL 2012 enterprise Sp2 + Kb2969896. All was great till I was unable to create linked server for SSAS provider MSOLAP.

The 32-bit OLE DB provider “MSOLAP” cannot be loaded in-process on a 64-bit SQL Server. (SQL Server, Error: 7438)MSOLAP Error

I had forgotten the fact that SQL server works in mysterious ways when it wants to!

The error was self explanatory. SQL was trying to use 32-bit drivers instead of 64-bit. Please note that this is a 3 phase job:

  1. Unregister DLLs
  2. Register DLLs in the correct order
  3. Restart SQL Services

Locate the file location for msolap110.dll and then run the following on the command prompt:

Unregister DLLs

Register DLLs in the correct order

Once the services were up, I tested the linked server and it was successful. If you are doing in on a cluster ensure you start with the passive node(s).

~ Adios


Like us on FaceBook | Join the fastest growing SQL Server group on FaceBook |

Follow me on Twitter