Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Managed Instance
Eltávolítja az összes SQL Server Agent munkalépésnaplót, amely az argumentumokkal együtt van megadva. Ezt msdb a tárolt eljárást használd a sysjobstepslogs táblájának karbantartásához az adatbázisban.
Transact-SQL szintaxis konvenciók
Szemantika
sp_delete_jobsteplog
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
[ , [ @step_id = ] step_id ]
[ , [ @step_name = ] N'step_name' ]
[ , [ @older_than = ] older_than ]
[ , [ @larger_than = ] larger_than ]
[ ; ]
Arguments
[ @job_id = ] 'job_id'
A munka azonosító száma, amely tartalmazza a munka lépésnaplóját, el kell távolítani.
@job_idaz uniqueidentifier, alapértelmezettként NULL.
Vagy @job_id , akár @job_name meg kell határozni, de mindkettőt nem lehet meghatározni.
[ @job_name = ] N'job_name'
A feladat neve.
@job_name a sysname, alapértelmezettként NULL.
Vagy @job_id , akár @job_name meg kell határozni, de mindkettőt nem lehet meghatározni.
[ @step_id = ] step_id
Az a lépés azonosító száma, amelyhez a munkalépési naplót törölni kell.
@step_idint, alapértelmezés NULL. Ha nincs benne, az összes munkalépési napló törlődik a munkában, hacsak @older_than vagy @larger_than nem vannak megadva.
Vagy @step_id , akár @step_name meg lehet határozni, de mindkettő nem.
[ @step_name = ] N'step_name'
Az a lépés neve a feladatban, amelyhez a munka lépésnaplóját törölni kell.
@step_namea sysname, alapértelmezett értéke NULL.
Vagy @step_id , akár @step_name meg lehet határozni, de mindkettő nem.
[ @older_than = ] older_than
A legrégebbi munka lépésnaplójának dátuma és időpontja, amit meg akarsz vezetni.
@older_thandátumidő, alapértelmezés NULL. Minden munkalépési naplót, amely régebbi, mint ez a dátum és az idő, eltávolításra kerül.
Mind a @older_than , mind a @larger_than meg lehet határozni.
[ @larger_than = ] larger_than
A legnagyobb munkalépésnapló bájtokban terjedő mérete, amit meg akarsz tartani.
@larger_thanint, alapértelmezés NULLszerint . Minden nagyobb munkalépési naplót eltávolítunk, mint ennyire.
Mind a @older_than , mind a @larger_than meg lehet határozni.
Kódértékek visszaadása
0 (sikeres) vagy 1 (hiba).
Eredményhalmaz
Nincs.
Megjegyzések
sp_delete_jobsteplog az msdb adatbázisban található.
Ha nincs megadva, kivéve @job_id vagy @job_name , akkor az adott feladathoz tartozó összes munkalépésnaplót törölnek.
Permissions
Ezen az eljáráshoz engedélyeket adhatsz EXECUTE , de ezek az engedélyek felülbírálhatók egy SQL Server frissítés során.
Más felhasználóknak az alábbi SQL Server Agent rögzített adatbázis-szerepek egyikét kell megadniuk az msdb adatbázisban:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Ezeknek a szerepköröknek a jogosultságairól az SQL Server Agent Fixed Database Roles oldalon találja a részleteket.
Csak a rendszerrendszergaztai törölhetnek egy olyan munkalépési naplót, amely egy másik felhasználó tulajdonában van.
Példák
A. Távolítsd el az összes munkalépési naplót egy munkából
A következő példa eltávolítja az összes munkalépési naplót a feladathoz Weekly Sales Data Backup.
USE msdb;
GO
EXECUTE dbo.sp_delete_jobsteplog @job_name = N'Weekly Sales Data Backup';
GO
B. Távolítsd el a munkalépésnaplót egy adott feladatlépéshez
A következő példa eltávolítja a feladat lépésnaplóját a 2. lépéshez a feladatból Weekly Sales Data Backup.
USE msdb;
GO
EXECUTE dbo.sp_delete_jobsteplog
@job_name = N'Weekly Sales Data Backup',
@step_id = 2;
GO
C. Töröld az összes munkalépési naplót az életkor és méret alapján
A következő példa eltávolítja az összes olyan munkalépési naplót, amely 2005. október 25-én dél előtt és 100 megabájtnál (MB Weekly Sales Data Backup) nagyobb.
USE msdb;
GO
EXECUTE dbo.sp_delete_jobsteplog
@job_name = N'Weekly Sales Data Backup',
@older_than = '10/25/2005 12:00:00',
@larger_than = 104857600;
GO