Sümptomid
Arvestage järgmise stsenaariumiga.
-
Teil on Microsoft SQL Server 2012 või varasema versiooni andmebaas, millel on mitu filegroups ja sekundaarne failirühma on vaike-failirühma.
-
Andmebaasi varundada ja seejärel taastada SQL Server 2014.
-
Määrate esmase failirühma vaike-failirühma ja seejärel proovite eemaldada sekundaarse failirühma.
Selle stsenaariumi korral ei saa kustutada teisese failirühma isegi siis, kui kõik selle all olevad andmefailid kustutatakse. Tõrketeade näitab, et teisese failirühma ei saa eemaldada, kuna see pole tühi.
Põhjus
See probleem ilmneb seetõttu, et andmebaasi versiooni uuendamine loob süsteemi objektid vaikimisi failirühma, mitte esmane failirühma SQL Server 2014. Teisene failirühma sisaldab endiselt mõnda süsteemi objekte.
Lahendus
See parandus tutvustab jälituslipp 3861, et viia süsteemi tabelid esmase failirühma. Pärast selles artiklis kirjeldatud käigultparanduse rakendamist, kui käivitate SQL serveri, kasutades jälituslipp 3861 Startup parameetrina, võib see viia süsteemi tabelid esmase failirühma. Kui te pole veel andmebaasi varundust taastanud, saate lubada jälituslipp serveri tasemel.
dbcc traceon(3861,-1)<Restore the database>dbcc traceoff(3861,-1)
Probleem parandati esmakordselt SQL serveri järgmises koondvärskenduses.
Kumulatiivne värskendus 4 SQL Server 2014 /en-us/help/2999197
Iga uus koondvärskenduses SQL Server sisaldab kõiki käigultparandused ja kõik turvaparandusi, mis kuulusid eelmise koondvärskenduse. Vaadake SQL serveri kumulatiivseid värskendusi.
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.