Menyalin 500 GB database SQL Server dari contoh Produksi ke Dev

12

Kami perlu menyalin basis data 500 GB dari server PRODUCTION kami ke server DEV. Kami hanya memiliki jendela 5 jam.

Apa cara tercepat untuk mencapai ini?


sumber
7
1. Apa yang Anda maksud dengan "jendela 5 jam"? Produksi akan turun selama 5 jam? 2. Apakah Anda memerlukan versi terbaru dari basis data produksi, atau akankah cadangan yang mencukupi? 3. Apa modus pemulihan basis data produksi Anda?
Nick Chammas

Jawaban:

15

Ada dua opsi yang dapat Anda lakukan yang tidak akan menyebabkan downtime ke lingkungan produksi Anda:

1) Jika Anda hanya ingin mengambil struktur basis data itu sendiri (Anda tidak memerlukan data), Anda cukup skrip basis data produksi. Kemudian jalankan saja itu di server dev Anda untuk membuat database.

2) Jika Anda membutuhkan database dan data cukup ambil cadangan terbaru dari database itu dan mengembalikannya ke server dev Anda. Anda akan menemukan bahwa ini adalah metode yang paling umum digunakan untuk menjaga agar server pengembangan tetap cocok dengan data produksi.


sumber
9

Jika Anda memiliki

  • kompresi cadangan aktif?
  • jaringan server-server yang cepat (titik masuknya 1 GB)

... lalu salin saja, pulihkan. Ini dapat ditulis dalam PowerShell, Perl, cmd.exe dll.

Ketika Anda mengatakan "jendela" saya berasumsi maksud Anda jendela 5 jam pada produksi. Tidak dapat menjadi hal yang kritis untuk memuat pengembangan.

gbn
sumber
5

Salin ke hard disk yang terpasang secara lokal.

Kenapa hanya jendela terbatas? Jangan salin - muat cadangan ke dev.

TomTom
sumber
Sepakat. Tidak perlu melepaskan (mengharuskan downtime), sungguh, ketika mengembalikan cadangan sudah cukup.
p.campbell
2
Saya akan menyalin salinan cadangan. Tidak perlu mencatat basis data produksi Anda untuk menyalinnya di mana saja. Jika Anda memerlukan titik waktu tertentu, buat cadangan copy_only saja (SQL 2005+) atau salin juga beberapa cadangan tran log.
Ben Thul
2

Mungkin jawaban saya tidak cocok dengan use case Anda, tetapi, pernahkah Anda mempertimbangkan untuk melakukan setup, pada server dev Anda, sebuah stand-by database dengan menggunakan teknik seperti pengiriman log .... sehingga Anda dapat mengembalikan prod Anda di atas dev Anda sebelum dan simpan salinan ini selaras dengan produk Anda ...

Semoga bantuan ini

Darkwookiee
sumber
0

Buat file urutan cadangan. Katakanlah seluruh ukuran cadangan Anda adalah 500 GB; Anda dapat membaginya berdasarkan kebutuhan Anda, membuat cadangan 10 urutan yang terdiri dari 10 file cadangan, masing-masing berukuran 50 GB, dan kemudian mencoba memulihkan atau memindahkan file cadangan satu per satu. Ini akan mengurangi lalu lintas jaringan dan mengembalikan waktu.

Subir Sankar Das
sumber
3
Halo Subir dan selamat datang di DBA.SE. Saya telah mengedit jawaban Anda untuk meningkatkan kejelasan dan menghapus tanda tangan di bagian bawah sesuai panduan kami . Terima kasih atas jawaban Anda.
Nick Chammas
Saya gagal melihat bagaimana membagi file menjadi 10 file individual akan membuat perbedaan dengan waktu yang diperlukan untuk mengangkut file-file tersebut di seluruh jaringan.
Max Vernon