compatbility between memoQ server and SQL Server (SQL Server compatibility levels)
Posted by Péter Botta on 20 April 2015 09:40 AM
Current memoQ server versions, as shipped by Kilgray, do not support all SQL Server versions. Currently, a notable unsupported version of SQL Server is version 2014.
Databases created in SQL Server have a setting called "compatibility level". According to Microsoft, the compatibility level "sets certain database behaviors to be compatible with the specified version of SQL Server."
The memoQ server installers (all currently supported versions) set the compatibility level to 90, which corresponds to SQL Server 2005. This means that memoQ server (technically) supports SQL Server 2005, and all newer SQL Server versions that also support compatibility level 90.
SQL Server 2014, on the other hand, dropped support for compatibility level 90, it requires a compatibility level of at least 100. In general, compatibility levels provided by different versions of SQL Server are as follows:
A "compatibility level" of 90 works with SQL Server 2005 to 2012.
A "compatibility level" of 100 works with SQL Server 2008 to 2014.
A "compatibility level" of 110 works with SQL Server 2012 to 2014.
A "compatibility level" of 120 works with SQL Server 2014 only.
For this reason, an unmodified memoQ server installation (compatibility level of 90) does not work with SQL Server 2014. Similarly, a compatibility level of 120 does not work with SQL Server 2012, etc.
Solution or workaround
A workaround to the problem is to manually raise the memoQ server database compatibility level to 100. To do this:
This has not been fully tested at Kilgray. On the other hand, some of Kilgray's internal use memoQ servers have their databases set to a compatibility level of 120 (SQL Server 2014), and some of the official functional testing in the last 2 years has been executed with a compatibility level of 100. Some large customers use a level of 100 in production with memoQ server. We consider a change to 100 generally safe. Also note that raising the compatibility level may increase SQL Server performance, allowing SQL Server to benefit from the enhancements introduced in newer versions.