Odłączanie i dołączanie bazy danych

Dane i transakcji pliki dziennika bazy danych może być odłączony i następnie reattached do tej samej lub innej instancji SQL Server. Odłączanie i dołączanie bazy danych jest przydatna, jeśli chcesz zmienić bazę danych do innego wystąpienie programu SQL Server w tym samym komputerze lub, aby przenieść bazę danych.

Uwaga

The SQL Server on-disk storage format is the same in the 64-bit and 32-bit environments.W związku z tym Dołącz działa w środowisku 32-bitowych i 64-bitowych.Odłączono z wystąpienie serwera uruchomione w środowisku jednej bazy danych mogą być dołączane w wystąpieniu serwera, która działa w innym środowisku.

Aby uzyskać informacje dotyczące uprawnień, ustawianych za każdym razem, gdy baza danych jest odłączony i dołączony zobacz Securing Data and Log Files.

Odłączanie bazy danych

Odłączanie bazy danych powoduje usunięcie go z programu SQL Server ale pozostawia nienaruszone w ramach swoich plików danych i plików dziennik transakcji w bazie danych. Te pliki mogą być używane następnie do dołączenia do dowolne wystąpienie bazy danych SQL Server, łącznie z serwera, z którego zostało odłączone w bazie danych.

Bazy danych nie można odłączyć, jeśli spełniony jest dowolny z następujących czynności:

  • Baza danych jest replikowany i opublikowane.Jeśli replikowane, musi być niepublikowane w bazie danych.Zanim można go odłączyć, należy wyłączyć publikowanie, uruchamiając sp_replicationdboption.

    Uwaga

    Jeśli nie można użyć sp_replicationdboption, replikacja można usunąć przez uruchomienie sp_removedbreplication.

  • Operator, który został pocztą e-mail dotyczące tego zadanie (ma wartość NULL dla historia krok).

    operator_netsentAby uzyskać więcej informacji zobaczHow to: Drop a Database Snapshot (Transact-SQL).

    Uwaga

    migawka bazy danych nie mogą być odłączone lub dołączony.

  • Bazy danych jest jest odzwierciedlana w bazie danych dublowanie sesja.

    W bazie danych nie może być odłączony, chyba, że sesja zostanie zakończona.Aby uzyskać więcej informacji zobaczRemoving Database Mirroring.

  • Baza danych jest podejrzana.W SQL Server 2005 i nowsze wersje podejrzanych bazy danych nie może być odłączone; zanim można go odłączyć, należy umieocić go do trybu awaryjnego. Aby uzyskać więcej informacji na temat do bazy danych w trybu awaryjnego Zobacz ALTER DATABASE języka Transact-SQL).

  • Baza danych jest systemową bazą danych.

Aby odłączyć bazę danych

Kopia zapasowa i przywracanie i Odłącz

Odłączanie tylko do odczytu bazy danych, traci się informacje na temat podstaw różnicowe różnicowe kopie zapasowe.Aby uzyskać więcej informacji zobaczBacking Up Read-Only Databases.

Odpowiadanie na Odłącz błędy

Błędy wyprodukowanych podczas odłączanie bazy danych może uniemożliwić bazy danych czysto zamknąć, a dziennik transakcji z są przebudowywane.Jeśli pojawi się komunikat o błędzie, należy wykonać następujące czynności naprawcze:

  1. Podłącz wszystkie pliki skojarzone z bazy danych, a nie tylko podstawowych plików.

  2. Rozwiązania problemu, który spowodował ten komunikat o błędzie.

  3. Odłącz bazę danych ponownie.

Dołączanie bazy danych

Można dołączyć skopiowanych lub odłączony SQL Server Baza danych. Po dołączeniu SQL Server 2005 Baza danych zawierająca pliki wykazu pełnego tekstu na SQL Server 2008 wystąpienie serwera, katalogu, pliki są dołączone z wraz z innymi plikami bazy danych, takie same, jak w poprzedniej lokalizacji SQL Server 2005. Aby uzyskać więcej informacji zobaczFull-Text Search Upgrade.

Security noteSecurity Note:

Zaleca się, należy nie dołączać lub przywrócić baz danych z nieznanych lub niezaufanych źródeł.Takie bazy danych może zawierać złośliwy kod, który może być wykonać niezamierzone Transact-SQL Kod lub powodować błędy przez zmodyfikowanie schematu lub struktury fizycznej bazy danych. Aby korzystać z bazy danych z nieznanych lub niepewnych urządzenie źródłowe, uruchamianie DBCC CHECKDB w bazie danych na serwerze nonproduction i również sprawdzić kod, takie jak procedury przechowywane lub inny kod zdefiniowany przez użytkownika w bazie danych.

Na dołączanie, występuje uruchamiania bazy danych.Ogólnie rzecz biorąc dołączanie bazy danych umieszcza je w tym samym stanie, który był, gdy zostało odłączone lub skopiowane.Jednak w SQL Server 2005 i bazy nowszych wersji operacji dołączania i odłączyć zarówno, jak wyłączyć krzyżykiem danych tworzenie łańcucha własności dla bazy danych. Aby uzyskać informacje dotyczące sposobu włączania tworzenie łańcucha zobacz cross db ownership chaining Option. Ponadto TRUSTWORTHY jest ustawiona na wyłączona za każdym razem, gdy baza danych jest podłączony.Aby uzyskać informacje o ustawianiu TRUSTWORTHY on zobacz ALTER DATABASE języka Transact-SQL).

Po dołączeniu bazy danych, wszystkie pliki danych (plików MDF i NDF) musi być dostępny.Dowolny plik danych został utworzony przez inną ścieżka z po raz pierwszy w bazie danych lub ostatnio podłączone, należy określić ścieżka bieżącego pliku.

Uwaga

Jeśli plik danych podstawowych dołączany jest tylko do odczytu, Database Engine zakłada się, że baza danych jest tylko do odczytu.

Gdy bazy danych zaszyfrowanych najpierw jest dołączony do wystąpienie SQL Server, właściciel bazy danych należy otworzyć klucz głównego z bazy danych, wykonując następujące instrukcja: OPEN główny klucz ODSZYFROWYWANIA BY PASSWORD = "password'.Firma Microsoft zaleca, aby włączyć automatyczne odszyfrowywania klucz głównego wykonując następującą instrukcję: ZMIENIA SZYFROWANIE PRZEZ KLUCZ GŁÓWNY usługa DODAWANIA ZA POMOCĄ KLUCZA GŁÓWNEGO. Aby uzyskać więcej informacji zobacz CREATE MASTER klucz (języka Transact-SQL) i ALTER MASTER klucz (języka Transact-SQL).

Wymaganie, aby dołączając pliki dziennika zależy częściowo od tego, czy baza danych jest w trybie do odczytu i zapisu lub tylko do odczytu, w następujący sposób:

  • Dla bazy danych w trybie do odczytu i zapisu zwykle można dołączyć pliku dziennika w nowe miejsce.Jednak w niektórych przypadkach podłączenie bazy danych wymaga jego istniejących plików dziennika.Dlatego ważne jest zawsze przechowywać wszystkie pliki dziennika odłączony, dopóki baza danych została pomyślnie dołączona bez nich.

    Jeżeli bazę danych w trybie do odczytu i zapisu w jednym pliku dziennika, nie zostanie określony w nowe miejsce dla pliku dziennika operacji dołączania wygląda w poprzedniej lokalizacji pliku.Jeśli zostanie stwierdzone, stary plik dziennika jest używany, niezależnie od tego, czy w bazie danych został zamknięty czysto.Jednak jeśli nie zostanie znaleziony w starym pliku dziennika i bazy danych został zamknięty wyraźne i ma żaden łańcuch aktywnego dziennika, operacji dołączania próbuje utworzyć nowy plik dziennika dla bazy danych.Aby uzyskać więcej informacji zobacz Dziennik transakcji architektury logicznej i Architektura fizyczny dziennik transakcji.

  • Jeśli plik danych podstawowych dołączany jest tylko do odczytu, Database Engine zakłada się, że baza danych jest tylko do odczytu. Tylko do odczytu bazy danych pliki dziennika, muszą być dostępne w lokalizacji określonej w podstawowym pliku bazy danych.Nie można utworzyć nowy plik dziennika, ponieważ SQL Server Nie można zaktualizować lokalizację dziennika przechowywane w pliku podstawowego.

    Important noteImportant Note:

    Gdy tylko do odczytu bazy danych jest odłączana, a następnie reattached, kopia zapasowa informacje o bieżącej kopia podstawowa dla różnicowych kopii zapasowych zostaną utracone.The kopia podstawowa dla różnicowych kopii zapasowych is the most recent pełna kopia zapasowa of all the data in the database or in a podzbiór of the files or filegroups of the database.Bez informacji o kopia zapasowa bazy wzorzec bazy danych staje się zsynchronizowany z bazą danych tylko do odczytu, dlatego różnicowe kopie zapasowe podjęta później może podać nieoczekiwane wyniki.W związku z tym jeśli korzystasz z różnicowe kopie zapasowe w bazie danych tylko do odczytu, należy ustanowić nowe kopia podstawowa dla różnicowych kopii zapasowych wykonując pełna kopia zapasowa po połączenia z bazą danych.Aby uzyskać więcej informacji zobaczBase of a Differential Backup.

Kopia zapasowa i przywracanie i Dołącz

Podobnie jak każdej innej bazy danych jest całkowicie lub częściowo trybu offline nie można dołączyć bazy danych o przywracaniu plików.Jeśli zatrzymasz sekwencja przywracanie można dołączyć bazy danych.Następnie można uruchomić ponownie sekwencja przywracanie.

Dołączanie bazy danych z innym wystąpienie serwera

Podczas dołączania bazy danych do innego wystąpienie serwera do świadczenia stanowi spójne źródło informacji dla użytkowników i aplikacji, może zajść potrzeba ponownego utworzenia całość lub część metadane dla bazy danych, takie jak identyfikatory logowania i zadań w wystąpieniu serwera.Aby uzyskać więcej informacji zobaczManaging Metadata When Making a Database Available on Another Server Instance.

Uwaga

Baza danych utworzona w nowszej wersja programu SQL Server Nie można dołączyć we wcześniejszych wersjach.

Aby dołączyć bazę danych

Aby uaktualnić bazę danych z wcześniejszych wersja programu SQL Server

W SQL Server 2008, można użyć Odłączanie i dołączanie działania w celu uaktualnienia baza danych użytkownika z SQL Server 2000 lub SQL Server 2005. Niemniej jednak, obowiązują następujące ograniczenia:

  • Kopie wzorzec, Model or msdb bazy danych, utworzonych za pomocą SQL Server 2000 lub SQL Server 2005 Nie można dołączyć.

  • Podczas dołączania zreplikowanej bazy danych, które zostały skopiowane zamiast odłączone:

    • Jeśli baza danych jest dołączany do uaktualnionej wersja tego samego wystąpienie serwera, należy wykonać sp_vupgrade_replication replikacja po wykonaniu operacji dołączania uaktualnienie zostało ukończone.Aby uzyskać więcej informacji zobaczsp_vupgrade_replication (Transact-SQL).

    • Po dołączeniu bazy danych do wystąpienie inny serwer, niezależnie od wersja, należy wykonać sp_removedbreplication usunąć replikacja po wykonaniu operacji dołączania zostało zakończone.Aby uzyskać więcej informacji zobaczsp_removedbreplication (Transact-SQL).

Aby uaktualnić bazę danych za pomocą odłączyć i dołączyć operacje

Przenoszenie bazy danych lub plik bazy danych

Important noteImportant Note:

Firma Microsoft zaleca, aby przenieść bazy danych za pomocą procedury instrukcji ALTER DATABASE planowane przeniesienie zamiast Odłączanie i dołączanie operacji.Aby uzyskać więcej informacji zobaczMoving Database Files.

Zwykle, można użyć Odłączanie i dołączanie czynności, aby przenieść bazę danych.Typowe scenariusze obejmują przenoszenia bazy danych na jeden z następujących lokalizacji:

  • Inny dysk fizyczny w tym samym komputerze.Na przykład, kiedy dysk zawierający plik danych został uruchomiony miejsca na dysku i chcesz rozszerzyć istniejący plik (a nie do rozwiń bazę danych przez dodanie nowego pliku na innym dysku).

  • Inny komputer, bez konieczności ponownego utworzenia bazy danych i przywrócić kopię zapasową bazy danych.

Przenoszenie bazy danych za pomocą operacji odłączyć i dołączyć obejmuje następujące etapy:

  1. Odłączanie bazy danych.

  2. Przenoszenie plików bazy danych na serwerze lub dysku.

  3. Dołączanie bazy danych, określając nową lokalizację przenoszonego pliku lub plików.

Aby przenieść bazę danych za pomocą odłączyć i dołączyć operacje