Príznaky
Ak používate databázu SSISDB na ukladanie a spravovanie balíkov Microsoft SQL Server Integration Services (SSIS) a nakonfigurujte tieto vlastnosti v katalógu SSIS:
-
Vyčistite denníky periodicky (nastavte na hodnotu TRUE)
-
Obdobie uchovávania (nastavené na konkrétny počet dní – čím väčší je počet dní, ktoré by mohli byť príčinou problému)
-
Periodicky odstraňovať staré verzie (nastavené na hodnotu TRUE)
-
Maximálny počet verzií na jeden projekt
Môžu sa vyskytnúť niektoré z nasledujúcich príznakov:
-
Nasadenie SSIS balíkov do databázy SSIS z SSDT trvá príliš dlho.
-
Balíky SSIS môže trvať dlho, kým sa v niektorých prípadoch nespustí alebo dokonca zlyhá, keď je spustená úloha vyčistenia SSISDB.
-
Inštancia SQL servera môže vykazovať problémy s výkonom.
-
Úloha údržby SSIS môže trvať dlhšiu dobu (viac ako deň), aby sa dokončila alebo dokonca nemohla zlyhať.
-
SSISDB sa môže rozrástla na veľkú veľkosť.
Riešenie
Informácie o balíku Service Pack pre SQL Server 2012
Ak chcete tento problém vyriešiť, Získajte najnovší balík Service Pack pre Microsoft SQL Server 2012. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na nasledovné číslo článku:
2755533 Získanie najnovšieho balíka Service Pack pre SQL Server 2012 Po použití SQL servera 2012 Service Pack 2 (SP2) postupujte podľa týchto krokov na vyriešenie tohto problému:
-
Použite SQL Server 2012 SP2 na inštancii servera SQL Server, ktorý je hostiteľom SSISB katalógu.
-
Spustenie vnútorného.cleanup_server_log ULOŽENÁ procedúra v SSISDB na vykonanie úplného vyčistenia.
EXEC SSISDB.internal.cleanup_server_log
-
Zmeňte databázu SSISDB na režim jedného používateľa.
ALTER DATABASE SSISDB SET SINGLE_USER
-
Zavolajte configure_catalog spolu s parametrom SEVER_OPERATION_ENCRYPTION_LEVEL na zmenu úrovne šifrovania denníka operácie na PER_PROJECT (2) z predvolenej časti PER_EXECUTION (1).
EXEC SSISDB.catalog.configure_catalog @property_name='SERVER_OPERATION_ENCRYPTION_LEVEL', @property_value='2'
-
Zmeňte databázu SSISDB späť na režim viacerých používateľov.
ALTER DATABASE SSISDB SET MULTI_USER
-
Spustite interný.Cleanup_Server_execution_keys uložená procedúra na vyčistenie kľúčov transakčných úrovní.
EXEC SSISDB.internal.Cleanup_Server_execution_keys @cleanup_flag = 1
Ďalšie informácie
SQL Server 2012 Service Pack 2 predstavuje kľúčové zmeny návrhu, ktoré pomáhajú zmierniť tento problém:
-
Nová vlastnosť (OPERATION_LOG_ENCRYPTION_LEVEL) je uvedená v tabuľke SSISDB.catalog_property , aby sa povolila možnosť zabezpečenia na úrovni projektu. Toto nastavenie povie SSIS na vytvorenie jedného kľúča alebo certifikátu dvojice pre každý projekt a jeho opätovné použitie pre každú transakciu, čím sa minimalizuje počet udržiavaných certifikátov a je potrebné ho v budúcnosti vyčistiť. Pred zmenou úrovne transakcie na úroveň na úrovni projektu sa vyžaduje úplné vyčistenie.
-
Zaviedli sme dva uložené procedúry na pomoc pri prechode existujúceho SSISDB z úrovne transakcie na úroveň Projectu:
-
cleanup_server_log
-
cleanup_server_execution_keys
Ďalšie informácie o týchto dvoch postupoch a ich používaní nájdete na nasledujúcej webovej lokalite v službe SQL Server Books Online:
-
Stav
Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.