Core.sp_purge_data (Transact-sql)

Saklama ilke tabanlı yönetimi veri ambar verileri kaldırır. Bu yordamı her gün tarafından yürütülen mdw_purge_data SQL Serverbelirtilen örneği ile ilişkili Aracısı iş yönetimi veri ambar karşı. Bu saklı yordam, bir isteğe bağlı Temizleme veri yönetimi veri ambardan gerçekleştirmek için kullanabilirsiniz.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

core.sp_purge_data
    [ [ @retention_days = ] retention_days ]
    [ , [ @instance_name = ] 'instance_name' ]
    [ , [ @collection_set_uid = ] 'collection_set_uid' ]
    [ , [ @duration = ] duration ]

Bağımsız değişkenler

  • @ retention_days =retention_days
    Yönetim verileri ambar tablolardaki verileri korumak için gün sayısı. Daha eski bir zaman damgası veri retention_dayskaldırıldı. retention_daysise smallint, null varsayılan. Belirtilmişse, değeri pozitif olmalıdır. BOŞ zaman, değeri valid_throughsütununda core.snapshotsGörünümü kaldırılması için uygun satırları belirler.

  • @ örnek_adı = 'instance_name'
    Koleksiyonu kümesi örneğinin adı. instance_nameise sysname, null varsayılan.

    instance_namebilgisayar adı ve form örnek adı oluşan tam örnek adı olmalıdır computername\instancename. null varsayılan örneği yerel sunucuda kullanılır.

  • @ Thecollection_set_uidVarolan = 'collection_set_uid'
    Koleksiyonu kümesi GUID. collection_set_uidise uniqueidentifier, null varsayılan. BOŞ, tüm koleksiyonu kümeleri için eleme ROWSFROM kaldırılır. Bu değeri elde etmek için sorgu syscollector_collection_setsKatalog görünümü.

  • @duration = duration
    Sayısı itibariyle tasfiye işlemi çalıştırmanız gerekir. durationise smallint, null varsayılan. Belirtilmişse, değer sıfır veya pozitif tamsayı olmalıdır. null, operasyonun tüm koşullu satır kaldırılır veya işlemi elle durduruluncaya kadar çalışır.

Dönüş Kodu Değerleri

0(başarılı) veya 1(hata)

Açıklamalar

Bu yordam satırları seçer core.snapshotskaldırılması için hak görünümünü alan bir saklama dönemi. Dan kaldırılması için gerekli niteliklere sahip tüm satırlar silinir core.snapshots_internaltablosu. Yukarıdaki satırları silmek tüm yönetim veri ambar tabloları bir basamaklı silme eylemi tetikler. Bu toplanan verileri depolayan tüm tablolar için tanımlanan on delete cascade yan tümcesi kullanarak yapılır.

Her anlık ve ilişkili verileri açık işlem içinden silinir ve sonra kararlı. Bu nedenle, tasfiye işlemi el ile durdurulduğunda veya değeri belirtilen @ süresi aşılır, yalnızca kaydedilmemiş veriler kalır. Bu veriler, işin sonraki çalıştırdığında kaldırılabilir.

Yordam yönetimi veri ambar veritabanı bağlamında yürütülmelidir.

İzinler

Üyelik mdw_admin(ile execute izni) sabit veritabanı rolü.

Örnekler

A.Parametre olmadan çalışan sp_purge_data

Aşağıdaki örnek yürütür core.sp_purge_dataherhangi bir parametre belirtmeden. Bu nedenle, varsayılan değeri null ile ilgili davranışı bütün parametreler için kullanılır.

USE <management_data_warehouse>;
EXECUTE core.sp_purge_data;
GO

USE <management_data_warehouse>;
EXECUTE core.sp_purge_data;
GO

B.Alıkoyma ve süre değerlerini belirtme

Aşağıdaki örnek 7 günden daha eski olan yönetim veri ambar verileri kaldırır. Ayrıca, @ süresi parametresi belirtilen işlem 5 dakikadan uzun çalışması.

USE <management_data_warehouse>;
EXECUTE core.sp_purge_data @retention_days = 7, @duration = 5;
GO

USE <management_data_warehouse>;
EXECUTE core.sp_purge_data @retention_days = 7, @duration = 5;
GO

C.Bir örnek adı ve koleksiyonu kümesi belirtme

Aşağıdaki örnek üzerinde belirtilen örneği verilen toplama için yönetim veri ambar verileri kaldırır SQL Server. Çünkü @ retention_days belirtilmemiş, değeri valid_throughsütununda core.snapshotsGörünümü kaldırılması için uygun satırları koleksiyonu kümesi belirlemek için kullanılır.

USE <management_data_warehouse>;
GO
-- Get the collection set unique identifier for the Disk Usage system collection set.
DECLARE @disk_usage_collection_set_uid uniqueidentifier = (SELECT collection_set_uid 
    FROM msdb.dbo.syscollector_collection_sets WHERE name = N'Disk Usage'); 

EXECUTE core.sp_purge_data @instance_name = @@SERVERNAME, @collection_set_uid = @disk_usage_collection_set_uid;
GO

USE <management_data_warehouse>;
GO
-- Get the collection set unique identifier for the Disk Usage system collection set.
DECLARE @disk_usage_collection_set_uid uniqueidentifier = (SELECT collection_set_uid 
    FROM msdb.dbo.syscollector_collection_sets WHERE name = N'Disk Usage'); 

EXECUTE core.sp_purge_data @instance_name = @@SERVERNAME, @collection_set_uid = @disk_usage_collection_set_uid;
GO

Ayrıca bkz.

Başvuru

Sistem saklı yordamları (Transact-sql)

Veri toplayıcısı depolanan yordamlar (Transact-sql)