SQL Server изменяет уровень совместимости со 100 на 120 - PullRequest
0 голосов
/ 18 января 2019

Изменить совместимость со 100 на 120

мы перенесли несколько баз данных с SQL Server 2008 на SQL server2014 Standard Edition, но уровень совместимости не изменился, и некоторая дополнительная информация о том, что эти базы данных настроены с зеркалированием, повлияет ли на приложение, если я изменю уровень совместимости со 100 на 120? Я читал, что при изменении уровня совместимости не возникает никаких проблем с производительностью, кроме повышения производительности, мы можем получить новую функцию, которая есть в SQL Server 2014, и, пожалуйста, исправьте меня, если я ошибаюсь, наконец, у меня возникли вопросы о влиянии на зеркалирование или приложение Функциональность

1 Ответ

0 голосов
/ 18 января 2019

Я читал, что при изменении уровня совместимости не имеет никакого проблемы с производительностью, кроме улучшения

Где ты это прочитал? Конечно, может быть снижение производительности, так как в 2014 введен новый cardinality estimator. Таким образом, некоторые из ваших query plans могут измениться с оптимального на субоптимальный. Вот почему compatibility level 100 все еще поддерживается, устанавливая его, вы говорите своему серверу использовать old cardinality estimator для всех ваших запросов к базе данных.

В случае, если только несколько запросов стали медленнее, вы можете оставить compatibility level 120 и использовать 9481 query trace flag для этих запросов, как описано здесь: Включить поведение оптимизатора запросов SQL Server, влияющее на план, которое может быть управляется различными флагами трассировки на уровне конкретного запроса

...