SQL Server : nécessité de réduire après réindexation

Lors de la reconstruction des index, la taille de vos fichiers de données (.MDF) et des journaux de transactions (.LDF) peut connaître un accroissement spectaculaire. Il convient donc d’en réduire la taille après que la réindexation est terminée.

SQL Server : nécessité de réduire après réindexationLa séquence à appliquer en la matière est de :

  1. désactiver le mode de récupération complet sur la base de données en passant en mode simple,
  2. reconstruire les index,
  3. réduire les fichiers de la bases de données (data et journaux de transactions),
  4. réactiver le mode de récupération complet,
  5. faire une sauvegarde complète.

Le script de maintenance d’une base de données SQL Server

BEGIN
    USE master;
    --Mode simple
    ALTER DATABASE ma_database SET RECOVERY SIMPLE WITH NO_WAIT;
    USE ma_database;
    --Réindexation : on suppose que les tables sont dans le schém dbo et que les tables n'ont pas d'espace ou de caractères spéciaux dans leur nom.
    DECLARE curs_it CURSOR FOR 
        SELECT 
            i.name i_name,
            t.name t_name
        FROM 
            sys.indexes i 
            INNER JOIN sys.tables t
            ON i.object_id=t.object_id;
    OPEN curs_it;
    DECLARE @indexname sysname;
    DECLARE @tablename sysname;
    FETCH NEXT FROM curs_it INTO @indexname, @tablename;
    WHILE (@@FETCH_STATUS <> -1)
    BEGIN;
         EXECUTE ('ALTER INDEX ' + @indexname + ' ON dbo.' + @tablename + ' REBUILD;');
         FETCH NEXT FROM curs_it INTO @indexname, @tablename;
    END;
    CLOSE curs_it ;
    DEALLOCATE curs_it;
    --Réduction
    DBCC SHRINKDATABASE('ma_database', 5 );
    --Mode complet
    ALTER DATABASE ma_database SET RECOVERY FULL WITH NO_WAIT;
    BACKUP DATABASE ma_database TO  DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Backup\ma_database.bak' WITH  RETAINDAYS = 7, NOFORMAT, NOINIT,  NAME = 'ma_database', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
END
GO

Base de données  / Bases de données Formateur SQL Server SQL Server 

Commentaires

Pas encore de commentaire.

Laisser un commentaire

(requis)

(requis)