Les plans de maintenance peuvent être utilisés pour planifier les tâches requises pour s'assurer que la base de données fonctionne correctement. Ils permettent, par exemple, de conserver une base de données et un fichier journal de transaction de petite taille et de vérifier les incohérences dans la base de données. Autodesk recommande que le plan soit lancé au moins une fois par semaine, en dehors des heures de bureau.
Dans un environnement de groupe de travail connecté, il doit être configuré sur chaque serveur SQL.
Une partie des tâches de l'administrateur consiste à vérifier régulièrement que le plan s'exécute correctement.
Si le plan a été configuré pour une ancienne version de Vault Server, intégrez le contenu de cet article au plan.
Les étapes suivantes sont universelles et s'appliquent à toutes les versions de SQL utilisées sur Vault Server (Express et Full SQL). La liste complète des moteurs de base de données pris en charge se trouve dans le fichier Readme.
Les plans de maintenance peuvent être utilisés pour planifier les tâches requises pour s'assurer que la base de données fonctionne correctement. Ils permettent, par exemple, de maintenir une base de données et un fichier journal de transaction de petite taille et de vérifier les incohérences dans la base de données.
SQL Standard ou Enterprise 2008 et 2008 R2
Les cellules grises désignent les valeurs par défaut et doivent être définies sur les paramètres ci-dessus si elles sont différentes.
Microsoft SQL Express ne vous permet pas de créer de plan de maintenance dans SQL Server Management Studio Express. La version SQL 2008 disposait en outre d'un changement de modèle de sécurité à partir de la version SQL 2005. Vérifiez que l'utilisateur du système d'exploitation (Windows) qui exécute le plan de maintenance de SQL dispose du rôle d'administrateur système dans SQL.
Modifications Tempdb via l'invite de commande
Comme noté précédemment dans cette section, si SQL Server Management Studio n'est pas installé sur votre ordinateur, vous pouvez poursuivre les modifications sur la base de données tempdb à l'aide de l'invite de commande, en procédant comme indiqué ci-dessous :
SQLCMD -E -S".\AutodeskVault" -Q "ALTER DATABASE [tempdb] SET COMPATIBILITY_LEVEL = 100"
SQLCMD -E -S ".\AutodeskVault" -Q "ALTER DATABASE [tempdb] MODIFY FILE ( NAME = N'tempdev', SIZE = 1024MB, FILEGROWTH = 100MB)"
SQLCMD -E -S ".\AutodeskVault" -Q "ALTER DATABASE [tempdb] MODIFY FILE ( NAME = N'templog', SIZE = 1024MB )"
SQLCMD -E -S ".\AutodeskVault" -Q " ALTER DATABASE [tempdb] ADD FILE ( NAME = N'tempdev_2', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.AUTODESKVAULT\MSSQL\DATA\tempdev_2.ndf', SIZE = 1024MB, FILEGROWTH = 100MB)"
SQLCMD -E -S ".\AutodeskVault" -Q "ALTER DATABASE [tempdb] MODIFY FILE ( NAME = N'templog', SIZE = 2048MB )"
Copiez le script ci-dessous et collez-le dans un nouveau fichier enregistré sous VaultMaintenance.bat.
Vous trouverez ci-dessous un exemple expliquant comment exécuter le fichier à partir de la racine du C:\ par rapport à une base de données appelée Coffre-fort et sortir les résultats sous forme de fichier texte.
C:\VaultMaintenance.bat Vault > results.txt
REM This begins the maintenance plan. @echo off if "%1"=="" goto NOPARAM set VAULTNAME=[%1] set VAULTLOG=[%1_log] @echo Setting %VAULTNAME% database compatibility to 100 sqlcmd -E -S ".\AutodeskVault" -Q "ALTER DATABASE %VAULTNAME% SET COMPATIBILITY_LEVEL = 100" @echo Setting %VAULTNAME% database recovery model to simple... sqlcmd -E -S ".\AutodeskVault" -Q "ALTER DATABASE %VAULTNAME% SET RECOVERY SIMPLE" @echo Setting %VAULTNAME% database Autogrowth value... sqlcmd -E -S ".\AutodeskVault" -Q "ALTER DATABASE %VAULTNAME% MODIFY FILE (NAME=%VAULTNAME%, FILEGROWTH=100MB)" @echo Setting %VAULTNAME% database Log filesize... sqlcmd -E -S ".\AutodeskVault" -Q "ALTER DATABASE %VAULTNAME% MODIFY FILE ( NAME = %VAULTLOG%, SIZE = 512000KB )" @echo Setting %VAULTNAME% database Autoclose to false... sqlcmd -E -S ".\AutodeskVault" -Q "ALTER DATABASE %VAULTNAME% SET AUTO_CLOSE OFF WITH NO_WAIT" @echo Reindexing %VAULTNAME% database... sqlcmd -E -S ".\AutodeskVault" -Q "USE %VAULTNAME% DECLARE tableCursor CURSOR FOR SELECT NAME FROM sysobjects WHERE xtype in('U') DECLARE @tableName nvarchar(128) OPEN tableCursor FETCH NEXT FROM tableCursor INTO @tableName WHILE @@FETCH_STATUS = 0 BEGIN DBCC DBREINDEX(@tableName, '') FETCH NEXT FROM tableCursor INTO @tableName END CLOSE tableCursor DEALLOCATE tableCursor" @echo Updating Statistics on %VAULTNAME% database... sqlcmd -E -S ".\AutodeskVault" -Q "USE %VAULTNAME% Exec sp_MSForEachTable 'Update Statistics ? WITH FULLSCAN'" goto EXIT :NOPARAM echo [FAIL] Please indicate Vault database pause :EXIT REM This ends the maintenance plan.