Condividi tramite


Rimuovere filegroup obsoleti (SQL Server)

Si applica a:SQL Server

Questo argomento descrive come rimuovere filegroup inattivi in SQL Server usando SQL Server Management Studio o Transact-SQL.

Contenuto dell'articolo

Prima di iniziare

Limitazioni e restrizioni

  • Le informazioni in questo argomento sono rilevanti per i database SQL Server che contengono più file o filegroup e, nel modello semplice, solo per i filegroup di sola lettura.

  • Tutti i file di un filegroup diventano non funzionanti quando un filegroup offline viene rimosso.

Consigli

  • Se non sarà mai necessario ripristinare un filegroup non ripristinato, è possibile rendere il filegroup inattivo rimuovendolo dal database. Il filegroup inattivo non potrà mai essere ripristinato in questo database, ma i relativi metadati verranno mantenuti. Dopo che il filegroup è reso inattivo, è possibile riavviare il database. Il recupero renderà il database consistente rispetto ai filegroup ripristinati.

    Ad esempio, rendere un filegroup inattivo è un'opzione per risolvere le transazioni posticipate causate da un filegroup offline che si desidera escludere dal database. Le transazioni che sono state posticipate perché il filegroup era offline vengono spostate fuori dallo stato posticipato dopo che il filegroup diventa defunto. Per altre informazioni, vedere Transazioni posticipate (SQL Server).

Sicurezza

Autorizzazioni

È richiesta l'autorizzazione ALTER per il database.

Utilizzo di SQL Server Management Studio

Per rimuovere filegroup obsoleti

  1. In Esplora oggetticonnettersi a un'istanza del motore di database di SQL Server e, successivamente, espanderla.

  2. Espandere Database, fare clic con il pulsante destro del mouse sul database da cui eliminare il file e quindi scegliere Proprietà.

  3. Selezionare la pagina File .

  4. Nella griglia File di database selezionare i file da eliminare, fare clic su Rimuovie quindi su OK.

  5. Fare clic sulla pagina Filegroup .

  6. Nella griglia Righe selezionare il filegroup da eliminare, fare clic su Rimuovie quindi su OK.

Utilizzo di Transact-SQL

Per rimuovere filegroup obsoleti

  1. Collegarsi al motore di database.

  2. Dalla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. Nota: in questo esempio si presuppone che i file e i filegroup siano già presenti. Per creare questi oggetti, vedere l'esempio B nell'argomento Opzioni per file e filegroup ALTER DATABASE. Nel primo esempio vengono rimossi i file test1dat3 e test1dat4 dal filegroup inattivo tramite l'istruzione ALTER DATABASE con la clausola REMOVE FILE. Nel secondo esempio viene rimosso il filegroup Test1FG1inattivo tramite la clausola REMOVE FILEGROUP .

USE master;  
GO  
ALTER DATABASE AdventureWorks2022  
REMOVE FILE test1dat3 ;  
ALTER DATABASE AdventureWorks2022  
REMOVE FILE test1dat4 ;  
GO  
  
USE master;  
GO  
ALTER DATABASE AdventureWorks2022  
REMOVE FILEGROUP Test1FG1 ;  
GO  
  

Vedi anche

ALTER DATABASE: Opzioni per file e filegroup (Transact-SQL)
Transazioni posticipate (SQL Server)
Ripristini di file (modello di recupero completo)
Ripristini di file (Modello di Recupero Semplice)
Ripristino in linea (SQL Server)
Ripristino di pagine (SQL Server)
Ripristini parziali (SQL Server)