Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale aşağıdaki senaryoları çözmenize yardımcı olur:
- Azure sanal makinesi (VM) üzerinde bir SQL Server Azure Marketplace görüntüsü dağıtılamıyor.
- Azure VM yeniden başlatıldıktan veya tahsis edilmesi sona erdirildikten sonra bir SQL Server örneği çevrimiçi olamaz.
Şunlar için geçerlidir: Azure VM'lerinde SQL Server
Uyarı
Bu sorunun araştırması etkin bir şekilde devam etmektedir. Bu makaledeki bilgiler, yeni ayrıntılar kullanılabilir hale geldikçe değiştirilebilir.
Belirtiler
Bu sorunla karşılaşırsanız büyük olasılıkla şunları görürsünüz:
- Azure Market görüntüsü kullanılırken Azure VM'de SQL Server dağıtımları başarısız oluyor.
- SQL Server'ın el ile yüklenen örnekleri için bir Azure VM yeniden başlatıldıktan sonra SQL Server çevrimiçi olamıyor.
Azure VM'de SQL Server dağıtımı başarısız oluyor
Azure Marketplace'ten Azure VM resminde bir SQL Server dağıtmaya çalıştığınızda, dağıtım Conflict durumu ile sonuçlanır ve aşağıdaki hatayla başarısız olur:
Sistem Sürücüsü kullanıma hazır değil olarak bildirildi.
Örneğin, Azure portalından bir görüntü dağıtıyorsanız , Etkinlik günlüğünde dağıtım için aşağıdaki hatayı görebilirsiniz:
Uyarı
Bu hata oluştuğunda Azure VM dağıtımı başarılı olur, ancak SQL Server yüklemesi başarısız olur. Ücret yansıtılmasını önlemek için VM'yi silmeniz gerekir. Çözüm veya Geçici Çözümler bölümlerinde açıklanan yöntemlerden birini kullanarak VM'yi yeniden dağıtın.
VM yeniden başlatıldıktan sonra SQL Server çevrimiçi olamaz.
Bu olay dizisini takip ettikten sonra bu sorunu görebilirsiniz:
- Etkilenen VM listesinden bir Azure VM dağıtırsınız.
- Sql Server örneğini Azure VM'ye el ile yüklersiniz.
- SQL Server
tempdbveritabanınızı yerel SSD kısa ömürlü depolama alanını (genellikleD:sürücü) kullanacak şekilde yapılandırabilirsiniz. - Sanal Makineniz yeniden başlatıldı veya ayrıldı.
- SQL Server örneğiniz çevrimiçi olamz.
Bu sorunla karşılaşırsanız SQL Server hata günlüğünde aşağıdaki hatayı görebilirsiniz:
CREATE FILE encountered operating system error 3(The system cannot find the path specified.)
while attempting to open or create the physical file 'D:\SQLTemp\tempdb.mdf'.
Error: 17204, Severity: 16, State: 1. FCB::Open failed: Could not open
file D:\SQLTemp\tempdb.mdf for file number 1. OS error:
3(The system cannot find the path specified.).
Error: 5120, Severity: 16, State: 101.
Unable to open the physical file "D:\SQLTemp\tempdb.mdf". Operating system error 3:
"3(The system cannot find the path specified.)".
Error: 1802, Severity: 16, State: 4 CREATE DATABASE failed.
Some file names listed could not be created. Check related errors.
Could not create tempdb. You may not have enough disk space available.
Free additional disk space by deleting other files on the tempdb drive and then restart SQL Server.
Check for additional errors in the event log that may indicate why the
tempdb files could not be initialized.
Neden
En yeni Azure VM boyutlarından bazıları Geçici Olmayan Bellek Express (NVMe) arabirimiyle yapılandırılmış kısa ömürlü depolama için bir RAW yerel SSD birimi sunar. SQL Server, tempdb veritabanını geçici depolamaya yerleştirmeye çalıştığı ve yerel SSD birimi mevcut olmadığı için başarısız olduğundan, bu yapılandırma hatalarla sonuçlanır. Ayrıca, geçici depolama, makinenin tahsisi kaldırıldıktan sonra RAW olarak gösterilir.
RAW yerel SSD birimi, SQL VM dağıtımının başarısız olmasına neden olur ve el ile yüklenen SQL Server örneklerinin VM yeniden başlatıldıktan sonra çevrimiçi olmasını engeller. Her iki durumda da SQL Server, geçici depolamada veritabanını başlatmaya çalışır, ancak bu kullanılabilir değildir. Azure VM dağıtımı sırasında SQL Server yüklendiğinden ve kısa ömürlü depolama kullanılamadığından dağıtım başarısız olur. Benzer şekilde, SQL Server'ın el ile yüklenen örnekleri, SQL Server tempdb veritabanını oluşturmaya çalıştığında efemer depolama kullanılamadığından VM yeniden başlatıldıktan sonra çevrimiçi hale gelemiyor.
Çözüm
Bu sorun, seçilen Azure VM boyutu nedeniyle oluşur. Sorunu çözmek için aşağıdaki yöntemlerden birini kullanın:
- Mümkünse, VM boyutu en iyi uygulamaları'nda listelenen SKU'lar gibi başka bir VM SKU'su kullanın.
-
Etkilenen VM'ler listesinde yer alan belirli bir VM'yi kullanmak istiyorsanız, adında küçük harf
dolmayan ve SQL Server veri dosyalarıyla aynı depolama alanına yertempdbalan bir makine kullanın. Örneğin,FXmsv2yerineFXmdsv2VM boyutunu kullanın. İkincisi,dile adında belirtildiği gibi başlatılmamış geçici depolama kullanır.
Geçici çözüm
RAW yerel SSD olmadan başka bir VM SKU'su kullanamıyorsanız aşağıdaki geçici çözümleri göz önünde bulundurun:
Vm'yi yalnızca Windows Server görüntüsü kullanarak dağıtın, geçici NVMe sürücüsünü biçimlendirip başlatın ve ardından SQL Server'ı el ile yükleyin.
-
Yerel SSD'yi takmayı
tempdbseçerseniz, VM her yeniden başlatıldığında veya serbest bırakıldığında SQL Server'ı başlatmadan önce diski yeniden başlatmanız gerekir.
-
Yerel SSD'yi takmayı
SQL Server VM görüntüsünü dağıtın, ancak dağıtım sırasında kısa ömürlü depolamadan farklı bir sürücü kullanacak şekilde yapılandırın
tempdb. Örneğin, sürücüyü veya uzak depolama sürücüsünü kullanacaktempdbşekilde yapılandırabilirsinizC:.BU ayarı , SQL ServerVM görüntüsünü dağıtırken Azure portalındaki SQL Server ayarları sayfasında yapılandırabilirsiniz.
Depolama yapılandırması'nın altında Yapılandırmayı değiştir'i seçerek Depolamayı yapılandır bölmesini açın.
tempdb depolama alanını genişletin ve aşağıdakiler dışında
Use local SSD drivebir seçenek belirleyin:
Etkilenen VM'ler
Bu sorun, aşağıdaki VM boyutları gibi başlatılmamış bir geçici sürücü dağıtan VM'lerde oluşur:
| Intel 10.2 Nesil | AMD 9.1 Gen |
|---|---|
| Dldsv6 | Daldsv6 |
| Ddsv6 | Dadsv6 |
| Edsv6 | Eadsv6 |
| Lsv3 - Tüm Azure VM'leri | |
| Fxmdsv2 |
Uyarı
SQL Server'ı yüklemeden önce VM'nin 4 KB'tan büyük bir kesim boyutu kullanılarak yapılandırılmadığından emin olun.