Odłączanie bazy danych
Dotyczy:programu SQL Server
W tym artykule opisano sposób odłączania bazy danych w programie SQL Server za pomocą programu SQL Server Management Studio lub języka Transact-SQL. Odłączone pliki nie są usuwane i pozostają w systemie plików. Pliki można ponownie dołączyć przy użyciu opcji CREATE DATABASE ... FOR ATTACH
lub FOR ATTACH_REBUILD_LOG
. Pliki można również przenieść na inny serwer i przypisać do wystąpienia z tą samą lub nowszą wersją.
Ograniczenia
Aby uzyskać listę ograniczeń i restrykcji, zobacz Database detach and attach (SQL Server).
Uprawnienia
Wymaga członkostwa w stałej roli bazy danych db_owner.
Korzystanie z programu SQL Server Management Studio
Przed przeniesieniem bazy danych
Jeśli przenosisz bazę danych, zanim odłączysz ją od istniejącego wystąpienia programu SQL Server, użyj strony właściwości usługi Database, aby przejrzeć pliki skojarzone z bazą danych i ich bieżące lokalizacje.
W Eksploratorze obiektów programu SQL Server Management Studio połącz się z wystąpieniem aparatu bazy danych programu SQL Server, a następnie rozwiń wystąpienie.
Rozwiń węzeł Databases, a następnie wybierz nazwę bazy danych użytkownika, którą chcesz odłączyć.
Kliknij prawym przyciskiem myszy nazwę bazy danych, wybierz pozycję Właściwości. Wybierz stronę Pliki i przejrzyj wpisy w tabeli plików bazy danych: .
Przed odłączeniem, przeniesieniem i dołączeniem należy uwzględnić wszystkie pliki skojarzone z bazą danych. Następnie przejdź do kroków odłączania w następnej sekcji. Aby uzyskać więcej informacji na temat dołączania bazy danych w nowej lokalizacji, zobacz Attach a Database.
Odłączanie bazy danych
W Eksploratorze obiektów w SQL Server Management Studio, połącz się z instancją silnika bazy danych SQL Server, a następnie rozwiń tę instancję.
Rozwiń sekcję Databases, a następnie wybierz nazwę bazy danych użytkownika, którą chcesz odłączyć.
Kliknij prawym przyciskiem myszy nazwę bazy danych, wskaż Zadania, a następnie wybierz Odłącz. Zostanie wyświetlone okno dialogowe Odłącz bazę danych.
Bazy danych do odłączenia: Wyświetla listę baz danych do odłączenia.
nazwa bazy danych: wyświetla nazwę bazy danych do odłączenia.
Odłączanie połączeń: Odłącz połączenia z określoną bazą danych.
Notatka
Nie można odłączyć bazy danych z aktywnymi połączeniami.
statystyki aktualizacji: domyślnie operacja odłączania zachowuje wszelkie nieaktualne statystyki optymalizacji podczas odłączania bazy danych; aby zaktualizować istniejące statystyki optymalizacji, zaznacz to pole wyboru.
Zachowaj katalogi Full-Text: domyślnie operacja odłączania przechowuje wszystkie katalogi pełnotekstowe skojarzone z bazą danych. Aby je usunąć, wyczyść pole wyboru Zachowaj katalogi Full-Text. Ta opcja jest wyświetlana tylko w przypadku uaktualniania bazy danych z programu SQL Server 2005 (9.x).
stan: wyświetla jeden z następujących stanów: gotowy lub niegotowy.
Komunikat: kolumna komunikatów może wyświetlać informacje o bazie danych w następujący sposób:
Gdy baza danych uczestniczy w replikacji, stan jest Niegotowa, a w kolumnie Komunikat jest wyświetlany Zreplikowano bazę danych.
Gdy baza danych ma jedno lub więcej aktywnych połączeń, status jest Niegotowy, a w kolumnie komunikatów wyświetlana jest <number_of_active_connections>aktywne połączenie(a). Na przykład: 1 aktywne połączenie(-a). Aby można było odłączyć bazę danych, należy odłączyć wszystkie aktywne połączenia, wybierając pozycję Drop Connections.
Aby uzyskać więcej informacji na temat wiadomości, wybierz tekst hiperlinku, aby otworzyć monitor aktywności.
Gdy wszystko będzie gotowe do odłączenia bazy danych, wybierz OK.
Notatka
Nowo odłączona baza danych pozostanie widoczna w węźle bazy danych Eksploratora obiektów do czasu odświeżenia widoku. Widok można odświeżyć w dowolnym momencie: Wybierz w okienku Eksplorator obiektów, a na pasku menu wybierz pozycję Widok, a następnie Odśwież.
Korzystanie z Transact-SQL
Przed przeniesieniem bazy danych
Jeśli przenosisz bazę danych, przed odłączeniu jej od istniejącego wystąpienia programu SQL Server użyj widoku katalogu systemu sys.database_files
, aby przejrzeć pliki skojarzone z bazą danych i ich bieżące lokalizacje. Aby uzyskać więcej informacji, zobacz sys.database_files (Transact-SQL).
W programie SQL Server Management Studio wybierz pozycję Nowe zapytanie, aby otworzyć Edytor zapytań.
Skopiuj następujący skrypt Transact-SQL do Edytora zapytań, a następnie wybierz pozycję Wykonaj. Ten skrypt wyświetla lokalizację fizycznych plików bazy danych. Pamiętaj, aby uwzględnić wszystkie pliki podczas przenoszenia bazy danych za pośrednictwem odłączania/dołączania.
USE [database_name] GO SELECT type_desc, name, physical_name FROM sys.database_files;
Przed odłączeniem, przeniesieniem i dołączeniem należy uwzględnić wszystkie pliki skojarzone z bazą danych. Następnie przejdź do kroków odłączania w następnej sekcji. Aby uzyskać więcej informacji na temat dołączania bazy danych w nowej lokalizacji, zobacz Attach a Database.
Odłączanie bazy danych
Połącz się z silnikiem bazy danych.
Na pasku standardowym wybierz pozycję Nowe zapytanie.
Skopiuj poniższy przykład i wklej go w oknie zapytania, a następnie wybierz pozycję Wykonaj. W tym przykładzie baza danych
AdventureWorks2022
jest odłączana z opcjąskipchecks
ustawioną natrue
. Aby uzyskać więcej informacji, zobacz sp_detach_db.EXEC sp_detach_db 'AdventureWorks2022', 'true';