Plan de maintenance de la base de données


Par défaut Systancia Access n’intègre aucun plan de maintenance pour la base de données.

Cela peut être mis en place facilement via une requête SQL que nous allons exécuter tous les jours afin de purger les audits.

Avant de commencer, il est nécessaire de s’assurer que le service SQLSERVERAGENT démarre automatiquement sur le serveur de base de données:

Une fois cela effectué, nous allons nous connecter sur notre serveur SQL via SQL Server Management Studio

Nous allons ensuite créer un nouveau travail:

On nomme cette nouvelle tâche (par exemple ACCESS_DB_PURGE) puis nous allons dans l’onglet étapes.

 On crée une nouvelle étape qu’on nomme PURGE avec la commande suivante:

use ACCESS /* METTRE LE NOM DE VOTRE BASE DE DONNÉE */

GO

DECLARE @retentionDays INT

/* Ajuter le nombre de jour de rétention des audits */
SET @retentionDays = 30

/* SIZE OF BATCH - DO NOT MODIFY */

DECLARE @batch INT

SET @batch = 10000

/* START OF COUNTER - DO NOT MODIFY */

DECLARE @cnt INT

SET @cnt = 0

/* NUMBER OF BATCHES - DO NOT MODIFY */

DECLARE @cntmax INT

SET @cntmax = 100

/* EXECUTION DE L ACTION */

WHILE @cnt < @cntmax

BEGIN

SET @cnt = @cnt + 1

DELETE TOP(@batch) FROM ssox_audit WHERE date_client < GETDATE() - @retentionDays /* ACTUAL DELETE QUERY - ADJUST */

END

On valide la création de l’étape puis on se rend sur l’onglet planification.

On définit la période quand l'on souhaite l'activation de cette tâche, dans cet exemple on définit qu'on souhaite l'exécuter tous les jours à 22h

  Après l'exécution de la tâche, on peut voir que les audits qui ont plus de 30 jours d'ancienneté sont supprimés de la base:

 

 


This topic has been closed for comments