SQL Server: mengapa harus menggunakan perangkat cadangan?

8

Saat mengambil cadangan dari database, apakah "praktik yang baik" untuk menggunakan perangkat cadangan logis untuk lokasi cadangan? Apa manfaat menggunakan perangkat cadangan?

jrara
sumber

Jawaban:

6

Bayangkan Anda memiliki banyak pekerjaan cadangan. Cadangan lengkap, cadangan diferensial, cadangan log transaksi ... Sekarang bayangkan Anda perlu memindahkan semua cadangan dari disk lokal ke SAN. jika Anda menggunakan perangkat cadangan, Anda hanya perlu membuat ulang perangkat dengan jalur ke disk baru. Tetapi jika skrip cadangan Anda ditulis untuk menggunakan jalur lengkap, Anda perlu menulis ulang setiap pekerjaan, setiap langkah kerja untuk mengubah jalur ini.

Tetapi ada skenario ketika Anda tidak perlu menggunakan perangkat cadangan, misalnya, ketika Anda menggunakan beberapa skenario khusus di mana Anda secara dinamis mengubah jalur cadangan atau nama file (misalnya, menambahkan tanggal / waktu ke folder atau nama file).

Alex_L
sumber
Maksud Anda, Anda tidak memiliki UDF atau jalurnya ada di satu tempat? Dan menyimpannya di variabel?
gbn
Saya tidak pernah memberi tahu tentang cara saya melakukan backup :) Saya baru saja menjawab pertanyaan "mengapa ini merupakan praktik yang baik" dan "manfaat menggunakan perangkat cadangan" ... Di perusahaan saya, kami menggunakan skenario yang berbeda, karena untuk sebagian besar sistem jalur cadangan, nama file dan konten dijelaskan dalam instruksi dukungan. Skenario Anda dengan prangko seumur hidup yang kami gunakan juga.
Alex_L
10

Saya lebih suka satu file per cadangan

  • DB_FULL_yyyymmddhhnn.bak
  • DB_DIFF_yyyymmddhhnn.bak
  • DB_LOG_yyyymmddhhnn.bak

Saya tidak mau:

  • meminta perangkat cadangan untuk melihat apa yang disimpan di sana
  • salin seluruh perangkat cadangan untuk mendapatkan satu basis data
  • FTP atau menggeser lebih banyak yang saya butuhkan di sekitar tempat itu

Jika Anda memiliki basis data ukuran TB, partisi, grup file dan ingin melakukan pencadangan / pemulihan parsial, maka masalah ini akan berlipat ganda. Dalam situasi DR, saya ingin semuanya sederhana dan jelas.

Sebagian besar toko (besar dan kecil) yang pernah saya kunjungi melakukan ini: lebih mudah untuk berurusan dengan file yang menggambarkan diri.

Konsep "perangkat" kembali ke Sybase, SQL Server 6.5 dan sebelumnya. Di sini Anda memiliki perangkat disk juga. MDF dan LDF terpisah diperkenalkan dengan SQL Server 7

gbn
sumber
4

Perangkat cadangan logis hanyalah abstraksi dari perangkat fisik.

Ini menyederhanakan peralihan antar perangkat fisik, karena Anda dapat mengubah definisi perangkat logis daripada harus mengedit skrip cadangan atau paket pemeliharaan.

Mark Storey-Smith
sumber
4

Saya menggunakan perangkat cadangan logis untuk sistem pelaporan di mana kami ingin melakukan beberapa pemulihan dan tidak ingin skrip keluar jalur lengkap. Kita dapat dengan mudah mengubah definisi perangkat dump tanpa harus mengubah skrip kami.

Saya percaya konsep yang sama berlaku untuk menggunakan perangkat dump logis untuk backup tape, meskipun kami tidak pernah langsung dibuang ke tape.

Itulah satu-satunya manfaat yang saya sadari saat ini.

SQLRockstar
sumber
3

Sementara mereka memiliki kegunaan mereka, saya lebih suka tetap dengan satu cadangan penuh, diferensial atau transaksi log per file, karena membuatnya lebih mudah untuk menjalankan membersihkan skrip untuk menghapus cadangan lama dan mencegah drive cadangan dari mengisi.

briancarrig
sumber
1
Saya tidak dapat melihat mengapa menggunakan file yang berbeda untuk file bacup yang berbeda bertentangan dengan penggunaan perangkat cadangan. Anda mungkin memiliki tiga perangkat cadangan untuk setiap jenis cadangan. Tugas "menghapus cadangan lama" dan "mencegah file cadangan tidak diisi" hanyalah pertanyaan kapan harus menggunakan WITH INIT dan WITH NOINIT.
Alex_L
1
Yang melibatkan pengaturan RETAINDAYS = X atau EXPIREDATE = X pada cadangan ke perangkat dan menggunakan INIT dengan NOSKIP (yang menurut saya, standar dengan INIT). Tidak mudah untuk melacak pembersihan sebagai "hapus semua file yang lebih tua dari X". IMO.
briancarrig
2

Menurut pemahaman saya, manfaat menggunakan perangkat cadangan adalah menyederhanakan skrip, membuatnya lebih mudah, jika Anda harus memindahkan drive atau perangkat dan, yang paling berguna menurut saya; bisa memiliki skrip cadangan seragam di beberapa server tempat lokasi cadangan dapat ditentukan pada server berdasarkan server, tetapi perangkat cadangan dapat tetap sama di semua server. Misalnya "Primary_Backup_Location".

Dokter
sumber
1

Selain apa yang telah ditulis di atas, satu-satunya alasan lain yang bisa saya lihat menggunakan perangkat cadangan adalah jika ruang Anda terbatas. Jika Anda memiliki DB 100 GB, dan 2 drive dengan masing-masing ruang kosong 60 GB, Anda dapat membuat perangkat cadangan di setiap drive dan mencadangkan keduanya. Peringatannya adalah bahwa Anda perlu kedua perangkat untuk memulihkan.

-chris

--Tentu saja Anda bisa menulis ke beberapa file cadangan alih-alih perangkat juga ..

Bersihkan Isi
sumber
Untuk menambahkan: Anda bahkan dapat membagi disk fisik yang berbeda untuk mempercepat waktu cadangan, saat menggunakan TSQL minimal.
StanleyJohns