Manutenzione del server - Parte 6: creazione di un piano di manutenzione SQL

I piani di manutenzione possono essere utilizzati per pianificare le attività necessarie a garantire un funzionamento corretto del database, ad esempio limitando le dimensioni del database e del file di registro delle transazioni e verificando l'assenza di incongruenze.

Autodesk consiglia di eseguire il piano almeno una volta a settimana al di fuori degli orari di ufficio.

In un ambiente con un gruppo di lavoro connesso, tali piani vanno configurati su ogni server SQL.

Una delle attività degli amministratori è controllare periodicamente che il piano venga eseguito correttamente.

Se il piano è stato configurato per una versione precedente del server del Vault, controllare e aggiornare il piano in conformità con questo articolo.

I passaggi riportati di seguito sono validi in tutte le versioni di SQL in uso nel server del Vault (Express e versione completa di SQL). L'elenco completo dei motori dei database supportati è disponibile nel file readme del prodotto.

Nota: Tenere presente che se si utilizza SQL Express e non si dispone di SQL Management Studio, la seguente procedura può essere completata tramite il prompt dei comandi con degli script nella sezione "Creazione di uno script di manutenzione per Microsoft SQL Express" oppure è possibile installare SQL Management Studio per Express, disponibile sul sito Web Microsoft.
  1. Effettuare il login a SQL Management Studio.

  2. Espandere Database e quindi Database di sistema.

  3. Fare clic con il pulsante destro del mouse su tempdb e selezionare Proprietà.

  4. Selezionare la pagina File.

  5. Se si utilizza un sistema multi-core, è necessario configurare ulteriori file di dati, attenendosi alle linee guida elencate di seguito. In caso di sistema single-core, passare direttamente al punto d.

    1. Il numero di file di dati deve essere uguale al numero di processori logici/virtuali disponibili. Ad esempio, se il computer dispone di 12 processori logici, saranno presenti 1 file .mdf e 11 file .ndf. Se lo spazio su disco è fondamentale, è possibile utilizzare "Dimensioni" di 512 MB anziché di 1024 MB.

      Nota: In SQL 2016 o nelle versioni successive, il file di dati assumerà di default il valore più basso di 8 o il numero di core logici rilevati dall'impostazione. Il valore può essere aumentato secondo necessità per un carico di lavoro specifico. I nomi dei file dei dati secondari seguono la convenzione di denominazione tempdb_mssql_#.ndf, dove # rappresenta l'ordinale dei file per ogni file aggiuntivo.
    2. Fare clic sul pulsante Aggiungi per aggiungere ulteriori file di dati.

    3. Assegnare ai nuovi file il nome temp2, temp3 in base alle esigenze.

    4. Impostare le dimensioni di ciascun file di dati su 1.024 MB. Se si utilizza un totale di 8 file di dati, è possibile utilizzare una dimensione iniziale di 512 MB.

    5. Impostare Aumento automatico su 100 MB, senza restrizioni di aumento per ciascun file di dati.

    6. Impostare il file di registro LDF in base al totale dei file di dati combinati. Ad esempio, se sono presenti due file di dati in totale, il file LDF risultante deve essere impostato su una dimensione di 2048 MB.

  6. Per il database degli utenti, il file KMV e altri database del Vault, impostare il livello di compatibilità su SQL Server 2012 (110) nella pagina Opzioni. I database di sistema non sono definiti da Autodesk ed è prudente lasciarli al livello di compatibilità di default.

  7. Fare clic su OK.

Creazione di un piano di manutenzione per SQL versione completa

I piani di manutenzione possono essere utilizzati per pianificare le attività necessarie a garantire un funzionamento corretto del database, ad esempio limitando le dimensioni del database e del file di registro delle transazioni e verificando l'assenza di incongruenze.

Nota: Queste impostazioni sono consigliate da Autodesk e devono essere configurate automaticamente per le nuove installazioni. In caso di migrazione da una versione precedente di Vault Server, queste impostazioni non vengono applicate in quanto potrebbero essere state modificate intenzionalmente dall'amministratore.

SQL Standard/Enterprise

  1. Prima di procedere, da Autodesk Vault Server Console verificare che sia stato effettuato il backup dei Vault.

  2. Accertarsi che tutti gli utenti siano disconnessi dal server del vault.

  3. Dal pannello di controllo, fare doppio clic su Strumenti di amministrazione, quindi sull'icona Servizi.

  4. Individuare il servizio SQL Server Agent (AUTODESKVAULT).

  5. Fare clic con il pulsante destro del mouse su SQL Server Agent (AUTODESKVAULT) e selezionare Proprietà.

  6. Modificare il tipo di avvio in Automatico, quindi avviare il servizio.

  7. Aprire Microsoft SQL Management Studio e connettersi all'istanza AutodeskVault. Utilizzare \AUTODESKVAULT come nome del server, quindi premere Connetti.

  8. Fare clic con il pulsante destro del mouse sul database del Vault e selezionare Proprietà.

  9. Nella pagina File impostare:

    • il valore Aumento automatico per tutti i database a 100 MB, con crescita illimitata
    • il valore Dimensione di tutti i file _log su 500 MB
    • il valore Aumento automatico per i file a 25 MB
    • i valori Aumento automatico tutti i file _log al 10 percento, con crescita illimitata

    Oppure, sotto forma di tabella:

    Nome logico

    Dimensione (in MB)

    Aumento automatico

    KnowledgeVaultMaster

     

    Di 10 MB, crescita illimitata

    KnowledgeVaultMaster_log

     

    Del 10 percento, crescita illimitata

    <Vault>

     

    Di 100 MB, crescita illimitata

    <Vault>_log

    500

    Del 10 percento, crescita illimitata

    <Custom_Library>

     

    Di 25 MB, crescita illimitata

    <Custom_Library>_log

     

    Del 10 percento, crescita illimitata

    <Standard_Library>

     

    Di 25 MB, crescita illimitata

    <Standard_Library>_log

     

    Del 10 percento, crescita illimitata

Nota: Una cella vuota nella precedente tabella indica che l'impostazione di default non deve essere modificata.

Le celle grigie indicano i valori di default e devono essere impostate secondo quanto specificato sopra, se sono diverse.

![](../../images/DatabaseProperties_KVM_2024.png)
  1. Nella pagina Opzioni, impostare il livello di compatibilità su SQL Server 2012 (110) e modificare l'impostazione dell'elenco a discesa di compattazione automatica su False.

  2. Ripetere gli stessi passaggi per ogni database KnowledgeVaultMaster, Vault e Vault di libreria (punti da 8 a 10).

  3. Espandere la cartella Gestione e selezionare la cartella Piano di manutenzione.

  4. Fare clic con il pulsante destro del mouse sulla cartella Piano di manutenzione e selezionare Creazione guidata piano di manutenzione. Fare clic su Avanti.

  5. Nella finestra di dialogo di selezione delle proprietà del piano immettere Vault Maintenance Plan nel campo del nome, quindi fare clic sul pulsante Modifica per impostare la pianificazione.

  6. Nella finestra di dialogo delle proprietà di pianificazione del processo, impostare il piano da eseguire dopo il completamento del backup avviato da Autodesk Vault Server Console. A seconda della dimensione del gruppo di dati, questa pianificazione potrebbe essere eseguita in un giorno o in un orario diverso della settimana. Per determinare la quantità di tempo necessaria al completamento del processo è possibile eseguirlo di sabato, quindi decidere il giorno e l'ora più indicati per eseguire il processo periodicamente.

  7. Nella finestra di dialogo Selezione attività di manutenzione, selezionare le seguenti opzioni:

  8. Nella finestra di dialogo Selezione ordine attività di manutenzione, impostare l'ordine come segue:

  9. Nella finestra di dialogo Definizione attività Controlla integrità database, selezionare Tutti i database utente nell'elenco a discesa dei database, quindi selezionare la casella di controllo accanto a "Includi indici" e "Solo fisico".

  10. Nella finestra di dialogo Definizione attività Ricostruisci indice, selezionare Tutti i database utente nell'elenco a discesa dei database.

  11. Nella finestra di dialogo Definizione attività Aggiorna statistiche, selezionare le seguenti opzioni:

  12. Nella finestra di dialogo Definizione attività Cancella cronologia, selezionare le opzioni di cancellazione in base alle necessità.

  13. Nella finestra di dialogo Selezione opzioni report, specificare la posizione dei rapporti sulla manutenzione.

  14. Fare clic su Avanti, quindi su Fine.

È possibile creare uno script di manutenzione per Microsoft SQL Express

Microsoft SQL Express non consente di creare un piano di manutenzione all'interno di SQL Server Management Studio Express.

Assicurarsi che l'utente in uso sul sistema operativo Windows in cui è in esecuzione il piano di manutenzione SQL ricopra il ruolo di amministratore di sistema all'interno di SQL.

Modifiche di Tempdb dal prompt dei comandi

Come indicato in precedenza in questa sezione, se SQL Server Management Studio non è installato, le modifiche al database tempdb possono essere completate dal prompt dei comandi attraverso la seguente procedura:

  1. Aprire il prompt dei comandi come amministratore.

  2. Copiare e incollare ogni riga riportata di seguito nel prompt dei comandi e premere INVIO.

    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 )"
  3. Se si utilizza un sistema multi-core, è necessario configurare altri file di dati utilizzando le seguenti linee guida. **Nota: Il percorso del file system utilizzato in FILENAME = deve essere lo stesso percorso della directory dei dati SQL. Nell'esempio seguente, corrisponde a C:\Programmi\Microsoft SQL Server\MSSQL15.AUTODESKVAULT\MSSQL\DATA. Si desidera modificare lo script per elencare il percorso corretto.

    1. Il numero di file di dati deve essere uguale al numero di processori logici/virtuali disponibili. Ad esempio, se il computer dispone di 12 processori logici, saranno presenti 1 file .mdf e 11 file .ndf. Se lo spazio su disco è fondamentale, è possibile utilizzare "Dimensioni" di 512 MB anziché di 1024 MB.

      Nota: In SQL 2016 o nelle versioni successive, il file di dati assumerà di default il valore più basso di 8 o il numero di core logici rilevati dall'impostazione. Il valore può essere aumentato secondo necessità per un carico di lavoro specifico. I nomi dei file dei dati secondari seguono la convenzione di denominazione tempdb_mssql_#.ndf, dove # rappresenta l'ordinale dei file per ogni file aggiuntivo.
      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. Se devono essere creati file di dati aggiuntivi, basta modificare l'esempio sopra in modo che rispecchi tempdev_3, ecc., sia in termini di NAME che di FILENAME.

    3. Impostare il file di registro LDF ad un totale di file di dati combinati. Ad esempio, in presenza di 2 file di dati totali, il file LDF risultante deve avere una dimensione iniziale di 2048 MB.

      SQLCMD -E -S ".\AutodeskVault" -Q "ALTER DATABASE [tempdb] MODIFY FILE ( 
      NAME = N'templog', SIZE = 2048MB )"

Piano di manutenzione

Copiare il seguente script e incollarlo in un nuovo file salvato come VaultMaintenance.bat.

Di seguito viene riportato un esempio di come eseguire il file batch nella directory principale di C:\ su un database con nome Vault e visualizzare i risultati in un file di testo.

C:\VaultMaintenance.bat Vault > results.txt
Nota: Se si esegue direttamente l'operazione di copia/incolla da questo documento, è necessario correggere le interruzioni di linea. Si noti inoltre che l'utente che esegue il piano di manutenzione deve disporre delle autorizzazioni per eseguirlo all'interno di SQL. Questa operazione viene eseguita durante l'installazione di SQL o successivamente.
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.