SQL Server Compatibility Level Nedir(Upgrade Sonrası Compatibility Level)

19 Eki by NURULLAH ÇAKIR

SQL Server Compatibility Level Nedir(Upgrade Sonrası Compatibility Level)

SQL Server Compatibility Level, veritabanının SQL Server’ın hangi sürümüyle uyumlu olduğunu gösterir. Özellikle upgrade işlemlerinde daha az sorunla karşılaşılması için Microsoft’un sağladığı bir özelliktir. Küçük versiyonlu bir veritabanının backup’ını alıp daha büyük versiyonlu bir SQL Server’a restore ettiğinizde Compatibility Level eski sürümde kalır.(SQL Server 2005’ten SQL Server 2014’e restore ederseniz SQL Server 2012’nin desteklediği minimum compatibility level SQL Server 2008 olduğu için SQL Server otomatik olarak compatibility level’i SQL Server 2008 ile uyumlu olacak şekilde yükseltecektir.) Böylece veritabanı upgrade’i sonrası çıkabilecek sorunları minimum’a indirgemiş olursunuz. Ama veritabanı upgrade sonrası veritabanı içindeki sp, function gibi objelerin ve uygulamanın yeni sürümde sağlıklı bir şekilde çalıştığından emin olduktan sonra Compatibility Level’i mevcut sürüm ile aynı level’a çekmenizi öneririm.

 

Aşağıdaki linkteki msdn’den aldığım tabloda hangi SQL Server sürümünün hangi Compatilibility Level’de çalıştığını ve support edilen Compatibility Level’leri görebilirsiniz.

 

https://msdn.microsoft.com/en-us/library/bb510680.aspx

 

SQL Server Sürümü

Compatibility Level

Supported Compatibility Level

SQL Server 2016

130

130, 120, 110, 100

SQL Database

120

130, 120, 110, 100

SQL Server 2014

120

120, 110, 100

SQL Server 2012

110

110, 100, 90

SQL Server 2008 R2

105

100, 90, 80

SQL Server 2008

100

100, 90, 80

SQL Server 2005

90

90, 80

SQL Server 2000

80

80

 

Compatibility Level’i nasıl değiştiririz?

 

Veritabanı üzerinde sağ tıklayarak Properties diyoruz. Options kısmında Compatibility Level’i aşağıdaki gibi değiştirip ok’e tıklıyoruz.

Eğer veritabanını support edilmeyen bir compatibility level’e set etmek isterseniz aşağıdaki gibi “Valid values of the database compatibility level are..” gibi bir hata alırsınız.

Aşağıdaki linkte Compatibility Level’ler arasındaki farkları detaylı olarak görebilirsiniz.

 

 

https://msdn.microsoft.com/en-us/library/bb510680.aspx

Loading

6 Comments

  1. Hocam merhaba, sql server 2014 kurdum. Ancak net db. diagram açınca; “Database diagram support objects cannot be installed because this database does not have a valid owner” hatası veriyor. İzlediğim videolarda Compatibility Level uyumluluğuna değindiler ancak. Benim sql de Compatibility Level’ın yanındaki kutucuk boş gözüküyor. Yardım edebilir misiniz?

    1. Merhaba,

      Veritabanınızın bir owner’ı olmadığı için bu hatayı alırsınız.

      Aşağıdaki script yardımıyla veritabanınıza bir owner vermelisiniz.

      ALTER AUTHORIZATION ON DATABASE::sizinveritabanıisminiz TO [sa];

      1. aynı hatayı bende alıyorum bu konuda çok yeniyim biraz daha açık yazabilirmisiniz owner vermek ne demek bu komutu nerde çalıştıracağım

        1. yani SQL Server 2016 kurduğunuz halde SQL Server 2014’e bağlandığınız için ilgili compatibility level’i göremiyorsunuz muhtemelen.

          Öncelikle bağlandığınız instance’ın doğru instance olduğundan bir önceki yorum da bahsettiğim adımları gerçekleştirerek emin olmalısınız.

  2. Merhaba hoca. Yazının üzerinden uzun zaman geçmiş ama yinede sormak istedim. Level yükseltmek istiyorum. Fakat Compatibility Level alanında MSSQL 2016 kurulu olduğu halde listeye 2016 gelmiyor. Sizce sorun ne olabilir ? (PC de aynı zamanda 2014 kurulu ve 2014 ün kurulumunu 2016 dan önce yapmıştım.)

    1. Merhaba,

      Muhtemelen bağlandığınız instance SQL Server 2014. SSMS üzerinden new query diyerek açılan ekrana SELECT @@VERSION yazıp çalıştırdığınızda versiyonu görebilirsiniz.

      Aynı sunucuda port ayarlarını yaparak farklı instance’lara bağlanabilirsiniz. aşağıdaki makalede port ayarlarının nasıl yapılacağını bulabilirsiniz. Intance’a bağlanırken’de IP,port şeklinde bağlanmanızı tavsiye ederim. örneğin 172.16.233.12,1433

      http://www.veritabani.gen.tr/2016/12/08/sql-server-configuration-manager-ayarlari/

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir