Symptomy
Rozpatrzmy następujący scenariusz:
-
Masz bazę danych programu Microsoft SQL Server 2012 lub wcześniejszej wersji zawierającej wiele grup plików, a pomocnicza grupa plików jest domyślną grupą plików.
-
Możesz wykonać kopię zapasową bazy danych, a następnie przywrócić ją na serwerze SQL Server 2014.
-
Podstawowa grupa plików jest ustawiana jako domyślna grupa plików, a następnie spróbuj usunąć pomocniczą grupę plików.
W tym scenariuszu nie można usunąć pomocniczej grupy plików, nawet jeśli wszystkie znajdujące się w niej pliki danych zostaną usunięte. Komunikat o błędzie informuje, że nie można usunąć pomocniczej grupy plików, ponieważ nie jest ona pusta.
Przyczyna
Ten problem występuje, ponieważ uaktualnienie wersji bazy danych tworzy obiekty systemowe w domyślnej grupie plików, a nie w podstawowej grupie plików w programie SQL Server 2014. Pomocnicza grupa plików nadal zawiera niektóre obiekty systemowe.
Rozwiązanie
W tej naprawieniu wprowadza się flagę śledzenia 3861, aby przenieść tabele systemowe do podstawowej grupy plików. Po zastosowaniu poprawki opisanej w tym artykule podczas uruchamiania programu SQL Server za pomocą flagi śledzenia 3861 jako parametru uruchamiania można przenieść tabele systemowe do podstawowej grupy plików. Jeśli nie przywrócono jeszcze kopii zapasowej bazy danych, możesz włączyć flagę śledzenia na poziomie serwera:
dbcc traceon(3861,-1)<Restore the database>dbcc traceoff(3861,-1)
Ten problem został po raz pierwszy rozwiązany w poniższej zbiorczej aktualizacji programu SQL Server.
Zbiorcza aktualizacja 4 dla programu SQL Server 2014 /en-us/help/2999197
Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".