
Планы обслуживания можно использовать для планирования задач, необходимых для проверки работы базы данных, таких как поддержание небольшого размера базы данных и файл журнала транзакций и проверка базы данных на наличие несоответствий. Autodesk рекомендует выполнять такой план в нерабочее время хотя бы раз в неделю.
В среде связанных рабочих групп выполнение плана должно быть настроено на каждом сервере SQL Server.
Часть задач администраторов необходимо регулярно проверять для успешного выполнения плана.
Если план был настроен для предыдущей версии сервера хранилища, убедитесь, что план проверен и обновлен в соответствии с этой статьей.
Следующие шаги являются универсальными для всех версий SQL, используемых на сервере хранилища (SQL Express и Full SQL). Полный перечень поддерживаемых систем управления базами данных представлен в файле ознакомительных сведений.

Создание плана обслуживания для Full SQLПланы обслуживания можно использовать для планирования задач, которые требуется выполнить, чтобы проверить правильность работы базы данных, например поддержание небольшого размера базы данных и файл журнала транзакций и проверка базы данных на наличие несоответствий.
SQL Standard/Enterprise 2008 и 2008 R2

Серые ячейки указывают на значения по умолчанию. Если их значений отличаются от указанных выше, их следует настроить в соответствии с приведенной таблицей.











Создание сценария обслуживания для Microsoft SQL ExpressMicrosoft SQL Express не позволяет создать план обслуживания в SQL Server Management Studio Express. Кроме того, в SQL 2008 модель безопасности отличается от SQL 2005. Также необходимо убедиться, что пользователь операционной системы (Windows), запустивший план обслуживания SQL, является администратором.
Изменения tempdb в командной строке
Как было отмечено ранее в данном разделе, если программа SQL Server Management Studio не установлена, изменения базы данных tempdb можно осуществить в командной строке, выполнив следующие действия.
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 )"

Скопируйте сценарий ниже и вставьте его в новый файл, сохраненный как VaultMaintenance.bat.
Ниже приведен пример выполнения пакетного файла в корневом каталоге диска C:\ для базы данных с именем Vault с выводом результатов в текстовый файл.
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.