Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistema di Piattaforma Analitica (PDW)
Database SQL in Microsoft Fabric
Contiene una riga per ogni file di un database archiviata nel database stesso. Si tratta di una vista specifica per ogni database.
| Nome colonna | Tipo di dati | Descrizione |
|---|---|---|
file_id |
int | ID del file all'interno del database. |
file_guid |
uniqueidentifier | GUID del file.NULL = Il database è stato aggiornato da una versione precedente di SQL Server (valida per SQL Server 2005 e versioni precedenti). |
type |
tinyint | Tipo di file: 0 = Righe 1 = Log 2 = FILE STREAM 3 = Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future. 4 = Testo completo |
type_desc |
nvarchar(60) | Descrizione del tipo di file:ROWSLOGFILESTREAMFULLTEXT |
data_space_id |
int | Il valore può essere zero o maggiore di zero. Un valore di 0 rappresenta il file di log del database e un valore maggiore di zero rappresenta l'ID del filegroup in cui è archiviato il file di dati. |
name |
sysname | Nome logico del file nel database. |
physical_name |
nvarchar(260) | Nome del file del sistema operativo. Se il database è ospitato da una replica secondaria leggibile di un gruppo di disponibilità, physical_name indica il percorso del file del database di replica primaria. Per il percorso del file corretto di un database secondario leggibile, eseguire una query sys.sysaltfiles. |
state |
tinyint | Stato del file: 0 = ONLINE1 = RESTORING2 = RECOVERING3 = RECOVERY_PENDING4 = SUSPECT5 = Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future. 6 = OFFLINE7 = DEFUNCT |
state_desc |
nvarchar(60) | Descrizione dello stato del file:ONLINERESTORINGRECOVERINGRECOVERY_PENDINGSUSPECTOFFLINEDEFUNCTPer altre informazioni, vedere Stati del file. |
size |
int | Dimensioni del file in pagine da 8 KB. 0 = Non applicabile Per uno snapshot del database, il valore size corrisponde allo spazio massimo utilizzabile dallo snapshot per il file. Per i contenitori di filegroup FILESTREAM, le dimensioni riflettono le dimensioni usate correnti del contenitore. |
max_size |
int | Dimensioni massime del file espresse in pagine da 8 KB. 0 = Non è consentito alcun aumento. -1 = Il file può aumentare fino a quando il disco non è pieno. 268435456 = Il file di log può raggiungere una dimensione massima di 2 TB. Per i contenitori di filegroup FILESTREAM, max_size riflette le dimensioni massime del contenitore.Database aggiornati con un report -1 di dimensioni illimitate del file di log per le dimensioni massime del file di log.In database SQL di Azure la somma dei valori per tutti i file di max_size dati può essere inferiore alla dimensione massima dei dati per il database. Usare DATABASEPROPERTYEX(DB_NAME(), 'MaxSizeInBytes') per determinare le dimensioni massime dei dati. |
growth |
int | 0 = File è di dimensione fissa e non cresce. Maggiore di 0 = File cresce automaticamente. Se is_percent_growth = 0, l'incremento di crescita è espresso in unità di pagine da 8 KB, arrotondato al valore di 64 KB più vicino.Se is_percent_growth = 1, l'incremento di crescita viene espresso come percentuale di numeri interi. |
is_media_read_only |
bit | 1 = Il file si trova in un supporto con accesso in sola lettura. 0 = Il file è memorizzato in un supporto di lettura/scrittura. |
is_read_only |
bit | 1 = Il file è contrassegnato per l'accesso in sola lettura. 0 = Il file è contrassegnato in lettura/scrittura. |
is_sparse |
bit | 1 = il file è di tipo sparse. 0 = il file non è di tipo sparse. Per altre informazioni, vedere Visualizzare le dimensioni del file sparse di uno snapshot del database (Transact-SQL). |
is_percent_growth |
bit | 1 = L'aumento del file è una percentuale. 0 = Dimensione dell'aumento assoluto in pagine. |
is_name_reserved |
bit | 1 = Il nome file eliminato (name o physical_name) è riutilizzabile solo dopo il backup del log successivo. Quando si eliminano i file da un database, i nomi logici rimangono in stato riservato fino al successivo backup del log. Questa colonna è rilevante solo nel modello di recupero con registrazione completa e nel modello di recupero con registrazione minima delle operazioni bulk. |
is_persistent_log_buffer |
bit |
1 = Il file di log è un log buffer persistente.0 = Il file non è un log buffer persistente.Per ulteriori informazioni, vedi Aggiungi un buffer di log persistente a un database. |
create_lsn |
numeric(25,0) | Numero di sequenza del file di log (LSN) in corrispondenza del quale il file è stato creato. |
drop_lsn |
numeric(25,0) | Numero di sequenza del file di log (LSN) in corrispondenza del quale il file è stato eliminato. 0 = Il nome del file non è disponibile per il riutilizzo. |
read_only_lsn |
numeric(25,0) | Numero di sequenza del file di log (LSN) in corrispondenza del quale la modalità del filegroup contenente il file è passata da lettura/scrittura a sola lettura (la modifica più recente). |
read_write_lsn |
numeric(25,0) | 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). |
differential_base_lsn |
numeric(25,0) | Base per backup differenziali. Le estensioni dati modificate dopo questo LSN sono incluse in un backup differenziale. |
differential_base_guid |
uniqueidentifier | Identificatore unico del backup base su cui si basa un backup differenziale. |
differential_base_time |
datetime | Ora corrispondente a differential_base_lsn. |
redo_start_lsn |
numeric(25,0) | LSN a cui deve iniziare il prossimo roll-forward. È a meno che NULLstate = non sia RESTORING o .state = RECOVERY_PENDING |
redo_start_fork_guid |
uniqueidentifier | Identificatore univoco del fork di recupero. L'oggetto first_fork_guid del backup del log successivo ripristinato deve corrispondere a questo valore. Rappresenta lo stato corrente del file. |
redo_target_lsn |
numeric(25,0) | LSN a cui il roll-forward online su questo file può fermarsi. È a meno che NULLstate = non sia RESTORING o .state = RECOVERY_PENDING |
redo_target_fork_guid |
uniqueidentifier | Fork di recupero in corrispondenza del quale è possibile recuperare il file. Associato a redo_target_lsn. |
backup_lsn |
numeric(25,0) | Numero di sequenza del file di log del backup dei dati o del backup differenziale del file più recente. |
Nota
Quando si eliminano o ricompilano indici di grandi dimensioni o si eliminano o si troncano tabelle di grandi dimensioni, l'motore di database rinvia le deallozioni di pagina effettive e i relativi blocchi associati fino a quando non viene eseguito il commit della transazione. Le operazioni di eliminazione posticipate non rendono immediatamente disponibile lo spazio allocato. Pertanto, i valori restituiti immediatamente sys.database_files dopo l'eliminazione o il troncamento di un oggetto di grandi dimensioni potrebbero non riflettere lo spazio su disco effettivo disponibile.
Autorizzazioni
È richiesta l'appartenenza al ruolo public . Per altre informazioni, vedere Metadata Visibility Configuration.
Esempi
L'istruzione seguente restituisce il nome, le dimensioni del file e la quantità di spazio vuoto per ogni file di database.
SELECT name, size/128.0 FileSizeInMB,
size/128.0 - CAST(FILEPROPERTY(name, 'SpaceUsed') AS int)/128.0
AS EmptySpaceInMB
FROM sys.database_files;
Trovare query di esempio che usano database SQL, in Gestire lo spazio file per i database in database SQL di Azure. È possibile:
- Eseguire una query su un database singolo per ottenere informazioni sullo spazio di archiviazione.
- Eseguire query su un pool elastico per ottenere informazioni sullo spazio di archiviazione.
Contenuto correlato
- Viste del catalogo di database e file (Transact-SQL)
- Stati dei file
- sys.databases (Transact-SQL)
- sys.master_files (Transact-SQL)
- Filegroup e file di database
- sys.data_spaces (Transact-SQL)
- Gestire lo spazio dei file per i database in database SQL di Azure
- Gestire lo spazio dei file per i database nell'istanza gestita di SQL di Azure