Istruzioni RESTORE - FILELISTONLY (Transact-SQL)

Si applica a:SQL ServerIstanza gestita di SQL di Azure

Restituisce un set di risultati contenente un elenco dei file di database e di log contenuti nel set di backup in SQL Server.

Nota

Per le descrizioni degli argomenti, vedere Argomenti RESTORE (Transact-SQL).

Convenzioni di sintassi Transact-SQL

Sintassi

RESTORE FILELISTONLY   
FROM <backup_device>   
[ WITH   
 {  
--Backup Set Options  
   FILE = { backup_set_file_number | @backup_set_file_number }   
 | PASSWORD = { password | @password_variable }   
 | [ METADATA_ONLY | SNAPSHOT ] [ DBNAME = { database_name | @database_name_variable } ]
  
--Media Set Options  
 | MEDIANAME = { media_name | @media_name_variable }   
 | MEDIAPASSWORD = { mediapassword | @mediapassword_variable }  
  
--Error Management Options  
 | { CHECKSUM | NO_CHECKSUM }   
 | { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }  
  
--Tape Options  
 | { REWIND | NOREWIND }   
 | { UNLOAD | NOUNLOAD }    
 } [ ,...n ]  
]  
[;]  
  
<backup_device> ::=  
{   
   { logical_backup_device_name |  
      @logical_backup_device_name_var }  
   | { DISK | TAPE | URL } = { 'physical_backup_device_name' |  
       @physical_backup_device_name_var }   
}  

Nota

URL è il formato usato per specificare il percorso e il nome file per Archiviazione BLOB di Microsoft Azure ed è supportato a partire da SQL Server 2012 (11.x) SP1 CU2. Anche se l'archiviazione di Microsoft Azure è un servizio, l'implementazione è simile a quella per dischi e nastri, in modo da consentire un'esperienza di ripristino coerente e trasparente per tutti e tre i dispositivi.

Argomenti

Per le descrizioni degli argomenti RESTORE FILELISTONLY, vedere Argomenti RESTORE (Transact-SQL).

Set di risultati

Un client può utilizzare RESTORE FILELISTONLY per ottenere un elenco dei file contenuti in un set di backup. Queste informazioni vengono restituite come set di risultati contenente una riga per ogni file.

Nome colonna Tipo di dati Descrizione
LogicalName nvarchar(128) Nome logico del file.
PhysicalName nvarchar(260) Nome fisico o del sistema operativo del file.
Type char(1) Tipo di file. I tipi possibili sono:

L = file di log di Microsoft SQL Server

D = file di dati di SQL Server

F = catalogo full text

S = contenitore OLTP FileStream, FileTable o In-Memory
FileGroupName nvarchar(128) NULL Nome del filegroup che contiene il file.
Dimensione numeric(20,0) Dimensioni correnti in byte.
MaxSize numeric(20,0) Dimensioni massime consentite in byte.
FileID bigint Identificatore del file, univoco all'interno del database.
CreateLSN numeric(25,0) Numero di sequenza del file di log in corrispondenza del quale il file è stato creato.
DropLSN numeric(25,0) NULL Numero di sequenza del log in corrispondenza del quale è stato eliminato il file. Se il file non è stato eliminato, questo valore è NULL.
UniqueID uniqueidentifier Identificatore univoco globale del file.
ReadOnlyLSN numeric(25,0) NULL Numero di sequenza del file di log in corrispondenza del quale la modalità del filegroup contenente il file è passata da lettura/scrittura a sola lettura (la modifica più recente).
ReadWriteLSN numeric(25,0) NULL Numero di sequenza del file di log in corrispondenza del quale la modalità del filegroup contenente il file è passata da sola lettura a lettura/scrittura (la modifica più recente).
BackupSizeInBytes bigint Dimensioni in byte del backup di questo file.
SourceBlockSize int Dimensioni in byte del blocco del dispositivo fisico contenente il file, non del dispositivo di backup.
FileGroupID int ID del filegroup.
LogGroupGUID uniqueidentifier NULL NULL.
DifferentialBaseLSN numeric(25,0) NULL Per i backup differenziali le modifiche con numeri di sequenza del file di log maggiori o uguali a DifferentialBaseLSN sono incluse nel backup differenziale.

Per gli altri tipi di backup il valore è NULL.
DifferentialBaseGUID uniqueidentifier NULL Per i backup differenziali, identificatore univoco della base differenziale.

Per gli altri tipi di backup il valore è NULL.
IsReadOnly bit 1 = Il campo è di sola lettura.
IsPresent bit 1 = Il file è incluso nel backup.
TDEThumbprint varbinary(32) NULL Indica l'identificazione digitale della chiave di crittografia del database. L'identificazione digitale del componente di crittografia è un hash SHA-1 del certificato con cui viene crittografata la chiave. Per altre informazioni sulla crittografia trasparente del database, vedere Transparent Data Encryption (TDE).
SnapshotURL nvarchar(360) NULL Si applica a: SQL Server (SQL Server 2016 (13.x) (CU1) fino alla versione corrente.

URL dello snapshot Azure del file di database contenuto nel backup FILE_SNAPSHOT. Restituisce NULL se non è presente un backup FILE_SNAPSHOT.

Sicurezza

Per un'operazione di backup è possibile specificare password per un set di supporti o un set di backup oppure per entrambi. Se è stata impostata una password per un set di supporti o un set di backup, la password o le password corrette devono essere specificate nell'istruzione RESTORE. Queste password impediscono operazioni di ripristino non autorizzate e l'aggiunta non autorizzata di set di backup ai supporti tramite gli strumenti di Microsoft SQL Server. Tuttavia, la password non impedisce la sovrascrittura dei supporti tramite l'opzione FORMAT dell'istruzione BACKUP.

Importante

Il livello di protezione garantito da questa password è vulnerabile. Lo scopo è impedire un ripristino non corretto da parte di utenti autorizzati o non autorizzati mediante gli strumenti di SQL Server. Non impedisce la lettura dei dati di backup eseguita con altri mezzi o la sostituzione della password. Questa funzionalità verrà rimossa nelle versioni future di SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Per ottenere un livello di protezione adeguato dei backup è consigliabile archiviare i nastri di backup in un luogo sicuro oppure eseguire il backup in file su disco protetti da elenchi di controllo di accesso (ACL) appropriati. Gli elenchi di controllo di accesso devono essere impostati a livello della directory radice in cui vengono creati i backup.

Autorizzazioni

A partire da SQL Server 2008 (10.0.x), per ottenere informazioni su un set di backup o un dispositivo di backup è necessaria l'autorizzazione CREATE DATABA edizione Standard. Per altre informazioni, vedere GRANT - autorizzazioni per database (Transact-SQL).

Esempi

Nell'esempio seguente vengono restituite le informazioni contenute in un dispositivo di backup denominato AdventureWorksBackups. Nell'esempio viene utilizzata l'opzione FILE per specificare il secondo set di backup nel dispositivo.

RESTORE FILELISTONLY FROM AdventureWorksBackups   
   WITH FILE=2;  
GO  

Vedi anche

BACKUP (Transact-SQL)
Set di supporti, gruppi di supporti e set di backup (SQL Server)
RESTORE REWINDONLY (Transact-SQL)
RESTORE VERIFYONLY (Transact-SQL)
RESTORE (Transact-SQL)
Informazioni sulla cronologia e sull'intestazione del backup (SQL Server)