Si vous avez accès à la console ePO, il est vivement conseillé de purger les données de votre base de données ePO.
Pour plus d’informations, consultez l’article connexe
aux articles kb79561-comment purger les données de la base de données ePO à l’aide de la console ePO.
Cet article ne doit être suivi que si vous ne parvenez pas à purger les données à l’aide des tâches de maintenance de base de données fournies dans la console ePO.
Si votre base de données ePO est volumineuse et que vous devez réduire la taille, déterminez les tables que vous devez purger.
Pour obtenir de l’aide sur les étapes ci-dessous, reportez
-vous à KB67591-How to Run a SQL script fourni par support technique à la base de données ePolicy Orchestrator.
Interroger la base de données ePO
Vous pouvez interroger directement la base de données ePO pour déterminer les plus grandes tables en procédant comme suit :
- Utilisez SQL Server Management Studio pour ouvrir une fenêtre de requête et sélectionnez la base de données ePO.
- Exécutez les script suivantes et analysez les résultats. Cette script renvoie ce qui suit :
- Tables dans ePO.
- Nombre de lignes contenues dans chaque tableau.
- Espace occupé par chaque table en méga-octets. Le script répertorie les tables en fonction de leur taille dans l’ordre suivant :
Remarque : si vous utilisez ePO 5.10 , vous devez exécuter cette script sur les deux bases de données ePO.
select t.[Name] AS TableName, p.[rows],
CAST(ROUND(((SUM(a.total_pages) * 8) / 1024.00), 2) as numeric(36, 2))
as TotalSpaceMB,
CAST(ROUND(((SUM(a.total_pages) - SUM(a.used_pages)) * 8) / 1024.00, 2)
as numeric (36, 2)) as UnusedSpaceMB
from sys.tables t inner join sys.indexes i on t.OBJECT_ID = i.object_id
inner join sys.partitions p on i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
inner join sys.allocation_units a on p.partition_id = a.container_id
left outer join sys.schemas s on t.schema_id = s.schema_id
where t.[Name] not like 'dt%' AND t.is_ms_shipped = 0 AND i.OBJECT_ID > 255
group by t.[Name], s.[Name], p.[rows]
order by TotalSpaceMB desc, t.[Name];
- En fonction des résultats du script, vous pouvez purger les données à l’aide de l’une des solutions appropriées ci-dessous.
Une fois que vous avez purgé les données des tables appropriées, la base de données dispose d’un espace libre supplémentaire. Toutefois, cette action ne réduit en fait pas la taille du fichier de base de données sur la solution de stockage. Pour réduire la taille de la base de données, vous devez réduire la base de données. Cependant, il n’est généralement pas nécessaire de réduire la base de données.
Purger le journal des événements de menace
Cette solution s’applique si vous devez supprimer des données des tables suivantes :
- ATD_Events
- DC_OSS_Events
- EPCertEventMT
- EPExtendedEventMT
- EPOEvents
- EPStoryGraphInfoMT
- HIP8_EventInfo
- HIP8_IPSEventParameter
- JTIClientEventInfo
- MVEDRCustomEventMT
- MVIS_EP_ExtendedEventMT
- SCOR_Events
- VSECustomEvent
- WP_EventInfoMT
Les articles suivants fournissent des instructions détaillées sur la purge des données d’événement de menace à l’aide d’une requête SQL directe :
Purger le journal des tâches serveur
Cette solution s’applique si vous devez supprimer des données des tables suivantes :
- OrionSchedulerTaskLog
- OrionSchedulerTaskLogDetail
- EPOCoreLogMessage
- EPORepositoryLogMessage
Purger les entrées du journal des tâches serveur antérieures à la période spécifiée :
- Ouvrez SQL Server Management Studio.
- Ouvrez une fenêtre de requête et sélectionnez la base de données ePO.
- Collez cette requête dans la fenêtre de requête :
exec SP_Task_PurgeTaskLogOlderThan 'mm-dd-yyyyy';
Mettez à jour la section de la requête entre apostrophes. Remplacez-la par la date pour laquelle vous souhaitez purger les entrées du journal des tâches serveur.
Exemple : Si vous souhaitez purger toutes les entrées du journal des tâches serveur antérieures au 1er mai, 2020, la requête se présenterait comme suit :
exec SP_Task_PurgeTaskLogOlderThan '05-01-2020';
- Pour exécuter la requête, cliquez sur exécuter ou appuyez sur F5.
Remarque : Si vous purgez un grand nombre de données, cette requête peut prendre plusieurs heures.
Purger le journal des audit
Cette solution s’applique si vous devez supprimer des
OrionAuditLog données du tableau.
Pour purger les entrées du journal des tâches serveur antérieures à la période spécifiée :
- Ouvrez SQL Server Management Studio.
- Ouvrez une fenêtre de requête et sélectionnez la base de données ePO.
- Collez cette requête dans la fenêtre de requête :
declare @PurgeOlderThanDays int = ##;
--*****Do not edit below this line*****
declare @BatchSize int = 4900, @BatchDelaySeconds int = 3, @RowCount int;
set @RowCount = @BatchSize;
while (@RowCount = @BatchSize) begin
begin transaction;
delete top(@BatchSize) from OrionAuditLog
where EndTime < GetDate() - @PurgeOlderThanDays;
set @RowCount = @@ROWCOUNT;
commit transaction;
if (@RowCount = @BatchSize) waitfor delay @BatchDelaySeconds;
end
go
- Remplacez ## la première ligne du script, pour le nombre de jours pendant lesquels vous souhaitez conserver les entrées de journal audit.
Par exemple, si vous souhaitez purger toutes les entrées de journal audit datant de plus de 90 jours, la première ligne se présenterait comme suit :
declare @PurgeOlderThanDays int = 90;
- Pour exécuter la requête, cliquez sur exécuter ou appuyez sur F5.
Remarque : Si vous purgez un grand nombre de données, cette requête peut prendre plusieurs heures.
Purger les événements de produit
Cette solution s’applique si vous devez supprimer des données des tables suivantes :
- EPOProductEventsMT
- EPEEventParameters
Pour purger les événements de produit antérieurs à un laps de temps spécifié :
- Ouvrez SQL Server Management Studio.
- Ouvrez une fenêtre de requête et sélectionnez la base de données ePO.
- Collez cette requête dans la fenêtre de requête :
declare @PurgeOlderThanDays int = ##;
-- DO NOT EDIT BELOW THIS LINE
declare @BatchSize int = 4900, @BatchDelaySeconds int = 3, @rowcount int = 1;
while (@rowcount > 0)
begin
begin transaction;
delete top(@BatchSize) from EPOProductEventsMT
where ReceivedUTC < GetDate() - @PurgeOlderThanDays;
set @rowcount = @@ROWCOUNT;
commit transaction;
If @rowcount > 0 waitfor delay @BatchDelaySeconds;
end go
- Pour indiquer le nombre de jours pendant lesquels vous souhaitez conserver les événements de produit, remplacez ## la première ligne du script.
Par exemple, si vous souhaitez purger tous les événements de produit datant de plus de 90 jours, la première ligne se présenterait comme suit :
declare @PurgeOlderThanDays int = 90 ;
- Pour exécuter la requête, cliquez sur exécuter ou appuyez sur F5.
Remarque : Si vous purgez un grand nombre de données, cette requête peut prendre plusieurs heures.
Réduisez la base de données
importante : lorsque vous purgez des données, cela ne réduit pas réellement la taille de la base de données sur le disque. Pour réduire la taille, vous devez exécuter une commande de réduction sur la base de données. Normalement, il n’est pas nécessaire d’exécuter une opération de réduction sur la base de données ePO. Tenez compte des points suivants avant de continuer :
- La réduction de la base de données ePO n’est pas recommandée ni nécessaire pour qu’ePO puisse fonctionner.
- La réduction des fichiers de base de données ( .MDF ) et ( .NDF ) peut augmenter la fragmentation des index et provoquer un ralentissement de l’exécution des requêtes.
- Une fois que vous avez réduit les fichiers de base de données, si la base de données doit être développée pour accueillir de nouvelles données, le SQL Server verrouille les fichiers pendant la croissance. Cela peut présenter des problèmes de performances avec l'application qui utilise la base de données lors de l’insertion des nouvelles données.
Suivez les instructions ci-dessous dans les cas suivants :
- La taille de votre base de données est devenue inhabituelle pour une raison que vous avez corrigée.
Et
- Vous devez effectuer une opération de réduction ponctuelle pour ramener la base de données à sa taille normale.
- Utilisez SQL Server Management Studio pour ouvrir une fenêtre de requête et sélectionnez la base de données que vous essayez de réduire.
Remarque : La plupart des tables résident dans la base de données ePO principale. Mais dans ePO 5.10 , le ePOEvents tableau (uniquement) est inclus dans la base de données des événements.
- Collez l’instruction SQL suivante dans la fenêtre requête :
Avertissement : le fichier journal des transactions SQL (. ldf) peut croître jusqu’à cinq fois la taille de la base de données lors de l’exécution de la commande. Assurez-vous que vous disposez de suffisamment d’espace disque libre avant d’utiliser cette commande.
dbcc shrinkdatabase ('ePO_DatabaseName')
go
- Cliquez sur exécuter ou appuyez sur F5.