Bagikan melalui


\Melampirkan database

Topik ini menjelaskan cara melampirkan database di SQL Server 2014 dengan menggunakan SQL Server Management Studio atau Transact-SQL. Anda dapat menggunakan fitur ini untuk menyalin, memindahkan, atau meningkatkan database SQL Server.

Dalam Topik Ini

Sebelum Anda mulai

Prasyarat

  • Database harus terlebih dahulu dilepas. Mencoba melampirkan database yang belum dicopot akan mengembalikan kesalahan. Untuk informasi selengkapnya, lihat Mencopot Database.

  • Saat Anda melampirkan database, semua file data (file MDF dan LDF) harus tersedia. Jika ada file data yang memiliki jalur yang berbeda dari kapan database pertama kali dibuat atau terakhir dilampirkan, Anda harus menentukan jalur file saat ini.

  • Saat Anda melampirkan database, jika file MDF dan LDF terletak di direktori yang berbeda dan salah satu jalur menyertakan \\?\GlobalRoot, operasi akan gagal.

Rekomendasi

Kami menyarankan agar Anda memindahkan database dengan menggunakan prosedur relokasi yang direncanakan ALTER DATABASE , alih-alih menggunakan lepaskan dan lampirkan. Untuk informasi selengkapnya, lihat Memindahkan Database Pengguna.

Keamanan

Izin akses file diatur selama sejumlah operasi database, termasuk melepaskan atau melampirkan database. Untuk informasi tentang izin file yang diatur setiap kali database dilepas dan dilampirkan, lihat Mengamankan Data dan File Log di Buku SQL Server 2008 R2 Online.

Kami menyarankan agar Anda tidak melampirkan atau memulihkan database dari sumber yang tidak diketahui atau tidak tepercaya. Database tersebut dapat berisi kode berbahaya yang mungkin menjalankan kode Transact-SQL yang tidak diinginkan atau menyebabkan kesalahan dengan memodifikasi skema atau struktur database fisik. Sebelum Anda menggunakan database dari sumber yang tidak diketahui atau tidak tepercaya, jalankan DBCC CHECKDB pada database di server nonproduksi dan juga periksa kode, seperti prosedur tersimpan atau kode lain yang ditentukan pengguna, dalam database. Untuk informasi selengkapnya tentang melampirkan database dan informasi tentang perubahan yang dibuat pada metadata saat Anda melampirkan database, lihat Pencopotan dan Lampirkan Database (SQL Server).

Izin

CREATE DATABASEMemerlukan izin , CREATE ANY DATABASE, atau ALTER ANY DATABASE .

Menggunakan SQL Server Management Studio

Untuk Melampirkan Database

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

  2. Klik kanan Database dan klik Lampirkan.

  3. Dalam kotak dialog Lampirkan Database , untuk menentukan database yang akan dilampirkan, klik Tambahkan; dan dalam kotak dialog Temukan File Database, pilih drive disk tempat database berada dan perluas pohon direktori untuk menemukan dan memilih file .mdf database; misalnya:

    C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\AdventureWorks2012_Data.mdf

    Penting

    Mencoba memilih database yang sudah dilampirkan menghasilkan kesalahan.

    Database yang akan dilampirkan
    Menampilkan informasi tentang database terpilih.

    <tidak ada header kolom>
    Menampilkan ikon yang menunjukkan status operasi lampirkan. Ikon yang mungkin dijelaskan dalam deskripsi Status , di bawah).

    Lokasi File MDF
    Menampilkan jalur dan nama file dari file MDF terpilih.

    Nama Database
    Menampilkan nama database.

    Lampirkan Sebagai
    Secara opsional, menentukan nama yang berbeda untuk database yang akan dilampirkan sebagai.

    Pemilik
    Menyediakan daftar drop-down kemungkinan pemilik database tempat Anda dapat memilih pemilik yang berbeda secara opsional.

    Keadaan
    Menampilkan status database sesuai dengan tabel berikut.

    Ikon Teks status Deskripsi
    (Tidak ada ikon) (Tidak ada teks) Operasi lampirkan belum dimulai atau mungkin tertunda untuk objek ini. Ini adalah default ketika dialog dibuka.
    Segitiga hijau dan kanan Dalam proses Operasi lampirkan telah dimulai tetapi belum selesai.
    Tanda centang hijau Berhasil Objek berhasil dilampirkan.
    Lingkaran merah berisi salib putih Kesalahan Operasi lampirkan mengalami kesalahan dan tidak berhasil diselesaikan.
    Lingkaran yang berisi dua kuadran hitam (di kiri dan kanan) dan dua kuadran putih (di atas dan bawah) Dihentikan Operasi lampirkan tidak berhasil diselesaikan karena pengguna menghentikan operasi.
    Lingkaran yang berisi panah melengkung menunjuk berlawanan arah jarang Digulung Balik Operasi lampirkan berhasil tetapi telah digulung balik karena kesalahan selama lampiran objek lain.

    Pesan
    Menampilkan pesan kosong atau hyperlink "File tidak ditemukan".

    Tambahkan
    Temukan file database utama yang diperlukan. Saat pengguna memilih file .mdf, informasi yang berlaku secara otomatis diisi di bidang masing-masing Database untuk melampirkan kisi.

    Hapus
    Menghapus file terpilih dari Database untuk melampirkan kisi.

    " <database_name> " detail database
    Menampilkan nama berkas yang akan dilampirkan. Untuk memverifikasi atau mengubah nama jalur file, klik tombol Telusuri (...).

    Catatan

    Jika file tidak ada, kolom Pesan menampilkan "Tidak ditemukan." Jika file log tidak ditemukan, file tersebut ada di direktori lain atau telah dihapus. Anda perlu memperbarui jalur file di kisi detail database untuk menunjuk ke lokasi yang benar atau menghapus file log dari kisi. Jika file data .ndf tidak ditemukan, Anda perlu memperbarui jalurnya di kisi untuk menunjuk ke lokasi yang benar.

    Nama File Asli
    Menampilkan nama file terlampir milik database.

    Jenis File
    Menunjukkan jenis file, Data, atau Log.

    Jalur File Saat Ini
    Menampilkan jalur ke file database terpilih. Jalur dapat diedit secara manual.

    Pesan
    Menampilkan pesan kosong atau hyperlink "File tidak ditemukan".

Menggunakan T-SQL

Untuk melampirkan database

  1. Sambungkan ke Mesin Database.

  2. Dari bilah Standar, klik Kueri Baru.

  3. Gunakan pernyataan CREATE DATABASE dengan penutupanFOR ATTACH.

    Salin dan tempel contoh berikut ke dalam jendela kueri dan klik Jalankan. Contoh ini melampirkan file database AdventureWorks2012 dan mengganti nama database menjadi MyAdventureWorks.

    CREATE DATABASE MyAdventureWorks   
        ON (FILENAME = 'C:\MySQLServer\AdventureWorks_Data.mdf'),   
        (FILENAME = 'C:\MySQLServer\AdventureWorks_Log.ldf')   
        FOR ATTACH;  
    

    Catatan

    Atau, Anda dapat menggunakan prosedur tersimpan sp_attach_db atau sp_attach_single_file_db . Namun, prosedur ini akan dihapus dalam versi Microsoft SQL Server di masa mendatang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Kami menyarankan agar Anda menggunakan CREATE DATABASE ... UNTUK LAMPIRKAN sebagai gantinya.

Tindak Lanjut: Setelah Memutakhirkan Database SQL Server

jika Anda memutakhirkan database dengan menggunakan metode lampirkan, database akan segera tersedia dan ditingkatkan secara otomatis. Jika database memiliki indeks teks lengkap, proses peningkatan baik mengimpor, mengatur ulang, atau membangunnya kembali, tergantung pada pengaturan properti server Opsi Peningkatan Teks Penuh. Jika opsi peningkatan diatur ke Impor atau Bangun Ulang, indeks teks lengkap tidak akan tersedia selama peningkatan. Bergantung pada jumlah data yang diindeks, impor dapat memakan waktu beberapa jam, dan pembangunan ulang dapat memakan waktu hingga sepuluh kali lebih lama. Perhatikan juga bahwa ketika opsi peningkatan diatur ke Impor, jika katalog teks lengkap tidak tersedia, indeks teks lengkap terkait dibangun kembali.

Jika tingkat kompatibilitas database pengguna adalah 100 atau lebih tinggi sebelum peningkatan, tingkat tersebut tetap sama setelah peningkatan. Jika tingkat kompatibilitas adalah 90 sebelum peningkatan, dalam database yang ditingkatkan, tingkat kompatibilitas diatur ke 100, yang merupakan tingkat kompatibilitas terendah yang didukung di SQL Server 2014. Untuk informasi selengkapnya, lihat MENGUBAH Tingkat Kompatibilitas DATABASE (Transact-SQL).

Lihat Juga

BUAT DATABASE (SQL Server Transact-SQL)
Melepas Database