Aracılığıyla paylaş


MSSQLSERVER_912

Şunlar için geçerlidir: Windows'da SQL Server 2019 (15.x) ve sonraki sürümleri

Ayrıntılar

Özellik Değer
Ürün Adı SQL Server
Olay Kimliği 912
Olay Kaynağı MSSQLSERVER
Bileşen SQLEngine
Sembolik Ad DB_RUNSCRIPTUPGRADE_STEP_FAILED
İleti Metni '%.*ls' veritabanı için betik düzeyi yükseltmesi, '%.*ls' yükseltme adımında %dhatası, durum %dve önem derecesi %dile karşılaşıldığı için başarısız oldu. Bu, normal işlemi engelleyebilecek ciddi bir hata koşuludur ve veritabanı çevrimdışı duruma getirilir. Hata 'ana' veritabanının yükseltilmesi sırasında oluşursa, tüm SQL Server örneğinin başlatılmasını engeller. Önceki hata günlüğü girişlerini hatalara karşı inceleyin, uygun düzeltme eylemlerini gerçekleştirin ve betik yükseltme adımlarının tamamlanmaya çalışması için veritabanını yeniden başlatın.

Explanation

912 hatası, veritabanı betiklerinin çalıştırılamadığını ve veritaban(lar)ının sunucu tarafından gereken en son seviyeye yükseltilmediğini gösterir. Bu, başarısız olan yükseltme betisine ve arızalanan betiğin karşılaştığı hataya referans veren genel bir hata mesajıdır.

SQL Server yükseltildiğinde veya Kümülatif Güncelleme uygulandığında, başlangıçta yalnızca ikili kartlar yükseltilir. Veritabanı ve nesneleri değiştirilmemiştir. İkili dosyalar yeni sürümlerle değiştirildiğinde ve hizmet ilk kez yeniden başladığında, veritabanı yükseltmesi başlatılır. Yürütülecek yükseltme betikleri C:\Program Files\Microsoft SQL Server\MSSQLXX altında yer alır. YYYY\MSSQL\Kurulum.

Yükseltme sürecinde script seviyesinde yükseltme hataları (Error 912) karşılaşılırsa, başka hatalar da ortaya çıkabilir. Örneğin, bu hatalar 912 hatasına eşlik edebilir ve arızayı daha iyi açıklamaya yardımcı olabilir:

Error: 1101, Severity: 17, State: 1.
Could not allocate a new page for database 'tempdb' because of insufficient disk space in filegroup 'PRIMARY'. Create the necessary space by dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.

Error: 912, Severity: 21, State: 2.
Script level upgrade for database 'master' failed because upgrade step 'xxx.sql' encountered error <Error Number>, state <Error State>, severity <Error Severity>. This is a serious error condition which might interfere with regular operation and the database will be taken offline. If the error happened during upgrade of the 'master' database, it will prevent the entire SQL Server instance from starting. Examine the previous errorlog entries for errors, take the appropriate corrective actions and re-start the database so that the script upgrade steps run to completion.

Error: 3417, Severity: 21, State: 3.
Cannot recover the master database. SQL Server is unable to run. Restore master from a full backup, repair it, or rebuild it. For more information about how to rebuild the master database, see SQL Server Books Online.

Genellikle kurulum işlemi başarısız olduğunda, kullanıcı arayüzde aşağıdaki hatayı görebilir; kurulum Wizard ile manuel olarak yapılıyorsa. Bu hatanın çok çeşitli kurulum sorunlarıyla birlikte ortaya çıkabileceğini unutmayın. Ama her durumda daha fazla bilgi için SQL Server hata kaydını kontrol etmenizi önerir.

Wait on the Database Engine recovery handle failed. Check the SQL Server error log for potential causes.

GUI'de yükseltme hatası

Kullanıcı eylemi

Sorunun nedenini bulmak için şu adımları izleyin:

  1. SQL Server Hata Kaydını bulun ve açın.
  2. Hata 912'den hemen önce gerçekleşen hataları kontrol edin ve Error 912'nin mesajlaşmasında referans verilen hatayı çözmeye odaklanın.
  3. Microsoft müşterilerinin bildirdiği bazı yaygın senaryolar için "Veritabanı Motoru kurtarma işlemi başarısız oldu" ve "912" ve "3417" hatalarına bakabilirsiniz
  4. Bazı durumlarda, sürecin bir parçası olarak, SQL Server servisini trace flag 902 ile başlatmanız gerekebilir (aşağıdaki adımlara bakınız). Hizmeti T902 ile başlatmak, hizmetin başlatma sırasında yükseltme betiklerinin çalıştırılmasını atlamasına olanak tanır. Böylece, temel sorunu araştırma ve düzeltme şansı elde edersiniz.
  5. Sorunu çözdükten sonra izleme bayrağını kaldırdığınızdan emin olun, böylece kurulum süreci yükseltme betik yürütme aşamasını yeniden başlatabilir.

SQL Server'ı trace flag 902 ile başlatma adımları

Yapılandırma Yöneticisi Kullanımı

  1. SQL Server Yapılandırma Yöneticisi'ni başlatın.
  2. SQL Server Services'te SQL Server örneğini seçin.
  3. Örneği sağ tıklayın ve ardından Özellikler'i seçin.
  4. Başlangıç Parametreleri sekmesini seçin.
  5. İz bayrağını eklemek için Define a startup parametre alanını kullanın. "-T902" (tırnak işareti olmadan) yazın ve Ekle'ye tıklayın.
  6. OK'yi seç ve örnek özellikleri kapat.
  7. SQL Server hizmetini başlatın.

Başlatma seçeneklerinin nasıl yapılandırılacağı hakkında daha fazla bilgi için SQL Yapılandırma Yöneticisi Hizmetleri - Sunucu Başlatma Seçeneklerini Yapılandır

Uyarı

Sorunu çözdükten sonra -T902 yapılandırmadan çıkardığınızdan emin olun.

Komut istemi sqlservr.exe

  1. Yönetici ayrıcalıklarına sahip bir komut istemi açın ve dizini SQL Server Binn dizinine değiştirin, örneğin C:\Program Files\Microsoft SQL Server\MSSQLXX. YYYY\MSSQL\Binn.

  2. Uygulamak sqlservr.exe -s <instance> -T902

    Varsayılan Örnek:

    cd \Program Files\Microsoft SQL Server\MSSQL<version>\MSSQL\Binn
    sqlservr.exe -s MSSQLSERVER  -T902
    

    Named Instance, burada "sql2016" bir örnek adı örneğidir:

    cd \Program Files\Microsoft SQL Server\MSSQL<version>.<instance name>\MSSQL\Binn
    sqlservr.exe -s sql2016  -T902
    
  3. Işi bitirdiğinizde instance'ı durdurmak için CTRL+C , sonra Y

Komut dizemi kullanılarak net start

Varsayılan Örnek:

NET START MSSQLSERVER /T902 

İsimli Örnek:

NET START MSSQL$INSTANCENAME  /T902