Hvad er NDF-filformatet?
.ndf er en sekundær datafil, der bruges af Microsoft SQL Server til at gemme relationelt databaseindhold. Den udvider en database ud over dens primære .mdf-fil, typisk for at sprede data over flere fysiske diske for at forbedre I/O-gennemstrømning eller for at overskride størrelsesgrænser for enkeltfiler. En database kan have nul eller mange .ndf-filer; de er altid valgfrie.
Internt bruger .ndf-filer det identiske 8 KB sidebaserede binære format som de primære .mdf-filer. Hver side er nummereret og klassificeret efter type: datasider indeholder tabelrækker, indekssider indeholder B-træ-indeksstrukturer, og allokeringssider (PFS, GAM, SGAM) sporer ledig plads. Sider er grupperet i 64 KB extents af 8 sammenhængende sider. Valgfri komprimering på sideniveau (række- eller sidekomprimering, SQL Server 2008+) og Transparent Data Encryption (TDE, AES-128/256) gælder for .ndf-filer på samme måde som for .mdf.
En .ndf-fil kan ikke åbnes eller gendannes isoleret - SQL Server skal tilknytte den sammen med den primære .mdf og transaktionsloggen .ldf som en komplet databaseenhed. Den maksimale filstørrelse er 16 TB på SQL Server 2016 og nyere.
Formatet blev formaliseret med SQL Server 7.0 (1998), og det interne sideformat er forblevet stort set uændret siden da. SQL Server 2017 udvidede understøttelsen til Linux og containermiljøer ved hjælp af det samme filformat.
Sikkerhed og tryghed
RISIKO: LOWSQL Server-datafiler er passive binære datalagre. Risikoen er datakonfortabilitet - NDF-filer kan indeholde følsomt databaseindhold. Hvis de findes uventet på et system, skal kildedatabasen verificeres før deling. TDE-krypterede NDF-filer kræver krypteringsnøglen for at få adgang.
Formatdetaljer
kort fortalt- Navision Database File (ældre Microsoft Dynamics NAV) - .ndf blev brugt som den indfødte databasefilendelse i ældre Microsoft Navision/Dynamics NAV-installationer før migrering til SQL Server.
Programmer der åbner NDF-filer
Tekniske detaljer
dyb specifikation| Udvikler | Microsoft Corporation |
| Kodning | Binær (little-endian) |
| Sidestørrelse | 8 KB (8.192 bytes) pr. side - identisk internt format som de primære MDF-filer |
| Extent-størrelse | 64 KB (8 sammenhængende 8 KB sider) |
| Sidetyper | Data, indeks, LOB/tekst, PFS, GAM, SGAM, IAM og fil-header-sider |
| Komprimering | Valgfri - række- eller sidekomprimering (SQL Server 2008+, Enterprise og Developer-udgaver) |
| Kryptering | Valgfri - Transparent Data Encryption (TDE), AES-128 eller AES-256 (SQL Server 2008+) |
| Sideintegritet | PAGE_VERIFY CHECKSUM som standard siden SQL Server 2005; gemt i 96-byte side-header |
| Maksimal filstørrelse | 16 TB (SQL Server 2016+) |
| Standard autogrowth-stigning | 64 MB pr. hændelse (SQL Server 2012+) |
| Platform | Windows; Linux (SQL Server 2017+); Docker og containermiljøer |
| Afhængighed | Kan ikke åbnes alene - skal tilknyttes med den primære .mdf-fil og .ldf-logfil |
| Introduceret | SQL Server 7.0 (1998) - konventionen for sekundære datafiler blev formaliseret i denne version |
| Udgivet | SQL Server 7.0 (1998) - NDF extension formalised; data page format consistent since SQL Server 7 |
| Seneste version | SQL Server 2022 (v16); page format essentially unchanged since SQL Server 7 |
| Specifikation | learn.microsoft.com |
NDF-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om NDF-filer.