Za pomocą planów konserwacji można tworzyć zaplanowane zadania, które są wymagane do zapewnienia sprawnego działania bazy danych, na przykład utrzymywanie niewielkich rozmiarów bazy danych i pliku dziennika transakcji oraz sprawdzanie bazy danych pod kątem niespójności.
Firma Autodesk zaleca uruchamianie planu przynajmniej raz na tydzień poza godzinami pracy biura.
W środowisku połączonych grup roboczych należy go skonfigurować na każdym serwerze SQL Server.
Do zadań administratorów należy regularne sprawdzanie, czy plan został wykonany pomyślnie.
Jeśli plan został skonfigurowany dla wcześniejszej wersji serwera Vault, należy go sprawdzić i zaktualizować zgodnie z tym artykułem.
Poniższa procedura jest taka sama dla wszystkich wersji środowiska SQL używanego z serwerem Vault (Express oraz Full SQL). Pełna lista obsługiwanych procesorów baz danych znajduje się w pliku Readme danego produktu.
2. Kliknij przycisk Add (Dodaj), aby dodać kolejne pliki danych.
3. Jeśli to konieczne, nazwij nowe pliki temp2, temp3, ....
4. Ustaw rozmiar każdego pliku danych na 1024 MB. Jeśli w sumie używanych jest 8 plików danych, rozmiar może wynosić 512 MB.
5. Ustaw opcję Autogrowth (Automatyczne zwiększanie rozmiaru) na 100 MB i nieograniczone zwiększanie dla każdego pliku danych.
6. Ustaw rozmiar pliku dziennika LDF, aby był odpowiedni dla łącznej liczby plików danych (przykład: jeśli łącznie są dwa pliki danych, wynikowy plik LDF powinien mieć ustawiony rozmiar 2048 MB).

Planów konserwacji można używać do tworzenia harmonogramu zadań zapewniających sprawne działanie bazy danych, na przykład służących utrzymaniu niewielkiego rozmiaru bazy danych i pliku dziennika transakcji oraz sprawdzaniu bazy danych pod kątem niespójności.
SQL Standard/Enterprise

- wartość Autogrowth (Automatyczne zwiększanie rozmiaru) dla wszystkich baz danych <Vault> na „by 100MB, unrestricted growth” (o 100 MB, nieograniczone zwiększanie);
- wartość Size (Rozmiar) dla wszystkich plików <Vault>_log na 500 MB;
- wartość Autogrowth (Automatyczne zwiększanie rozmiaru) dla plików <Custom_Library> na 25 MB;
- wartość Autogrowth (Automatyczne zwiększanie rozmiaru) dla wszystkich plików _log na „By 10 percent, unrestricted growth” (O 10 procent, nieograniczone zwiększanie).
lub w formie tabeli:
<table cellpadding="0" cellspacing="0" class="not-ruled"><colgroup><col width="28.57142857142857%"> <col width="30%"> <col width="41.42857142857142%"> </colgroup><tbody><tr class="not-ruled-heading"><th class="table-heading"><a name="GUID-1BF7003F-A559-4825-BFFD-FB97D6B18A50"></a><p class="table-heading">Nazwa logiczna</p></th><th class="table-heading"><a name="GUID-231BC906-795B-405E-8884-1569544A41F7"></a><p class="table-heading">Rozmiar (MB)</p></th><th class="table-heading"><a name="GUID-BC8C8F75-C7B1-4F73-9635-04F6FBC3A6D2"></a><p class="table-heading">Automatyczne zwiększanie rozmiaru</p></th></tr><tr class="not-ruled-odd-row"><td class="table-body"><a name="GUID-C243564C-EAAE-420F-8EC5-D26C04511FAB"></a><p class="table-body">KnowledgeVaultMaster</p></td><td class="table-body"> <a name="GUID-BB8AB4F5-598F-4BF5-9ECB-048741718130"></a><p class="table-body"></p></td><td class="table-body"><a name="GUID-A3D6331E-A19A-40AD-B6F2-F8EBFC3D1E3D"></a><p class="table-body">By 10 MB, unrestricted growth (O 10 MB, nieograniczone zwiększanie)</p></td></tr><tr class="not-ruled-even-row"><td class="table-body"><a name="GUID-A622DCCB-0C5F-4B42-9005-F9B4F5DA9F9D"></a><p class="table-body">KnowledgeVaultMaster_log</p></td><td class="table-body"> <a name="GUID-76BD87FC-D749-4CA8-9629-3B3905C79EAE"></a><p class="table-body"></p></td><td class="table-body"><a name="GUID-A894530E-5D84-4C64-9B54-26E747F7B11D"></a><p class="table-body">By 10 percent, unrestricted growth (O 10 procent, nieograniczone zwiększanie)</p></td></tr><tr class="not-ruled-odd-row"><td class="table-body"><a name="GUID-D7DCCAF3-6F3F-492A-B4DB-CA007CA6115D"></a><p class="table-body"><Vault></p></td><td class="table-body"> <a name="GUID-26B07E41-F59F-4F49-8425-F51E73BA3338"></a><p class="table-body"></p></td><td class="table-body"><a name="GUID-9A199818-107C-43D9-9BE4-8755DCDC364A"></a><p class="table-body">By 100 MB, unrestricted growth (O 100 MB, nieograniczone zwiększanie)</p></td></tr><tr class="not-ruled-even-row"><td class="table-body"><a name="GUID-5DB9BF0E-F29F-4097-A83C-710380210B78"></a><p class="table-body"><Vault>_log</p></td><td class="table-body"><a name="GUID-28DA3532-8C96-43AE-8A3D-783C9B20A7B0"></a><p class="table-body">500</p></td><td class="table-body"><a name="GUID-92DC092E-D2FE-4B55-AC7A-5DAB3B77DECE"></a><p class="table-body">By 10 percent, unrestricted growth (O 10 procent, nieograniczone zwiększanie)</p></td></tr><tr class="not-ruled-odd-row"><td class="table-body"><a name="GUID-DEBE2C9D-8448-43E9-8738-83B403DF0480"></a><p class="table-body"><Custom_Library></p></td><td class="table-body"> <a name="GUID-5CBD77D1-F5AF-4EB5-8226-1E9D26F011AF"></a><p class="table-body"></p></td><td class="table-body"><a name="GUID-7F14CAD4-99BE-479D-8D16-73917ECF7244"></a><p class="table-body">By 25 MB, unrestricted growth (O 25 MB, nieograniczone zwiększanie)</p></td></tr><tr class="not-ruled-even-row"><td class="table-body"><a name="GUID-D8B69779-4668-4A24-BB99-B34ABB7068BD"></a><p class="table-body"><Custom_Library>_log</p></td><td class="table-body"> <a name="GUID-CA5DA034-3F54-447F-8314-3730A6ABF2B1"></a><p class="table-body"></p></td><td class="table-body"><a name="GUID-073C1CFA-7AC2-4B52-B5B8-A31035DB13ED"></a><p class="table-body">By 10 percent, unrestricted growth (O 10 procent, nieograniczone zwiększanie)</p></td></tr><tr class="not-ruled-odd-row"><td class="table-body"><a name="GUID-F878689B-A11E-4FB6-ACB0-E2B7D43058FF"></a><p class="table-body"><Standard_Library></p></td><td class="table-body"> <a name="GUID-4355D925-E435-44B3-94FF-A9550443848B"></a><p class="table-body"></p></td><td class="table-body"><a name="GUID-AA11E133-4BA0-4FBA-AC4D-97B91DB632FC"></a><p class="table-body">By 25 MB, unrestricted growth (O 25 MB, nieograniczone zwiększanie)</p></td></tr><tr class="not-ruled-even-row"><td class="table-body"><a name="GUID-3EB28DBE-B0BC-4896-B748-3DB5A3806E2F"></a><p class="table-body"><Standard_Library>_log</p></td><td class="table-body"> <a name="GUID-0330585C-1017-4584-B88F-9D9E235D6A69"></a><p class="table-body"></p></td><td class="table-body"><a name="GUID-540145D1-42B5-4249-8965-387CF7044FA6"></a><p class="table-body">By 10 percent, unrestricted growth (O 10 procent, nieograniczone zwiększanie)</p></td></tr></tbody></table>
Uwaga: pusta komórka w powyższej tabeli wskazuje, że nie należy zmieniać ustawienia domyślnego.
Szare komórki wskazują wartości domyślne i należy je ustawić na powyższe wartości, jeśli są różne.









Program Microsoft SQL Express nie umożliwia utworzenia planu konserwacji za pomocą programu SQL Server Management Studio Express.
Należy się upewnić, że użytkownik systemu operacyjnego (Windows) uruchamiający plan konserwacji SQL ma przypisaną rolę administratora systemu w programie SQL Server.
Zmiany bazy danych tempdb wprowadzane z poziomu wiersza polecenia
Jak wspomniano wcześniej w tej sekcji, jeśli program SQL Server Management Studio nie jest zainstalowany, zmiany bazy danych tempdb można wprowadzić z wiersza polecenia, wykonując następujące czynności:
```
SQLCMD -E -S".\AutodeskVault" -Q "ALTER DATABASE [tempdb] SET COMPATIBILITY_LEVEL = 110"
```
```
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 )"
```
W przypadku korzystania z systemu wielordzeniowego należy skonfigurować dodatkowe pliki danych, korzystając z poniższych wytycznych. **Uwaga: ścieżka systemu plików użyta w wierszu FILENAME = powinna być taka sama jak położenie katalogu danych SQL. W poniższym przykładzie jest to C:\Program Files\Microsoft SQL Server\MSSQL15.AUTODESKVAULT\MSSQL\DATA. Należy zmodyfikować skrypt, aby zawierał prawidłową ścieżkę.
1. Liczba dostępnych procesorów logicznych/wirtualnych powinna być równa liczbie plików danych. Przykładowo, jeśli komputer ma 12 procesorów logicznych, będzie potrzebny 1 plik .mdf i 11 plików .ndf. Jeśli ważne jest miejsce na dysku, można ustawić w polu „Size” (Rozmiar) wartość 512 MB zamiast 1024 MB.
Uwaga: W przypadku programu SQL 2016 lub nowszego, plik danych będzie miał domyślnie niższą z wartości: 8 lub liczbę rdzeni logicznych wykrytych przez konfigurację. Wartość może zostać zwiększona zgodnie z wymaganiami dla określonego obciążenia roboczego. Nazwy dodatkowych plików danych będą zgodne z konwencją nazewnictwa tempdb_mssql_#.ndf, gdzie # oznacza numer porządkowy pliku dla każdego dodatkowego pliku.
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)"
2. Jeśli trzeba utworzyć dodatkowe pliki danych, wystarczy zmienić powyższy przykład, aby zawierał nazwy tempdev_3 itd., zarówno w przypadku zmiennej NAME, jak i FILENAME.
3. Ustaw plik dziennika LDF na łączny rozmiar plików danych. (Przykład: jeśli łącznie są dwa pliki danych, wynikowy plik LDF powinien mieć ustawiony rozmiar 2048 MB).
```
SQLCMD -E -S ".\AutodeskVault" -Q "ALTER DATABASE [tempdb] MODIFY FILE (
NAME = N'templog', SIZE = 2048MB )"
```
Plan konserwacji
Skopiuj poniższy skrypt i wklej go do nowego pliku zapisanego jako VaultMaintenance.bat.
W poniższym przykładzie pokazano sposób uruchamiania pliku wsadowego z katalogu głównego C:\ dla bazy danych o nazwie Vault oraz przekierowania wyników do pliku tekstowego.
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 110
sqlcmd -E -S ".\AutodeskVault" -Q "ALTER DATABASE %VAULTNAME% SET
COMPATIBILITY_LEVEL = 110"
@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.