Pulihkan File ke Lokasi Baru (SQL Server)

Berlaku untuk:SQL Server

Topik ini menjelaskan cara memulihkan file ke lokasi baru di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL.

Dalam Topik Ini

Sebelum Anda mulai

Batasan dan Pembatasan

  • Administrator sistem yang memulihkan file harus menjadi satu-satunya orang yang saat ini menggunakan database untuk dipulihkan.

  • RESTORE tidak diperbolehkan dalam transaksi eksplisit atau implisit.

  • Di bawah model pemulihan penuh atau dicatat massal, sebelum Anda dapat memulihkan file, Anda harus mencadangkan log transaksi aktif (dikenal sebagai ekor log). Untuk informasi selengkapnya, lihat Mencadangkan Log Transaksi (SQL Server).

  • Untuk memulihkan database yang dienkripsi, Anda harus memiliki akses ke sertifikat atau kunci asimetris yang digunakan untuk mengenkripsi database. Tanpa sertifikat atau kunci asimetris, database tidak dapat dipulihkan. Akibatnya, sertifikat yang digunakan untuk mengenkripsi kunci enkripsi database harus dipertahankan selama cadangan diperlukan. Untuk informasi selengkapnya, lihat Sertifikat SQL Server dan Kunci Asimetris.

Keamanan

Izin

Jika database yang dipulihkan tidak ada, pengguna harus memiliki izin CREATE DATABASE untuk dapat menjalankan RESTORE. Jika database ada, izin RESTORE default ke anggota peran server tetap sysadmin dan dbcreator dan pemilik (dbo) database (untuk opsi FROM DATABASE_SNAPSHOT, database selalu ada).

Izin RESTORE diberikan kepada peran di mana informasi keanggotaan selalu tersedia untuk server. Karena keanggotaan peran database tetap hanya dapat diperiksa ketika database dapat diakses dan tidak rusak, yang tidak selalu terjadi ketika RESTORE dijalankan, anggota peran database tetap db_owner tidak memiliki izin RESTORE.

Menggunakan SQL Server Management Studio

Untuk memulihkan file ke lokasi baru

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

  2. Klik kanan database yang Anda inginkan, arahkan ke Tugas, arahkan ke Pulihkan, lalu klik File dan Grup File.

  3. Pada halaman Umum , dalam kotak daftar Ke database , masukkan database yang akan dipulihkan. Anda bisa memasukkan database baru atau memilih database yang sudah ada dari daftar drop-down. Daftar ini mencakup semua database di server, tidak termasuk master database sistem dan tempdb.

  4. Untuk menentukan sumber dan lokasi kumpulan cadangan yang akan dipulihkan, klik salah satu opsi berikut:

    • Dari database

      Masukkan nama database dalam kotak daftar. Daftar ini hanya berisi database yang telah dicadangkan sesuai dengan riwayat pencadangan msdb .

    • Dari perangkat

      Klik tombol telusuri. Dalam kotak dialog Tentukan perangkat cadangan, pilih salah satu jenis perangkat yang tercantum di kotak daftar Jenis media cadangan. Untuk memilih satu atau beberapa perangkat untuk kotak daftar media Cadangan, klik Tambahkan.

      Setelah Anda menambahkan perangkat yang Anda inginkan ke kotak daftar Media cadangan, klik OK untuk kembali ke halaman Umum .

  5. Di pilih kumpulan cadangan untuk memulihkan kisi, pilih cadangan yang akan dipulihkan. Kisi ini menampilkan cadangan yang tersedia untuk lokasi yang ditentukan. Secara default, rencana pemulihan disarankan. Untuk mengambil alih rencana pemulihan yang disarankan, Anda dapat mengubah pilihan di kisi. Cadangan apa pun yang bergantung pada cadangan yang tidak dipilih akan dibatalkan pilihannya secara otomatis.

    Kepala kolom Values
    Pulihkan Kotak centang yang dipilih menunjukkan kumpulan cadangan yang akan dipulihkan.
    Nama Nama kumpulan cadangan.
    Jenis File Menentukan jenis data dalam cadangan: Data, Log, atau Data Aliran File. Data yang terkandung dalam tabel ada di file Data . Data log transaksi ada di file Log . Data objek besar biner (BLOB) yang disimpan pada sistem file ada di file Filestream Data .
    Jenis Jenis pencadangan yang dilakukan: Log Penuh, Diferensial, atau Transaksi.
    Server Nama instans Database-Engine yang melakukan operasi pencadangan.
    Nama Logika File Nama logis file.
    Database Nama database yang terlibat dalam operasi pencadangan.
    Tanggal Mulai Tanggal dan waktu ketika operasi pencadangan dimulai, disajikan dalam pengaturan regional klien.
    Tanggal Selesai Tanggal dan waktu ketika operasi pencadangan selesai, disajikan dalam pengaturan regional klien.
    Ukuran Ukuran cadangan yang diatur dalam byte.
    Nama Pengguna Nama pengguna yang melakukan operasi pencadangan.
  6. Di panel Pilih halaman , klik halaman Opsi .

  7. Di Pulihkan file database sebagai kisi, tentukan lokasi baru untuk file atau file yang ingin Anda pindahkan.

    Kepala kolom Values
    Nama File Asli Jalur lengkap file cadangan sumber.
    Jenis File Menentukan jenis data dalam cadangan: Data, Log, atau Data Aliran File. Data yang terkandung dalam tabel ada di file Data . Data log transaksi ada di file Log . Data objek besar biner (BLOB) yang disimpan pada sistem file ada di file Filestream Data .
    Pulihkan Sebagai Jalur lengkap file database yang akan dipulihkan. Untuk menentukan file pemulihan baru, klik kotak teks dan edit jalur dan nama file yang disarankan. Mengubah jalur atau nama file di kolom Pulihkan Sebagai setara dengan menggunakan opsi MOVE dalam pernyataan TRANSACT-SQL RESTORE.
  8. PilihOK.

Menggunakan T-SQL

Untuk memulihkan file ke lokasi baru

  1. Secara opsional, jalankan pernyataan RESTORE FILELISTONLY untuk menentukan jumlah dan nama file dalam cadangan database lengkap.

  2. Jalankan pernyataan RESTORE DATABASE untuk memulihkan cadangan database lengkap, menentukan:

    • Nama database yang akan dipulihkan.

    • Perangkat cadangan dari tempat pencadangan database lengkap akan dipulihkan.

    • Klausa MOVE untuk setiap file yang akan dipulihkan ke lokasi baru.

    • Klausul NORECOVERY.

  3. Jika file telah dimodifikasi setelah cadangan file dibuat, jalankan pernyataan RESTORE LOG untuk menerapkan pencadangan log transaksi, menentukan:

    • Nama database tempat log transaksi akan diterapkan.

    • Perangkat cadangan dari tempat cadangan log transaksi akan dipulihkan.

    • Klausul NORECOVERY jika Anda memiliki cadangan log transaksi lain untuk diterapkan setelah yang saat ini; jika tidak, tentukan klausul RECOVERY.

      Pencadangan log transaksi, jika diterapkan, harus mencakup waktu ketika file dan grup file dicadangkan.

Contoh (Transact-SQL)

Contoh ini memulihkan dua file untuk MyNwind database yang awalnya terletak di Drive C ke lokasi baru di Drive D. Dua log transaksi juga akan diterapkan untuk memulihkan database ke waktu saat ini. Pernyataan RESTORE FILELISTONLY ini digunakan untuk menentukan jumlah dan nama logis dan fisik file dalam database yang sedang dipulihkan.

USE master;  
GO  
-- First determine the number and names of the files in the backup.  
RESTORE FILELISTONLY  
   FROM MyNwind_1;  
-- Restore the files for MyNwind.  
RESTORE DATABASE MyNwind  
   FROM MyNwind_1  
   WITH NORECOVERY,  
   MOVE 'MyNwind_data_1' TO 'D:\MyData\MyNwind_data_1.mdf',   
   MOVE 'MyNwind_data_2' TO 'D:\MyData\MyNwind_data_2.ndf';  
GO  
-- Apply the first transaction log backup.  
RESTORE LOG MyNwind  
   FROM MyNwind_log1  
   WITH NORECOVERY;  
GO  
-- Apply the last transaction log backup.  
RESTORE LOG MyNwind  
   FROM MyNwind_log2  
   WITH RECOVERY;  
GO  

Lihat Juga

Memulihkan Pencadangan Database Menggunakan SQL Server Management Directory
RESTORE (Transact-SQL)
Salin Database dengan Pencadangan dan Pemulihan
Pulihkan File dan Grup File (SQL Server)