Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Vytváří změnu nebo zachycení dat v aktuální databázi.
Syntaxe
sys.sp_cdc_add_job [ @job_type = ] N'job_type'
[ , [ @start_job = ] start_job ]
[ , [ @maxtrans = ] max_trans ]
[ , [ @maxscans = ] max_scans ]
[ , [ @continuous = ] continuous ]
[ , [ @pollinginterval = ] polling_interval ]
[ , [ @retention ] = retention ]
[ , [ @threshold ] = 'delete_threshold' ]
[ ; ]
Arguments
[ @job_type = ] N'job_type'
Typ práce, kterou přidat.
@job_type je nvarchar(20) a nemůže být NULL. Platné vstupy jsou capture a cleanup.
[ @start_job = ] start_job
Vlajka označující, zda by měla být práce zahájena ihned po jejím přidání.
@start_job je bit s výchozím .1
[ @maxtrans ] = max_trans
Maximální počet transakcí k zpracování v každém skenovacím cyklu.
@maxtrans je int s výchozím hodnotou 500. Pokud je zadáno, musí být hodnota kladné celé číslo.
@maxtrans platí pouze pro zachycení pracovních míst.
[ @maxscans ] = max_scans
Maximální počet cyklů skenování potřebných k vyřízení, aby bylo možné extrahovat všechny řádky z logu.
@maxscans je int s výchozím hodnotou 10.
@max_scan platí pouze pro zachycení úkolů.
[ @continuous ] = spojitý
Označuje, zda má zachytávací úkol běžet nepřetržitě (1), nebo pouze jednou (0).
@continuous je bit s výchozím nastavením 1.
Když je @continuous ,
1sys.sp_cdc_scan úloha prohledá log a zpracovává až (@maxtrans * @maxscans) transakcí. Poté čeká počet sekund uvedený v @pollinginterval , než začne další logovací sken.Když @continuous ,
0úloha provedesp_cdc_scanaž @maxscans skenování logu, zpracuje až @maxtrans transakce během každého skenu a poté ukončí provoz.
@continuous platí pouze pro zachycení úloh.
[ @pollinginterval ] = polling_interval
Počet sekund mezi cykly logaritamu skenování.
@pollinginterval je bigint s výchozím hodnotou 5.
@pollinginterval platí pouze pro zachycovací úlohy, pokud je @continuous nastaveno na 1. Pokud je uvedeno, hodnota musí být větší nebo rovna a 0 kratší než 24 hodin (až 86399 sekund). Pokud je uvedena hodnota , 0 mezi logy není žádná čekací pauza.
[ @retention ] = udržení
Počet minut, kdy se mění datové řádky, se má uchovávat v tabulkách změn.
@retention je bigint s výchozím limitem 4320 (72 hodin). Maximální hodnota je 52494800 (100 let). Pokud je zadáno, musí být hodnota kladné celé číslo.
@retention platí pouze pro úklidové práce.
[ @threshold = ] 'delete_threshold'
Maximální počet položek pro mazání, které lze smazat použitím jediného příkazu při čištění.
@threshold je bigint s výchozím hodnotou 5000.
Hodnoty návratového kódu
0 (úspěch) nebo 1 (selhání).
Sada výsledků
Žádné.
Poznámky
Čistící úloha se vytváří pomocí výchozích hodnot, když je první tabulka v databázi povolena pro zachycení změn dat. Zachycení je vytvořeno pomocí výchozích hodnot, když je první tabulka v databázi povolena pro zachycení změn dat a pro databázi neexistují žádné transakční publikace. Když existuje transakční publikace, používá se transakční čtečka logů k řízení mechanismu zachycení a samostatná úloha zachycení není vyžadována ani povolena.
Protože úlohy pro čištění a zachycení jsou vytvářeny ve výchozím nastavení, je tato uložená procedura nutná pouze tehdy, když byla úloha explicitně zrušena a musí být znovu vytvořena.
Název úkolu je cdc.<database_name>_cleanup nebo cdc.<database_name>_capture, kde <database_name> je název aktuální databáze. Pokud již existuje práce se stejným názvem, je k názvu připojena tečka (.) následovaná jedinečným identifikátorem, například: cdc.AdventureWorks_capture.A1ACBDED-13FC-428C-8302-10100EF74F52.
Pro zobrazení aktuální konfigurace úklidové nebo zachycovací úlohy použijte sys.sp_cdc_help_jobs. Pro změnu konfigurace práce použijte sys.sp_cdc_change_job.
Povolení
Vyžaduje členství v db_owner pevné databázové roli.
Examples
A. Vytvořte zachycení úlohy
Následující příklad vytváří zachycení úkolu. Tento příklad předpokládá, že stávající úklidová práce byla explicitně zrušena a musí být znovu vytvořena. Práce je vytvořena pomocí výchozích hodnot.
USE AdventureWorks2022;
GO
EXECUTE sys.sp_cdc_add_job @job_type = N'capture';
GO
B. Vytvořte úklidovou práci
Následující příklad vytváří úklidovou práci v databázi AdventureWorks2025. Parametr @start_job je nastaven na 0 a @retention na 5760 minut (96 hodin). Tento příklad předpokládá, že stávající úklidová práce byla explicitně zrušena a musí být znovu vytvořena.
USE AdventureWorks2022;
GO
EXECUTE sys.sp_cdc_add_job
@job_type = N'cleanup',
@start_job = 0,
@retention = 5760;