Firma Microsoft dystrybuuje poprawki do programu Microsoft SQL Server 2012 w postaci jednego pliku do pobrania. Ponieważ poprawki są zbiorcze, każda nowa wersja zawiera wszystkie poprawki i poprawki zabezpieczeń zawarte w poprzedniej wersji poprawki programu SQL Server 2012.
Objawy
Załóżmy, że instalujesz przy użyciu wiersza polecenia zdalny magazyn obiektów blob programu Microsoft SQL Server 2012 dla dodatkowej bazy danych w tym samym wystąpieniu programu SQL Server. Na przykład możesz uruchomić następujące polecenie z wiersza polecenia:
msiexec /qn /lvx* rbs_install_log_2.txt /i rbs.msi REMOTEBLOBENABLE=1 FILESTREAMPROVIDERENABLE=1 DBNAME="Nazwa bazy danych" FILESTREAMSTORENAME=FilestreamProvider_1 ADDLOCAL=EnableRBS,FilestreamRunScript DBINSTANCE="NazwaSerwera domeny\"
W tym scenariuszu ta instalacja kończy się niepowodzeniem. Ponadto wyświetlany jest komunikat o błędzie podobny do następującego:
Uwaga
Błąd SPZ. Błąd pierwotny: numer 2601, ważność 14, stan 1, procedura rbs_sp_add_blob_store, wiersz 64,
Komunikat: Nie można wstawić zduplikowanego wiersza klucza w obiekcie "mssqlrbs_resources.rbs_internal_blob_stores" z unikatowym indeksem "rbs_internal_blob_stores_ix_name". Zduplikowana wartość klucza to (FilestreamProvider_1). Liczba transakcji po wykonaniu instrukcji EXECUTE wskazuje na niezgodną liczbę instrukcji BEGIN i COMMIT. Poprzednia liczba = 1, bieżąca liczba = 0.
Przyczyna
Ten problem występuje, ponieważ druga instalacja używa nieprawidłowych wartości zmiennych pochodzących z pierwszej instalacji.
Te zmienne przechowują nazwę bazy danych FILESTREAM i nazwę instancji. Podczas drugiej instalacji wartości tych zmiennych są pobierane z rejestru i zastępują wartości zdefiniowane w wierszu polecenia.
Rozwiązanie
Informacje o aktualizacji zbiorczej
Aktualizacja zbiorcza 2 dla programu SQL Server 2012 z dodatkiem SP1
Poprawka rozwiązująca ten problem została po raz pierwszy opublikowana w aktualizacji zbiorczej 2. Aby uzyskać więcej informacji dotyczących sposobu uzyskania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2012 z dodatkiem SP1, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2790947 Pakiet aktualizacji zbiorczej 2 dla dodatku Service Pack 1 dla systemu SQL Server 2012 Uwaga Ponieważ te kompilacje są zbiorcze, każda nowa wersja poprawki zawiera wszystkie poprawki i poprawki zabezpieczeń, które były zawarte w poprzedniej wersji poprawki dla SQL Server 2012 z dodatkiem SP1. Zalecamy rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2772858 Kompilacje SQL Server 2012 wydane po wydaniu dodatku Service Pack 1 SQL Server 2012
Aktualizacja zbiorcza 5 dla programu SQL Server 2012
Poprawka rozwiązująca ten problem została po raz pierwszy opublikowana w aktualizacji zbiorczej 5. Aby uzyskać więcej informacji dotyczących sposobu uzyskania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2012, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2777772 Pakiet aktualizacji zbiorczej 5 dla SQL Server 2012Uwaga Ponieważ te kompilacje mają charakter zbiorczy, każda nowa wersja poprawki zawiera wszystkie poprawki i poprawki zabezpieczeń, które zostały uwzględnione w poprzedniej wersji poprawki SQL Server 2012. Zalecamy rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:
2692828 Kompilacje SQL Server 2012 wydane po SQL Server 2012
Obejście
Aby obejść ten problem, zainstaluj zdalny magazyn obiektów blob przy użyciu trybu interfejsu użytkownika zamiast wiersza polecenia.
Stan
Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.