Dela via


Kända problem med konfiguration och migrering av SQL Server 2012

I den här artikeln beskrivs problem med konfiguration och migrering av SQL Server 2012.

Ursprunglig produktversion: SQL Server
Ursprungligt KB-nummer: 2681562

Problem med installation och migrering som är specifika för SQL Server 2012

  • Allmänna anteckningar

    • Som standard innehåller Windows 8 .NET Framework 4.0. Windows 8.1 och Windows Server 2012 R2 innehåller .NET Framework 4.5 och Windows 10 och Windows Server 2016 innehåller .NET Framework 4.6. Följande SQL Server 2012-komponenter är dock beroende av .NET Framework 3.5:

      • SQL Server 2012 Databasmotor
      • Replikeringstjänst
      • SQL Server Dataverktyg
      • Datakvalitetstjänst
      • Huvuddatatjänst
      • Inbyggt läge för Reporting Service
      • Fulltextsökning

      Därför rekommenderar vi att du aktiverar .NET 3.5 Framework innan du installerar SQL Server 2014 eller SQL Server 2012 i en fristående eller klustrad miljö för att förhindra eventuella SQL Server-installationsfel.

      Information om hur du aktiverar .NET 3.5 Framework finns i följande artiklar:

  • Vissa problem med installation och installation av SQL Server 2012 åtgärdas i de senaste kumulativa uppdateringarna för SQL Server 2012. Därför rekommenderar vi att du skapar ett slipstream-installationspaket som innehåller SQL Server 2012 och CU3 eller en senare uppdatering med parametern /Update. Mer information om hur du gör detta finns i SQL Server 2012 Setup just got smarter or How to patch SQL Server 2012 Setup with an updated setup package (using UpdateSource to get a smart setup).

Installationsproblem med SQL Server 2012 som kan uppstå när .NET Framework 3.5 inte är aktiverat

Problem 1 – Ofullständiga SQL-redundanskluster eller fristående installationer

Symptom

På servrar där .NET Framework 3.5 inte redan är installerat eller servrar där Internetåtkomst är begränsad, installerar installationsprogrammet för SQL Server 2012 inte komponenter som är beroende av .NET Framework 3.5. Därför kan installationen av SQL Server 2012 vara ofullständig.

Anmärkning

Windows 8.1 eller Windows Server 2012 R2 låter dig inte fortsätta med installationen.

Ett felmeddelande som liknar följande kan visas under installationen av SQL Server 2012 när .NET Framework inte är aktiverat.

Skärmbild av felmeddelandet för konfiguration av SQL Server 2012: Fel vid aktivering av Windows-funktionen.

Förebyggande

För att förhindra det här problemet aktiverar du .NET Framework 3.5 på alla noder i klustret eller på den fristående servern innan du installerar SQL Server 2012.

Lösning

Lös problemet på en fristående server genom att aktivera .NET Framework 3.5 och sedan köra installationsprogrammet igen för att lägga till ytterligare funktioner.

Lös problemet i en klustrad miljö genom att avinstallera de ofullständiga SQL Server 2012-instanserna, aktivera .NET Framework 3.5 och sedan installera om SQL Server 2012.

Anmärkning

I en klustrad miljö kan du inte lägga till de funktioner som hoppades över genom att köra INSTALLATIONsprogrammet för SQL Server 2012 igen.

Lös problemet på en fristående server genom att aktivera .NET Framework 3.5 och sedan köra SQL Server-installationen igen.

Problem 2 – Användare uppmanas felaktigt att ladda ned och installera .NET Framework 3.5

Symptom

Användare kan uppmanas att ladda ned och installera .NET Framework 3.5 när de försöker installera CU1 eller CU2. Det här problemet kan inträffa även om de installerade komponenterna inte är beroende av .NET Framework 3.5.

I den här situationen kan du få ett felmeddelande som liknar följande.

Skärmbild av installationsfelmeddelandet för .Net Framework 3.5: Följande funktion kunde inte installeras.

Orsak

Det här är ett känt problem i SQL Server 2012 CU1 och CU2.

Anmärkning

Det här problemet åtgärdas i kumulativ uppdatering 3 för SQL Server 2012 och senare versioner.

Förebyggande

Gör något av följande för att förhindra det här problemet:

  • Aktivera .NET Framework 3.5, tillämpa CU1-uppdateringspaketet eller CU2-uppdateringspaketet och inaktivera sedan .NET Framework 3.5.

    Anmärkning

    Du bör bara inaktivera .NET Framework 3.5 om installationen inte innehåller komponenter som är beroende av .NET Framework 3.5.

  • Installera SQL Server 2012 från ett felströmsinstallationspaket som innehåller SQL Server 2012 och CU3 eller en senare version.

  • Använd kumulativ uppdatering 3 eller en senare version. Mer information finns i SQL Server 2012-versioner som släpptes efter att SQL Server 2012 släpptes.

Problem 3 – Aviseringar om kompatibilitetsläge för Windows-program visas under en tyst installation

Symptom

I Windows 8.1, Windows 8, Windows Server 2012 R2, Windows Server 2012, Windows 10 och Windows Server 2016 är .NET Framework en FOD-komponent (Feature-On-Demand). Dessutom kräver systemprinciperna Windows 10, Windows 8.1 och Windows 8 och Windows Server 2016, Windows Server 2012 R2 och Windows Server 2012 att användarna aviseras när FOD-komponenter är aktiverade.

Anmärkning

Som standard är .NET Framework 4.0 aktiverat i Windows 8 och Windows Server 2012. Dessutom är .NET Framework 4.5 aktiverat i Windows 8.1 och Windows Server 2012 R2, och .NET Framework 4.6 är aktiverat i Windows 10 och Windows Server 2016. .NET Framework 3.5 är dock inaktiverat.

Därför kan ett programkompatibilitetsläge som uppmanar användarna att ladda ned och installera .NET Framework 3.5 visas under en tyst installation. Dessa programkompatibilitetsaviseringar kan inte ignoreras. Skärmbilder av varningar visas på följande sätt:

Windows Server 2012 R2 och Windows Server 2012 – fullständig server

Skärmbild av installationsfelmeddelandet för .Net Framework 3.5 på fullständig server: Följande funktion kunde inte installeras.

Windows Server 2012 R2 och Windows Server 2012 – Server Core

Skärmbild av roller och funktioner som inte kan installeras automatiskt via Windows-funktionsfel.

Förebyggande

För att förhindra det här problemet kan användaren aktivera .NET Framework 3.5 innan de utför en tyst installation.

Ytterligare installationsproblem för SQL Server 2012

Problem 1: Ett ohanterat .NET Framework-undantag kan genereras när du försöker installera en andra instans av SQL Server 2012

Symptom

Tänk på följande scenario:

  • Du installerar en instans av SQL Server 2012.
  • En .NET Framework 4.0-användarkonfigurationsfil skapas när du installerar instansen av SQL Server 2012. Dessutom aktiveras .NET Framework 3.5 under installationen.
  • Du försöker installera en andra instans av SQL Server 2012.

I det här scenariot kan ett ohanterat undantag genereras. Du kan få ett felmeddelande som liknar följande:

Ett fel uppstod när konfigurationsavsnittshanteraren skapades för userSettings/Microsoft.SqlServer.Configuration.LandingPage.Properties.Settings: Det gick inte att läsa in fil- eller sammansättningssystemet, Version=4.0.0.0, Culture=neutral, PublicKeyToken=xxxxx eller något av dess beroenden. Det går inte att hitta den angivna filen. (C:\Users\Administrator\AppData\Local\Microsoft_Corporation\LandingPage.exe_StrongName_ ryspccglaxmt4nhllj5z3thycltsvyyx\11.0.0.0\user.config)

Orsak

I Windows 8 och Windows Server 2012 uppstår det här problemet eftersom .NET Framework 4.0 är aktiverat som standard i Windows 8 och Windows Server 2012. Därför skapas en .NET Framework 4.0-användarkonfigurationsfil när du installerar SQL Server 2012. Dessutom aktiveras .NET Framework 3.5 under installationen.

När du försöker installera den andra instansen av SQL Server 2012 använder installationen .NET Framework 2.0 eftersom .NET Framework 3.5 redan är installerat. Detta står i konflikt med inställningen i användarkonfigurationsfilen som orsakar det ohanterade undantaget.

I Windows 8.1 och Windows Server 2012 R2 uppstår det här problemet eftersom .NET Framework 4.5 är aktiverat som standard i Windows 8.1 och Windows Server 2012 R2. Därför skapas en .NET Framework 4.5-användarkonfigurationsfil när du installerar SQL Server 2012. Dessutom aktiveras .NET Framework 3.5 under installationen.

När du försöker installera den andra instansen av SQL Server 2012 använder installationen .NET Framework 2.0 eftersom .NET Framework 3.5 redan är installerat. Den här konflikten med inställningen i användarkonfigurationen orsakar det ohanterade undantaget.

I Windows 10 och Windows Server 2016 uppstår det här problemet eftersom .NET Framework 4.6 är aktiverat som standard. Därför skapas en .NET Framework 4.6-användarkonfigurationsfil när du installerar SQL Server 2012. Dessutom aktiveras .NET Framework 3.5 under installationen.

När du försöker installera den andra instansen av SQL Server 2012 använder installationen .NET Framework 2.0 eftersom .NET Framework 3.5 redan är installerat. Detta står i konflikt med inställningen i användarkonfigurationsfilen som orsakar det ohanterade undantaget.

Förebyggande

Om du vill förhindra det här problemet tar du bort filen User.config i följande mapp innan du installerar den andra instansen av SQL Server 2012:

%userprofile%\AppData\Local\Microsoft_Corporation\LandingPage.exe_StrongName_ryspccglaxmt4nhllj5z3thycltsvyyx\11.0.0.0

Lösning

Anmärkning

Det här problemet har åtgärdats i Microsoft SQL Server 2012 Service Pack 1 (SP1).

Om den första instansen redan har Service Pack 1 installerat bör du inte uppleva det här problemet. Om du inte kan installera Service Pack 1 på den första instansen gör du något av följande:

  • Installera den andra SQL Server 2012-instansen från ett felströmsinstallationspaket som innehåller SQL Server 2012 och Microsoft SQL Server 2012 Service Pack 1. Efter installationen av den nya instansen måste du använda SQL Server 2012 Service Pack 4 eller en senare uppdatering. Mer information finns i Hämta det senaste servicepaketet för SQL Server 2012.

  • Förkorrigering med hjälp av SQL Server 2012 SP4-filerna och installera sedan SQL Server 2012:

    • På en dator där SQL Server 2012 RTM inte är installerat:

      1. Ladda ned och installera SQL Server 2012 SP4.

      2. På skärmen Licensvillkor klickar du på kryssrutan Jag godkänner licensvillkoren och väljer sedan Nästa.

        Anmärkning

        Installationsfilerna installeras och installationsguiden stängs automatiskt.

      3. Bekräfta installationen. Det gör du genom att starta Lägg till eller ta bort program och kontrollera att följande visas:

        • Installationsprogrammet för Microsoft SQL Server 2012, version 11.0.7001.0
        • Två poster för Microsoft Visual C++.
    • På en dator som har en befintlig instans av SQL Server 2012 RTM:

      1. Ladda ned och installera SQL Server 2012 SP4.

      2. Extrahera SP4-filerna till en lokal mapp. Extrahera till exempel SP4-filerna till c:\sp4.

        Anmärkning

        Du kan inte köra SQL Server 2012 SP4-konfigurationen i det här scenariot.

      3. Dubbelklicka på SqlSupport.msi i mappen som du extraherade SP4-filerna till och välj sedan Ja.

      4. Bekräfta installationen. Det gör du genom att starta Lägg till eller ta bort program och kontrollera att Installationsprogrammet för Microsoft SQL Server 2012 version 11.0.7001.0 visas.

        Anmärkning

        Kontrollera avsnittet Installationsanvisningar på nedladdningssidan för SQL Server 2012 SP4 för att fastställa rätt nedladdning för servern.

Problem 2: Du kan inte installera ett SQL Server 2012-redundanskluster med funktionen Filströmsresurs aktiverad på Windows Server 2012 R2 eller Windows Server 2012

Symptom

Du kan få ett felmeddelande som liknar följande när du försöker installera ett nytt SQL Server 2012-redundanskluster med FileStream funktionen Dela aktiverad på Windows Server 2012:

Ett fel uppstod när den privata egenskapen Security0x20Descriptor skulle ange värdet "System.Byte[]" för resursen "SQL Server Filestream share (FILESTREAM)". Fel: Det gick inte att anropa klusterkod från en provider. Undantagsmeddelande: Hittades inte.

Orsak

Det här problemet beror på att stödet för egenskapen Security Descriptor togs bort i Windows Server 2012.

Förebyggande

Du kan förhindra det här problemet genom att installera redundansklustret utan FileStream att funktionen Dela är aktiverad. När installationen är klar aktiverar du FileStream funktionen Dela.

Lösning

Anmärkning

Det här problemet har åtgärdats i Microsoft SQL Server 2012 Service Pack 1 (SP1).

Lös problemet genom att avinstallera den misslyckade klusterinstansen med hjälp av Lägg till eller ta bort program och sedan installera redundansklustret utan FileStream funktionen Dela aktiverad. När installationen är klar aktiverar du FileStream funktionen Dela.

Problem 3: Fel under installationen av SQL Server 2012: "Ett försök gjordes att läsa in ett program med ett felaktigt format"

Symptom

Tänk på följande scenario:

  • Du installerar en 64-bitarsversion av Windows 10, Windows 8.1 eller Windows 8.
  • Du försöker installera SQL Server 2012 i Windows-on-Windows-läge (WoW).
  • SQL Server 2012-installationen innehåller Reporting Services.

I det här scenariot misslyckas installationen. Dessutom får du ett felmeddelande som liknar följande:

Åtgärden misslyckades med 0x8007000B
Ett försök gjordes att läsa in ett program med ett felaktigt format.

Skärmbild av felmeddelandet om att åtgärden misslyckades.

Förebyggande

Du kan förhindra det här problemet genom att installera komponenten IIS ASP.NET 3.5 med hjälp av Serverhanteraren innan du installerar SQL Server 2012. Mer information finns i ASP.NET 2.0 och ASP.NET 3.5 fungerar inte när du har avinstallerat ASP.NET 4.5 i Windows 8 eller Windows Server 2012.

Problem 4: Du kan inte installera en SQL Server 2012 Enterprise Edition-klusterinstans

Symptom

Tänk på följande scenario:

  • Du gör något av följande:

    • Du skapar ett felströmsinstallationspaket som innehåller SQL Server 2012 och CU1.
    • Du förinstallerar med HJÄLP av CU1 innan du installerar SQL Server 2012.
  • Du installerar SQL Server 2012 med hjälp av alternativet UIMODE=EnableUIOnServerCore .

    I det här scenariot misslyckas installationen. Du får ett felmeddelande som liknar följande.

    Skärmbild av sidan Funktionsregler, som visar att kontrollen av Funktioner som stöds av Windows Server Core misslyckades.

    Informationen om felet liknar följande.

    Skärmbild som visar information om felet i dialogrutan Resultat av regelkontroll.

Orsak

Det här problemet beror på att DQ funktionen är implicit markerad tillsammans med komponenten Engine under installationen.

Anmärkning

Funktionen DQ stöds inte i Server Core-läge.

Lösning

Anmärkning

Problemet har åtgärdats i SQL Server 2012 RTM CU3 och SQL Server 2012 Service Pack 1.

Lös problemet genom att göra något av följande:

  • Skapa ett snedströmsinstallationspaket som innehåller SQL Server 2012 och CU3.
  • Förkorrigering av installationsstödfilerna genom att köra CU3-installationspaketet.

Problem 5: Felmeddelande när du försöker uppgradera klusternoden till SQL Server 2012: "Det gick inte att spara de vanliga egenskaperna för resursens SQL-nätverksnamn (<SQL-namn>)

Mer information om det här problemet och hur du löser det finns i felet "Det gick inte att spara de vanliga egenskaperna för resursens SQL-nätverksnamn ()" när du försöker uppgradera klusternoden till SQL Server 2012.

Problem 6: Felmeddelande när du använder OpenSQLFileStream API: "System.ComponentModel.Win32Exception (0x80004005): Begäran stöds inte."

Symptom

Tänk på följande scenario:

  • Du installerar en instans av SQL Server 2008 R2 på en server som kör Windows Server 2012.
  • Du uppgraderar instansen av SQL Server 2008 R2 till SQL Server 2012 Service Pack 1 (SP1).
  • Du använder API:et OpenSQLFileStream .

I det här scenariot får du ett felmeddelande som liknar följande:

System.ComponentModel.Win32Exception (0x80004005): Begäran stöds inte.

Orsak

Det här problemet beror på att SQL Server 2012-uppgraderingen felaktigt tar bort följande registernyckel:

HKEY_LOCALMACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters\FsctlAllowList\FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT

Lösning

Du kan undvika det här problemet genom att använda Registereditorn för att återskapa följande registernyckel:

 HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters\FsctlAllowList
 Dword: FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT
 Value: 0x92560

Se även