MSSQL Server Servisinin Change Pending Durumu

Bu makalede MSSQL Servis hesabının Change Pending durumunda neden kaldığını böyle durumlarda neler yapılması gerektiğini ele almış olacağız.

Sql Server Configuration Manager ekranına girdiğimizde sql server servisimizin change pending durumunda kaldığını görürüz.

Sql server servis hesabımız change pending durumunda olsa bile sql server yapımıza bağlanıp sorgularımızı çalıştırabiliriz. Change Pending yapısından kurtulmak için SSMS arayüzün de yeni bir query açıp aşağıdaki komutun çalıştırılması gerekmektedir. Bu yapı sayesinde sql server servisimiz stop edecek ve tekrar start ettiğimizde change pending durumundan kurtulmuş olacaktır.

SHUTDOWN WITH NOWAIT

Sql server servisi herhangi bir sebepten dolayı kapanır ve servis kapandıktan sonra sql server checkpoint işlemini yapamaz. Servis tekrar açılmak istendiğinde tamamlanmayan işlemler kendini rollback yapmaya çalışır. Buda sql server’ın acid kurallarından olan consistency yapısıyla bağdaştırılır. Buda Change Pending yapısının oluşmasına sebep olur.

Sql servisi kapanırken hangi işlemlerin checkpoint yaptığını söyleyelim. Sql server kapanacağı zaman öncelikle yeni bir transaction almasın diye tüm kullanıcıları disable moduna çeker. Sysadmin ve serveradmin bu loginlerin dışındadır. Daha sonra sp_lock ve sp_who komutlarını çalıştırarak  stored procedure ve tsql komutlarının  bitmesini bekler. Bu işlemler sonucunda tüm veritabanlarını checkpoint eder ve servis durdurulur. Bu durdurma sırasında sunucu kapanırsa change pending olur. Bunun içinde yukarıdaki komutun kullanılması gerekmektedir.

Servisimiz yukarıdaki shutdown komutuyla  stop ettikten sonra tekrar start ettiğimizde Change Pending modun dan servisimiz çıkmış olacaktır.

Bu makalede mssql server Change Pending yapısını görmüş olduk.

Başka bir makalede görüşmek dileğiyle..

Onlar – ” Yalnızca Allah’a Dayanıp Güvenirler. ” Mücadele – 10 

Author: Yunus YÜCEL

Bir yanıt yazın

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