Pliki i aplikacjami architektury

SQL Servermapuje bazy danych przez zestaw plików systemu operacyjnego.Informacje dotyczące danych i dziennika nigdy nie są mieszane w tym samym pliku, a poszczególne pliki są używane tylko przez jedną bazę danych.Aplikacjami nazywane są kolekcje plików i służą do umieszczania danych i zadania administracyjne, takie jak kopia zapasowa lub operacji przywracanie.

Pliki bazy danych

SQL Serverbazy danych są trzy typy plików:

  • Podstawowe pliki danych

    Plik danych podstawowych jest punktem początkowym bazy danych i punkty do innych plików w bazie danych.Co baza danych zawiera jeden plik danych podstawowych.Rozszerzenie nazwy pliku zalecane dla podstawowe pliki danych jest .mdf.

  • Pomocniczych plików danych

    Pliki pomocnicze składają się wszystkie pliki danych, inny niż plik danych podstawowych.Niektóre bazy danych nie może mieć wszystkie pliki pomocnicze, podczas gdy inni posiadają kilka pomocniczych plików danych.The recommended file name extension for secondary data files is .ndf.

  • Pliki dziennika

    Wszystkie informacje dziennika, które jest używane do przechowywania plików dziennika odzyskać bazy danych.Chociaż może istnieć więcej niż jeden, musi być co najmniej jeden plik dziennika dla każdej bazy danych.Rozszerzenie nazwy pliku zalecane dla plików dziennika jest ldf.

SQL Server does not enforce the .mdf, .ndf, and .ldf file name extensions, but these extensions help you identify the different kinds of files and their use.

W SQL Server, lokalizacje wszystkich plików w bazie danych są rejestrowane w podstawowym pliku bazy danych i w baza danych master. Aparat baz danych programu SQL Server Używa informacji o lokalizacji pliku z master bazy danych większość czas.Jednakże Aparat baz danych używa informacji o lokalizacji pliku z podstawowym plikiem zainicjować wpisy lokalizacji pliku w master bazy danych w następujących sytuacjach:

  • Podczas dołączania bazy danych za pomocą instrukcja CREATE DATABASE dla DOŁĄCZANIA albo ATTACH_REBUILD_LOG dla opcji.

  • Podczas uaktualniania z SQL Server w wersja 2000 lub w wersja 7.0.

  • Podczas przywracania master bazy danych.

Fizyczne i logiczne nazwy plików

SQL Serverpliki mają dwie nazwy:

logical_file_name

logical_file_name Jest to nazwa używana do odwoływania się do pliku fizycznego w wszystkie instrukcje języka Transact-SQL.Nazwa pliku logicznego musi być zgodne z zasadami SQL Server identyfikatorów i musi być unikatowa wśród logiczne nazwy plików w bazie danych.

os_file_name

os_file_name Jest nazwą pliku fizycznego, w tym katalogu ścieżka.Musi być zgodny z reguły dla nazw plików systemu operacyjnego.

SQL Server pliki danych i pliki dziennika mogą być umieszczane w systemach plików FAT lub NTFS.Zaleca się użycie systemu plików NTFS, ponieważ aspektów zabezpieczeń systemu plików NTFS.Odczyt i zapis danych aplikacjami i plików dziennika nie może być umieszczony na system plików NTFS skompresowane.Tylko bazy danych tylko do odczytu i aplikacjami pomocniczym tylko do odczytu można umieścić na system plików NTFS skompresowane.Aby uzyskać więcej informacji, zobacz Tylko do odczytu aplikacjami i kompresji.

Gdy wiele wystąpień SQL Server są uruchamiane na pojedynczym komputerze, każde wystąpienie odbiera inny domyślny katalog do przechowywania plików baz danych utworzonych w instancji.Aby uzyskać więcej informacji, zobacz Lokalizacje domyślne i nazwanych wystąpień programu SQL Server.

Strony pliku danych

strona w SQL Server pliku danych są numerowane kolejno począwszy od zera (0) dla pierwszej strona w pliku.Każdy plik w bazie danych ma numer identyfikacyjny unikatowy plik.Do unikatowej identyfikacji strona w bazie danych, identyfikator pliku i numer strona są wymagane.W poniższym przykładzie strona numery w bazie danych, która ma 4 MB pliku podstawowego i pomocniczego 1 MB pliku.

Kolejne numery stron w dwóch plikach danych

Pierwsza strona w każdym pliku jest plik strony nagłówka, który zawiera informacje o atrybutach pliku.Także kilka innych stron na początku pliku zawierają informacje systemowe, takie jak mapy alokacji.Jedną ze stron systemu przechowywane w pliku podstawowego i pierwszy plik dziennika jest strona rozruchu bazy danych, zawierający informacje o atrybutach bazy danych.Więcej informacji o stronas i strona typów, zobacz Opis stron i zakresów.

Rozmiar pliku

SQL Serverpliki można powiększać automatycznie z ich pierwotnie określony rozmiar.Podczas definiowania pliku można określić szczególne przyrostu.Każdy czas wypełnione pliku, to zwiększa jego rozmiar przyrostu.Jeśli wiele plików w grupa plików, zostaną nie autogrow, dopóki wszystkie pliki są pełne.Następnie wzrostu występuje w sposób okrężny.

Każdy plik może mieć również podanego maksymalnego rozmiaru.Jeżeli rozmiar maksymalny nie zostanie określony, plik można stale rośnie, dopóki nie wykorzystał całego dostępnego miejsca na dysku.Ta funkcja jest szczególnie przydatna, gdy SQL Server jest używany jako baza danych osadzonych w aplikacji, których użytkownik nie ma wygodny dostęp do administrator systemu.Użytkownika można pozwolić autogrow pliki wymagane do zmniejszenia obciążenia administracyjnego monitorowania wolnego miejsca w bazie danych i ręcznie przydzielenie dodatkowego miejsca.

Pliki migawkę bazy danych

Formularz używany przez migawka bazy danych do przechowywania swoich danych kopiowania przy zapisie pliku zależy od tego, czy utworzone przez użytkownika lub używane wewnętrznie migawki:

  • migawka bazy danych utworzonej przez użytkownika przechowuje swoje dane w jeden lub więcej plikami rozrzedzonymi.Technologia plik rozrzedzony jest funkcją systemu plików NTFS.Na początku plik rozrzedzony zawiera nie danych użytkownika i miejsca na dysku dla danych użytkownika nie została przydzielona do plik rozrzedzony.Ogólne informacje o użycie plikami rozrzedzonymi migawek bazy danych i sposób powiększać migawek bazy danych, zobacz Jak działają migawek bazy danych i Opis Sparse rozmiary plików w bazie danych migawek.

  • Migawki bazy danych są używane wewnętrznie przez pewne polecenia DBCC.Polecenia te obejmują DBCC CHECKDB, DBCC CHECKTABLE, DBCC CHECKALLOC i DBCC CHECKFILEGROUP.Wewnętrzny migawka bazy danych używa sparse alternatywnych strumieniach danych oryginalnych plików bazy danych.Podobnie jak plikami rozrzedzonymi alternatywnych strumieniach danych są funkcją systemu plików NTFS.Użyj sparse alternatywnych strumieniach danych umożliwia wielu alokacje dane mają być skojarzone z pojedynczego pliku lub folderu bez wpływu na statystyki wielkości lub wielkości pliku.

Aplikacjami bazy danych

Obiekty bazy danych i plików można grupować w aplikacjami do celów przydziału i administracji.Istnieją dwa typy aplikacjami:

Podstawowy

Podstawowa grupa plików zawiera plik danych podstawowych i innych plików, które nie zostały przypisane do innej grupy plików.Wszystkie strony dla tabele systemowe są przydzielane w podstawowej grupa plików.

Zdefiniowany przez użytkownika

Aplikacjami użytkownika są aplikacjami, wszelkie określone przy użyciu słowa kluczowego grupa plików w instrukcja CREATE DATABASE lub ALTER DATABASE.

Pliki dziennika są częścią nigdy nie grupa plików.Miejsca w dzienniku są zarządzane oddzielnie z obszaru danych.

Plik nie może być element członkowski z więcej niż jednej grupy plików.Tabele, indeksów i dużego obiektu danych mogą być skojarzone z określoną grupa plików.W takim przypadek zostaną przydzielone swoich stron w tym grupa plików, lub tabel i indeksów można podzielić na partycje.Dane z tabel podzielonym na partycje i indeksów jest podzielony na jednostki, które mogą być umieszczane w oddzielnym grupa plików w bazie danych.Aby uzyskać więcej informacji dotyczących tabel podzielonym na partycje i indeksów, zobacz Podzielonym na partycje tabel i indeksów.

Domyślna grupa plików wyznaczony jest jedna grupa plików w każdej bazie danych.Podczas tworzenia tabela lub indeks bez określania grupa plików, zakłada się, wszystkie strony zostaną przydzielone z domyślnej grupa plików.Tylko jedna grupa plików na czas może być domyślna grupa plików.Członkowie db_owner stała rola bazy danych można przełączyć grupy domyślne plików z jednej grupy plików do innego.Jeżeli nie określono żadnych domyślna grupa plików, podstawowa grupa plików to domyślna grupa plików.

Przykład grupa plików i plików

Poniższy przykład tworzy bazę danych na wystąpienie SQL Server.Baza danych jest plik danych podstawowych, grupa plików zdefiniowana przez użytkownika i pliku dziennika.Plik danych podstawowych jest podstawowa grupa plików i grupa plików zdefiniowana przez użytkownika ma dwóch pomocniczych plików danych.instrukcja ALTER DATABASE umożliwia grupa plików zdefiniowana przez użytkownika domyślnego.Tabela jest tworzona w określanie przez użytkownika grupa plików.

USE master;
GO
-- Create the database with the default data
-- filegroup and a log file. Specify the
-- growth increment and the max size for the
-- primary data file.
CREATE DATABASE MyDB
ON PRIMARY
  ( NAME='MyDB_Primary',
    FILENAME=
       'c:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\MyDB_Prm.mdf',
    SIZE=4MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB),
FILEGROUP MyDB_FG1
  ( NAME = 'MyDB_FG1_Dat1',
    FILENAME =
       'c:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\MyDB_FG1_1.ndf',
    SIZE = 1MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB),
  ( NAME = 'MyDB_FG1_Dat2',
    FILENAME =
       'c:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\MyDB_FG1_2.ndf',
    SIZE = 1MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB)
LOG ON
  ( NAME='MyDB_log',
    FILENAME =
       'c:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\MyDB.ldf',
    SIZE=1MB,
    MAXSIZE=10MB,
    FILEGROWTH=1MB);
GO
ALTER DATABASE MyDB 
  MODIFY FILEGROUP MyDB_FG1 DEFAULT;
GO

-- Create a table in the user-defined filegroup.
USE MyDB;
CREATE TABLE MyTable
  ( cola int PRIMARY KEY,
    colb char(8) )
ON MyDB_FG1;
GO

Następująca ilustracja podsumowuje wyniki poprzedniego przykładu.

Nazwy logicznych i fizycznych plików bazy danych

Zobacz także

Koncepcje