Opsi Salin Basis Data tidak ditemukan di SQL Server Management Studio 2008 R2

10

Saya tidak dapat melihat opsi Copy Database di SQL Server Management Studio 2008 R2.

Adakah yang bisa memberi tahu saya apa yang terjadi? Salin Basis Data tidak ditemukan Gambar

mengganggu
sumber
basis data sumber benar-benar kosong tanpa baris. Saya ingin menyalin hanya struktur dengan tabel dan hubungan di antara mereka ke database kosong yang dihosting di server. silahkan lihat link blogs.msdn.com/b/jorgepc/archive/2009/01/19/...
2
@windson Lalu skrip database saja. Juga operasi yang jauh lebih mudah.
Thomas Stringer
Ya jika kosong, mudah saja menggunakan opsi menghasilkan skrip. Saya tidak yakin mengapa opsi wizard yang rusak akan hilang, saya sudah menginstal 2008 dan 2012 dan itu ada di kedua tempat.
Aaron Bertrand

Jawaban:

24

Itu karena Anda mengklik pada hal yang salah. Jangan klik kanan Database , tetapi Anda perlu klik kanan sebenarnya database yang Anda ingin menyalin, dan di bawah Tugas ada pilihan untuk Salin database ... . Dengan kata lain, klik kanan pada Database1 dan kemudian Anda akan melihat opsi ini di bawah Tugas .

Namun, sesuai komentar @ AaronBertrand, sangat disarankan untuk tidak menggunakan Wisaya Database Salin. Pergilah dengan cadangan dan kembalikan. Itu akan kurang dari sakit kepala.

Sunting : Tampaknya opsi ini tidak tersedia untuk edisi SQL Server Express. Saat menyambungkan ke contoh SQL Server Express, Anda tidak bisa menjalankan panduan Copy Database. Hal ini disebabkan oleh fakta bahwa dua cara utama untuk menjalankan tugas ini tidak tersedia di SQL Server Express Edition. Pertama, metode Detach / Reattach bergantung pada SQL Agent (mungkin untuk menyalin data dan mencatat file dari sumber ke tujuan), dan SMO telah dihapus dari 2008 R2 , sehingga metode ini juga tidak tersedia di Express 2008 R2.

Thomas Stringer
sumber
1
Saya mengklik database yang ingin saya salin saja. Lihat simbol silinder emas pada gambar yang menunjukkan basis data.
@indson Oh, begitu. Ok saya akan referensi jawaban JNK, mungkin itu termasuk dalam salah satu kategori tersebut. Either way, rekomendasi menyeluruh saya akan hanya untuk "Hasilkan Script ..." untuk database. Ini akan jauh lebih mudah dan lebih tidak rentan terhadap kesalahan.
Thomas Stringer
Lihat hasil edit saya. Tampaknya seolah-olah panduan ini tidak tersedia yang berkaitan dengan contoh SQL Server Express.
Thomas Stringer
SMO diperkenalkan dengan Sql Server 2005, DMO adalah fitur usang. SMO tersedia untuk edisi ekspres Sql Server 2008R2.
Roi Gavish
Anehnya, wizard Ekspor Data di SSMS Express secara eksplisit mengatakan "Untuk memindahkan atau menyalin database dan objek mereka dari satu contoh server ke yang lain, batalkan panduan ini dan gunakan Wizard Database Salin sebagai gantinya."
ATAU Mapper
9

Saya dapat membuat salinan database menggunakan SQL Express dengan memilih Backup Database dan kemudian pilih Pulihkan dari database .. berhenti sederhana

rekna
sumber
6
Mengapa downvotes? Jawaban Thomas menunjukkan bahwa SQL Server Express tidak memiliki panduan basis data salin sehingga pencadangan dan pemulihan sebagai nama baru tampaknya merupakan alternatif langsung.
Martin Smith
4

Pastikan itu tidak ditandai untuk replikasi, atau memulihkan / mencurigai / memuat / tidak dapat diakses.

Dari halaman msdn pada wisaya ini:

Panduan Database Salin tidak dapat digunakan untuk menyalin atau memindahkan basis data berikut.

  • Database sistem

  • Database ditandai untuk replikasi.

  • Database ditandai Tidak Dapat diakses, Memuat, Offline, Memulihkan, Tersangka, atau dalam Mode Darurat.

JNK
sumber
Hai, saya memastikan semua batasan di atas untuk mendapatkan opsi copy database. Tapi saya belum menemukan opsi.
navule
1
@windson Dari tangkapan layar dalam pertanyaan Anda, Anda tampaknya menggunakan edisi SQL Server Express, jadi saya ingin tahu mengapa Anda menerima jawaban ini ketika bagian kedua jawaban Thomas muncul di hadapannya lebih relevan.
Martin Smith
3

Ini aneh ... tapi sepertinya opsi ini dihapus di SSMS 2008 R2. Saya dapat melihatnya di SSMS 2005 (btw, tautan yang Anda posting menggunakan yang sama) Dan saya pikir satu-satunya pilihan Anda adalah hanya dengan skrip database atau memulihkan cadangan dengan nama yang berbeda.

JackLock
sumber
Itu di SSMS 2008 R2 lokal saya.
Thomas Stringer
1
Sekarang ini menjadi sangat aneh. Saya dapat melihat opsi ini jika saya terhubung ke contoh dev SQL Server 2008 R2 ... Tapi jika saya terhubung ke contoh edisi Express pada server jauh maka saya tidak melihat opsi itu (saya tidak punya contoh express lokal jadi saya tidak punya yakin jika itu adalah kasus yang sama) .. Saya ingin tahu apakah opsi ini didasarkan pada edisi contoh (Dev, Express, Enterprise dll)
JackLock
6
Saya melihat hal yang sama. Sepertinya ini tidak tersedia dengan contoh SQL Server Express.
Thomas Stringer