Melepas database

Berlaku untuk:SQL Server

Artikel ini menjelaskan cara melepaskan database di SQL Server dengan SQL Server Management Studio atau Transact-SQL. File yang dilepas tidak dihapus dan tetap berada di sistem file. File dapat dipasang kembali dengan menggunakan CREATE DATABASE ... FOR ATTACH opsi atau FOR ATTACH_REBUILD_LOG . File juga dapat dipindahkan ke server lain dan dilampirkan ke instans dengan versi yang sama atau lebih baru.

Batasan

Untuk daftar batasan dan pembatasan, lihat Pencopotan dan lampirkan database (SQL Server).

Izin

Memerlukan keanggotaan dalam peran database tetap db_owner .

Menggunakan SQL Server Management Studio

Sebelum memindahkan database

Jika Anda memindahkan database, sebelum melepaskannya dari instans SQL Server yang ada, gunakan halaman Properti database untuk meninjau file yang terkait dengan database dan lokasinya saat ini.

  1. Di SQL Server Management Studio Object Explorer, sambungkan ke instans Mesin Database SQL Server lalu perluas instans.

  2. Perluas Database, dan pilih nama database pengguna yang ingin Anda copot.

  3. Klik kanan nama database, pilih Properti. Pilih halaman File dan tinjau entri dalam file Database: tabel.

Pastikan untuk memperhitungkan semua file yang terkait dengan database sebelum Anda melepaskan, memindahkan, dan melampirkan. Kemudian, lanjutkan dengan langkah-langkah lepas di bagian berikutnya. Untuk informasi selengkapnya tentang melampirkan database di lokasi barunya, lihat Melampirkan Database.

Melepas database

  1. Di SQL Server Management Studio Object Explorer, sambungkan ke instans Mesin Database SQL Server lalu perluas instans.

  2. Perluas Database, dan pilih nama database pengguna yang ingin Anda copot.

  3. Klik kanan nama database, arahkan ke Tugas, lalu pilih Lepaskan. Kotak dialog Lepaskan Database muncul.

    • Database yang akan dicopot: Mencantumkan database yang akan dicopot.

    • Nama Database: Menampilkan nama database yang akan dilepas.

    • Hilangkan Koneksi ions: Putuskan sambungan ke database yang ditentukan.

      Catatan

      Anda tidak dapat melepaskan database dengan koneksi aktif.

    • Statistik Pembaruan: Secara default, operasi pencopotan mempertahankan statistik pengoptimalan yang kedaluarsa saat mencopot database; untuk memperbarui statistik pengoptimalan yang ada, pilih kotak centang ini.

    • Pertahankan Katalog Teks Lengkap: Secara default, operasi lepaskan menyimpan katalog teks lengkap yang terkait dengan database. Untuk menghapusnya, kosongkan kotak centang Pertahankan Katalog Teks Lengkap. Opsi ini hanya muncul saat Anda memutakhirkan database dari SQL Server 2005 (9.x).

    • Status: Menampilkan salah satu status berikut: Siap atau Belum siap.

    • Pesan: Kolom Pesan mungkin menampilkan informasi tentang database, sebagai berikut:

      • Saat database terlibat dengan replikasi, Status Belum siap dan kolom Pesan menampilkan Database yang direplikasi.

      • Saat database memiliki satu atau beberapa koneksi aktif, StatusBelum siap dan kolom Pesan ditampilkan <number_of_active_connections>Koneksi aktif. Misalnya: 1 Koneksi aktif. Sebelum bisa mencopot database, Anda harus memutuskan koneksi aktif apa pun dengan memilih Jatuhkan Koneksi ion.

      Untuk mendapatkan informasi selengkapnya tentang pesan, pilih teks hyperlink untuk membuka Monitor Aktivitas.

  4. Saat Anda siap untuk mencopot database, pilih OK.

Catatan

Database yang baru dilepas akan tetap terlihat di simpul Database Object Explorer hingga tampilan disegarkan. Anda bisa me-refresh tampilan kapan saja: Pilih di panel Object Explorer, dan dari bilah menu pilih Tampilan lalu Refresh.

Menggunakan Transact-SQL

Sebelum memindahkan database

Jika Anda memindahkan database, sebelum melepaskannya dari instans SQL Server yang ada, gunakan sys.database_files tampilan katalog sistem untuk meninjau file yang terkait dengan database dan lokasinya saat ini. Untuk informasi selengkapnya, lihat sys.database_files (Transact-SQL).

  1. Di SQL Server Management Studio, pilih Kueri Baru untuk membuka Editor Kueri.

  2. Salin skrip Transact-SQL berikut ke Editor Kueri, lalu pilih Jalankan. Skrip ini menampilkan lokasi file database fisik. Pastikan untuk memperhitungkan semua file saat memindahkan database melalui lepaskan/lampirkan.

    USE [database_name]
    GO
    
    SELECT type_desc, name, physical_name
    FROM sys.database_files;
    

Pastikan untuk memperhitungkan semua file yang terkait dengan database sebelum Anda melepaskan, memindahkan, dan melampirkan. Kemudian, lanjutkan dengan langkah-langkah lepas di bagian berikutnya. Untuk informasi selengkapnya tentang melampirkan database di lokasi barunya, lihat Melampirkan Database.

Melepas database

  1. Koneksi ke Mesin Database.

  2. Dari bilah Standar, pilih Kueri Baru.

  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan pilih Jalankan. Contoh ini mencopot AdventureWorks2022 database dengan opsi diatur ke skipcheckstrue. Untuk informasi selengkapnya, lihat sp_detach_db.

    EXEC sp_detach_db 'AdventureWorks2022', 'true';