Istruzioni RESTORE - FILELISTONLY (Transact-SQL)
Si applica a: SQL Server Istanza 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 relative alla 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 DATABASE. 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)