Dela via


SQL Server på en virtuell Azure-dator kan inte distribueras eller så går det inte att ansluta SQL Server-instansen

Den här artikeln hjälper dig att lösa följande scenarier:

  • En SQL Server på en virtuell Azure-dator (VM) med en Azure Marketplace-avbildning misslyckas med att distribueras.
  • En SQL Server-instans kommer inte online efter att en virtuell Azure-dator startas om eller avallokeras.

Gäller för: SQL Server på virtuella Azure-datorer

Anmärkning

Utredningen av den här frågan pågår aktivt. Informationen i den här artikeln kan komma att ändras när ny information blir tillgänglig.

Symtom

Om du stöter på det här problemet ser du förmodligen:

  • SQL Server på Azure VM-distributioner misslyckas när du använder en Azure Marketplace-avbildning.
  • SQL Server kan inte anslutas efter att en virtuell Azure-dator har startats om för manuellt installerade instanser av SQL Server.

SQL Server på Azure VM-distribution misslyckas

När du försöker distribuera en SQL Server på en virtuell Azure-datoravbildning från Azure Marketplace misslyckas distributionen med statusen Conflict och följande fel:

System Drive returnerade statusen inte redo för användning.

Om du till exempel distribuerar en avbildning från Azure-portalen kan följande fel visas för distributionen i aktivitetsloggen:

Skärmbild av distributionsfelet i Azure-portalen.

Varning

När det här felet inträffar lyckas distributionen av den virtuella Azure-datorn, men SQL Server-installationen misslyckas. Du måste ta bort den virtuella datorn för att undvika avgifter. Distribuera om den virtuella datorn med någon av metoderna som beskrivs i avsnitten Lösning eller Lösningar .

SQL Server kan inte komma online när den virtuella datorn har startats om

Du kan se det här problemet när du har följt den här händelsesekvensen:

  1. Du distribuerar en virtuell Azure-dator från listan över berörda virtuella datorer .
  2. Du installerar en instans av SQL Server manuellt på den virtuella Azure-datorn.
  3. Du konfigurerar SQL Server-databasen tempdb så att den använder den lokala SSD-lagringen (vanligtvis D: enheten).
  4. Din virtuella maskin startas om eller avallokeras.
  5. SQL Server-instansen kan inte vara online.

Om det här problemet uppstår kan följande fel visas i SQL Server-felloggen:

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.

Orsak

Några av de senaste storlekarna för virtuella Azure-datorer har en lokal RAW SSD-volym för tillfällig lagring som konfigurerats med NVMe-gränssnittet (Non-Volatile Memory Express). Den här konfigurationen resulterar i fel eftersom SQL Server försöker placera tempdb databasen på den tillfälliga lagringen och misslyckas eftersom den lokala SSD-volymen inte är tillgänglig. Dessutom visas den tillfälliga lagringen som RAW efter att datorn har avallokerats.

Den lokala RAW-SSD-volymen gör att SQL VM-distributionen misslyckas och förhindrar att manuellt installerade SQL Server-instanser kommer online efter att den virtuella datorn har startats om. I båda fallen försöker SQL Server initiera tempdb databasen på den tillfälliga lagringen, som inte är tillgänglig. Distributionen misslyckas eftersom SQL Server installeras under distributionen av den virtuella Azure-datorn och den tillfälliga lagringen inte är tillgänglig. På samma sätt kan inte manuellt installerade instanser av SQL Server komma online efter att den virtuella datorn har startats om eftersom den tillfälliga lagringen inte är tillgänglig när SQL Server försöker skapa tempdb databasen.

Beslut

Det här problemet uppstår på grund av den valda storleken på den virtuella Azure-datorn. Lös problemet genom att använda någon av följande metoder:

  • Använd om möjligt en annan SKU för virtuella datorer, till exempel de SKU:er som anges i metodtipsen för VM-storlek.
  • Om du vill använda en viss virtuell dator som finns i listan över berörda virtuella datorer använder du en dator utan gemener d i namnet, som placeras tempdb på samma lagringsplats som SQL Server-datafilerna. Använd till exempel vm-storleken FXmsv2 i stället för FXmdsv2. Den senare använder oinitierad tillfällig lagring, vilket anges i namnet d.

Övergångslösning

Om du inte kan använda en annan virtuell dators SKU utan en lokal RAW-SSD bör du överväga följande lösningar:

  • Distribuera den virtuella datorn med en avbildning med endast Windows Server, formatera och initiera den tillfälliga NVMe-enheten och installera sedan SQL Server manuellt.

    • Om du väljer att använda tempdb på den lokala SSD måste du återinitiera disken innan du startar SQL Server varje gång den virtuella datorn startas om eller går ur bruk.
  • Implementera SQL Server VM-avbildningen, men konfigurera tempdb att använda en annan enhet än den tillfälliga lagringen under implementeringen. Du kan till exempel konfigurera tempdb så att den använder enheten C: eller en fjärrlagringsenhet.

    1. Du kan konfigurera den här inställningen på sidan SQL Server-inställningar i Azure-portalen när du distribuerar SQL Server VM-avbildningen.

    2. Under Lagringskonfiguration väljer du Ändra konfiguration för att öppna fönstret Konfigurera lagring .

    3. Expandera tempdb Storage och välj något annat alternativ änUse local SSD drive:

      Skärmbild av tempdb-lagringskonfigurationen i Azure-portalen när du distribuerar en SQL VM-avbildning.

Påverkade virtuella datorer

Det här problemet uppstår med virtuella datorer som distribuerar en onitialiserad tillfällig enhet, till exempel följande VM-storlekar:

Intel Gen 10.2 AMD Gen 9.1
Dldsv6 Daldsv6
Ddsv6 Dadsv6
Edsv6 Eadsv6
Lsv3 – Alla virtuella Azure-maskiner
Fxmdsv2

Anmärkning

Kontrollera att den virtuella datorn inte har konfigurerats med en sektorstorlek som är större än 4 kB innan du installerar SQL Server.