Symptomy
W przypadku używania bazy danych SSISDB do przechowywania pakietów usług Microsoft SQL Server Integration Services (SSIS) i zarządzania nimi oraz konfigurowania następujących właściwości w wykazie SSIS:
-
Regularnie Powtarzaj dzienniki (wartość PRAWDA)
-
Okres przechowywania (ustawienie określonej liczby dni — większa liczba dni, w których może występować ten problem)
-
Okresowo Usuwaj stare wersje (ustawione na wartość PRAWDA)
-
Maksymalna liczba wersji na projekt
Może wystąpić jeden lub więcej z następujących symptomów:
-
Wdrożenie pakietów SSIS na bazie danych SSIS z SSDT jest czasochłonne.
-
Wykonywanie pakietów SSIS może trwać długo lub nawet nie powiedzie się w niektórych przypadkach, gdy jest uruchomione zadanie oczyszczania SSISDB.
-
Wystąpienie programu SQL Server może powodować problemy z wydajnością.
-
Zadanie konserwacji SSIS może trwać długo (dłużej niż dziennie) do ukończenia lub nawet niepowodzenia.
-
SSISDB mógł wzrosnąć do dużego rozmiaru.
Rozwiązanie
Informacje o dodatku Service Pack dla programu SQL Server 2012
Aby rozwiązać ten problem, Uzyskaj najnowszy dodatek Service Pack dla programu Microsoft SQL Server 2012. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2755533 Jak uzyskać najnowszy dodatek Service Pack dla programu SQL Server 2012 Po zastosowaniu dodatku Service Pack 2 (SP2) dla programu SQL Server 2012 wykonaj następujące czynności, aby rozwiązać ten problem:
-
Zastosuj program SQL Server 2012 z dodatkiem SP2 w wystąpieniu programu SQL Server, w którym znajduje się wykaz SSISB.
-
Uruchom procedurę przechowywaną wewnętrznego.cleanup_server_log w SSISDB, aby przeprowadzić pełne oczyszczanie.
EXEC SSISDB.internal.cleanup_server_log
-
Zmień bazę danych SSISDB na tryb jednego użytkownika.
ALTER DATABASE SSISDB SET SINGLE_USER
-
Połącz configure_catalogą razem z parametrem SEVER_OPERATION_ENCRYPTION_LEVEL , aby zmienić poziom szyfrowania dziennika operacji na PER_PROJECT (2) z domyślnego PER_EXECUTION (1).
EXEC SSISDB.catalog.configure_catalog @property_name='SERVER_OPERATION_ENCRYPTION_LEVEL', @property_value='2'
-
Zmienianie bazy danych SSISDB z powrotem na tryb wielu użytkowników.
ALTER DATABASE SSISDB SET MULTI_USER
-
Uruchamianie wewnętrznego.Cleanup_Server_execution_keys procedurę przechowywaną w celu oczyszczenia kluczy poziomu transakcji.
EXEC SSISDB.internal.Cleanup_Server_execution_keys @cleanup_flag = 1
Więcej informacji
Program SQL Server 2012 z dodatkiem Service Pack 2 wprowadza kluczowe zmiany w projekcie, które pomagają w zmniejszeniu tego problemu:
-
Nowa właściwość (OPERATION_LOG_ENCRYPTION_LEVEL) jest wprowadzana w SSISDB.catalog_property tabeli w celu włączenia opcji zabezpieczeń na poziomie projektu. To ustawienie informuje program SSIS o utworzeniu jednej pary kluczy lub certyfikatów dla każdego projektu i ponownego ich użycia dla każdej transakcji, co minimalizuje liczbę przechowywanych i potrzebnych do oczyszczenia certyfikatów w przyszłości. Pełne oczyszczanie jest wymagane przed zmianą z poziomu transakcji na poziomie projektu.
-
Wprowadzono dwie procedury składowane, które ułatwiają tranzyt istniejących SSISDB z poziomu transakcji do poziomu projektu:
-
cleanup_server_log
-
cleanup_server_execution_keys
Aby uzyskać więcej informacji na temat tych dwóch procedur i ich zastosowania, odwiedź następującą witrynę sieci Web w dokumentacji książki online programu SQL Server:
-
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".