Планы обслуживания можно использовать для планирования задач, обеспечивающих стабильную работу базы данных, таких как минимизация размера базы данных и файла журнала транзакций и проверка базы данных на наличие несоответствий.
Autodesk рекомендует выполнять такой план в нерабочее время хотя бы раз в неделю.
В среде связанных рабочих групп выполнение плана должно быть настроено на каждом сервере SQL Server.
В задачи администраторов должна входить регулярная проверка успешного выполнения плана.
Если план был настроен для предыдущей версии сервера хранилища, убедитесь, что план проверен и обновлен в соответствии с этой статьей.
Следующие шаги являются универсальными для всех версий SQL, используемых в Vault Server (SQL Express и Full SQL). Полный перечень поддерживаемых систем управления базами данных представлен в файле ознакомительных сведений.
Прим.: Обратите внимание, что если используется SQL Express без SQL Management Studio, следующие шаги можно выполнить в командной строке с помощью сценариев, описанных в разделе «Создание сценария обслуживания для Microsoft SQL Express», или можно установить программу SQL Management Studio for Express, доступную на веб-сайте Microsoft.
- Войдите в SQL Management Studio.
- Разверните узел «Базы данных» и «Системные базы данных».
- Щелкните правой кнопкой tempdb и выберите «Свойства».
- Выберите страницу файлов.
- При использовании многоядерной системы следует настроить дополнительные файлы данных с помощью инструкции ниже. При использовании одноядерной системы можно перейти к шагу D ниже.
- Количество файлов данных должно соответствовать количеству доступных логических/виртуальных процессоров. Например, если на компьютере установлено 12 логических процессоров, то должен присутствовать 1 файл MDF и 11 файлов NDF. Если ограничен объем свободного пространства, то вместо 1024 МБ можно использовать размер 512 МБ.
Примечание. При использовании SQL 2016 или более поздней версии количество файлов данных по умолчанию будет меньше 8 или соответствовать количеству логических ядер, определенному при настройке. При необходимости значение может быть увеличено с учетом требований конкретной рабочей нагрузки. Имена дополнительных файлов данных будут соответствовать соглашению об именовании tempdb_mssql_#.ndf, где # означает порядковое число каждого добавленного файла.
- Для добавления дополнительных файлов данных нажмите кнопку «Добавить» .
- При необходимости присвойте новым файлам имена temp2, temp3 и т. д.
- Задайте размер каждого файла данных — 1024 МБ. Если используется всего 8 файлов данных, можно использовать значение 512 МБ.
- Задайте для параметра «Авторасширение» значение «100 МБ» и неограниченное увеличение для каждого файла данных.
- Задайте файл журнала LDF, общего для всех файлов данных. (Например, при наличии двух файлов данных для LDF должен быть установлен размер 2048 МБ.)
- На странице «Параметры» установите для параметра «Уровень совместимости» значение SQL Server 2016 (130) для пользовательской базы данных, KMV и других баз данных Vault. Системные базы данных не определяются Autodesk, и в целях безопасности их следует оставить на уровне совместимости по умолчанию.
- Нажмите кнопку «ОК».
Создание плана обслуживания для Full SQL
Планы обслуживания можно использовать для планирования задач, обеспечивающих стабильную работу базы данных, таких как минимизация размеров базы данных и файла журнала транзакций и проверка базы данных на наличие несоответствий.
Прим.: Эти параметры рекомендованы Autodesk и должны быть настроены автоматически для новых установок. При переносе из более ранней версии Vault Server эти параметры не задаются принудительно, так как они могли быть изменены администратором преднамеренно.
SQL Standard/Enterprise
- Перед продолжением убедитесь, что для хранилищ были созданы резервные копии с помощью Autodesk Vault Server Console.
- Убедитесь, что все пользователи отключились от сервера хранилища.
- На панели управления дважды щелкните «Администрирование», а затем дважды щелкните значок «Службы».
- Найдите службу SQL Server Agent (AUTODESKVAULT).
- Щелкните правой кнопкой мыши агент SQL-сервера (AUTODESKVAULT) и выберите «Свойства».
- Измените тип запуска на автоматический и запустите службу.
- Откройте Microsoft SQL Management Studio и подключитесь к экземпляру AutodeskVault. В качестве имени сервера введите <ИмяКомпьютера>\AUTODESKVAULT и нажмите «Соединить».
- Щелкните правой кнопкой мыши базу данных Vault и выберите «Свойства».
- На странице файлов задайте:
- для параметра «Авторасширение» для всех баз данных <Vault> значение 100 МБ и неограниченное увеличение;
- для размера всех файлов типа <Vault>_log следует выбрать значение 500 МБ;
- для параметра «Авторасширение» для файлов <пользовательская_библиотека> значение 25 МБ;
- для параметра «Авторасширение» для всех файлов _log значение «На 10 процентов» и неограниченное увеличение.
Или в форме таблицы:
Логическое имя
|
Размер (МБ)
|
Авторасширение
|
KnowledgeVaultMaster
|
|
10 МБ, неограниченное увеличение
|
KnowledgeVaultMaster_log
|
|
10 процентов, неограниченное увеличение
|
<Хранилище>
|
|
100 МБ, неограниченное увеличение
|
<Хранилище >_log
|
500
|
10 процентов, неограниченное увеличение
|
<Пользовательская_библиотека>
|
|
25 МБ, неограниченное увеличение
|
<Пользовательская_библиотека>_log
|
|
10 процентов, неограниченное увеличение
|
<Стандартная_библиотека>
|
|
25 МБ, неограниченное увеличение
|
<Стандартная_библиотека>_log
|
|
10 процентов, неограниченное увеличение
|
Прим.: Пустая ячейка в таблице выше показывает, что значение по умолчанию не должно изменяться.
Серые ячейки указывают на значения по умолчанию. Если их значения отличаются от указанных выше, их следует настроить в соответствии с приведенной таблицей.
- На странице «Параметры» установите для параметра «Уровень совместимости» значение SQL Server 2016 (130) и в раскрывающемся списке «Автоматическое сжатие» выберите «Ложь».
- Выполните эти шаги для всех баз данных KnowledgeVaultMaster, Vault и Library Vault (шаги 8–10).
- Разверните папку «Управление» и выберите папку «План обслуживания».
- Щелкните правой кнопкой мыши папку «План обслуживания» и выберите «Мастер планов обслуживания». Нажмите кнопку «Далее».
- В диалоговом окне «Выбор свойств плана» в качестве имени введите «План обслуживания хранилища» и нажмите кнопку «Изменить», чтобы настроить расписание.
- В диалоговом окне «Свойства расписания задания» настройте параметры так, чтобы план выполнялся после завершения резервного копирования Autodesk Vault Server Console. В зависимости от размера набора данных это расписание может быть запущено в другой день и другое время. Задание можно запустить в субботу, чтобы определить время, которое требуется для выполнения, а затем выбрать наилучший день и время для регулярного выполнения этого задания.
- В диалоговом окне «Выбор задания технического обслуживания» установите следующие параметры.
- В диалоговом окне «Выбор порядка заданий технического обслуживания» установите следующий порядок.
- В диалоговом окне «Определение задачи проверки целостности базы данных» выберите все пользовательские базы данных из раскрывающегося списка и установите флажок «Включить индексы» и «Только физические».
- В диалоговом окне «Определение задачи перестроения индексов» выберите «Все пользовательские базы данных» из раскрывающегося списка.
- В диалоговом окне «Определение задачи обновления статистики» выберите следующие параметры:
- В диалоговом окне «Определение задачи очистки истории» выберите нужные параметры очистки.
- В диалоговом окне «Выбор параметров отчета» укажите папку для отчетов об обслуживании.
- Нажмите кнопку «Далее», а затем «Готово».
Создание сценария обслуживания для Microsoft SQL Express
Microsoft SQL Express не позволяет создать план обслуживания в SQL Server Management Studio Express.
Убедитесь, что пользователю операционной системы (Windows), запустившему план технического обслуживания SQL, назначена роль системного администратора.
Изменения tempdb в командной строке
Как было отмечено ранее в данном разделе, если программа SQL Server Management Studio не установлена, изменения базы данных tempdb можно осуществить в командной строке, выполнив следующие действия.
- Откройте командную строку от имени администратора.
- Скопируйте и вставьте каждую указанную ниже строку в командную строку и нажмите клавишу ENTER.
SQLCMD -E -S".\AutodeskVault" -Q "ALTER DATABASE [tempdb] SET COMPATIBILITY_LEVEL = 130"
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 )"
- При использовании многоядерной системы дополнительные файлы данных следует задать с помощью приведенной ниже инструкции. ** Примечание. Системный путь к файлам, используемый в поле «FILENAME =», должен вести к тому же расположению, где находится папка данных SQL. В приведенном ниже примере это C:\Program Files\Microsoft SQL Server\MSSQL15.AUTODESKVAULT\MSSQL\DATA. Возможно, потребуется изменить сценарий, указав правильный путь.
- Количество файлов данных должно соответствовать количеству доступных логических/виртуальных процессоров. Например, если на компьютере установлено 12 логических процессоров, то должен присутствовать 1 файл MDF и 11 файлов NDF. Если ограничен объем свободного пространства, то вместо 1024 МБ можно использовать размер 512 МБ.
Примечание. При использовании SQL 2016 или более поздней версии количество файлов данных по умолчанию будет меньше 8 или соответствовать количеству логических ядер, определенному при настройке. При необходимости значение может быть увеличено с учетом требований конкретной рабочей нагрузки. Имена дополнительных файлов данных будут соответствовать соглашению об именовании tempdb_mssql_#.ndf, где # означает порядковое число каждого добавленного файла.
SQLCMD -E -S ".\AutodeskVault" -Q " ALTER DATABASE [tempdb] ADD FILE ( NAME =
N'tempdev_2', FILENAME = N'C:\Program Files\Microsoft SQL
Server\MSSQL15.AUTODESKVAULT\MSSQL\DATA\tempdev_2.ndf', SIZE = 1024MB,
FILEGROWTH = 100MB)"
- Если нужно создать дополнительные файлы данных, просто измените приведенный выше пример на tempdev_3 и т. п., как для NAME, так и для FILENAME.
- Задайте файл журнала LDF, общего для всех файлов данных. (Например, при наличии двух файлов данных для LDF должен быть установлен размер 2048 МБ.)
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
Прим.: При копировании из этого документа и последующей вставке требуется восстановление разрывов строки. Также обратите внимание, что пользователь, выполняющий план обслуживания, должен иметь соответствующие права доступа в SQL. Эту процедуру можно выполнить во время или после установки SQL.
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 130
sqlcmd -E -S ".\AutodeskVault" -Q "ALTER DATABASE %VAULTNAME% SET
COMPATIBILITY_LEVEL = 130"
@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.