Compatbility between memoQ server and SQL Server (SQL Server compatibility levels)
Current memoQ server versions, as shipped by memoQ, 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:
- Start SQL Server Management Studio, and connect to the SQL Server instance that contains the memoQ server database.
- Expand the Databases node, and right-click the MemoQServer database. Click Properties.
- In the Database Properties window, open the Options page. In the Compatibility level drop-down, select the desired level (100).
This has not been fully tested at memoQ. On the other hand, some of memoQ'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.