it-swarm.asia

Aynı veya başka bir sunucuda MSSQL veritabanı nasıl çoğaltılır?

Aşağıdakileri gerçekleştirmeye çalışıyorum:

  1. Özgün veritabanının anlık görüntüsünü alın, başka bir sunucuda bir kopyasını oluşturun ve kesinleştirin
  2. Özgün veritabanının anlık görüntüsünü alın, aynı sunucuda farklı bir DB adı altında bir kopya oluşturun.

Ancak, MSSQL ile sınırlı deneyim nedeniyle olamaz. Herhangi bir öneri?

İlave bilgi:

Kaynak DB sunucusu: SQL Server 2000

Hedef DB sunucusu: SQL Server 2005

15
Alex N
  1. veritabanını yedekle
  2. veritabanını yeni bir adla ve/veya başka bir sunucuda geri yükleme

Bu işlemlerin ikisi de Enterprise Manager (SQL2000) veya onun yerine geçen SQL Management Studio'dan (SQL2005 +) veya TSQL komutlarından BACKUP ve [ ~ # ~] [restore ~ ​​# ~] .

Not: SQL2005'te SQL2000'den yedeklenmiş bir veritabanını çoğu durumda sorun değil, tersi şekilde geri yükleyebilirsiniz.

17
David Spillett

Yukarıdaki adımları uygularken bunu tökezlediğim için bunu ekliyorum.
SQL Server 2008 R2'de en azından sunucuya yerel bir yedek almak için bir adımı atlayabilirsiniz.

  1. Sağ Tıklama Veritabanları
  2. Veritabanını Geri Yükle'yi tıklayın.
  3. Veritabanından seçeneğini kopyaladığınız veritabanına ayarlayın
  4. Veritabanına seçeneğini yeni adı olarak ayarlama
  5. Tamam'ı tıklayın
7
Chris

Muhtemelen bu en iyi çözümdür:

1) Açık Kaynak DB Sunucus - Yerel dosyaya yedek oluştur

DECLARE @fileName nvarchar(400);
DECLARE @DB_Name nvarchar(50);

SET @DB_Name = 'NameOfSourceDatabase'
SET @fileName = 'c:\Test\original.bak'

BACKUP DATABASE @DB_Name TO DISK = @fileName

2) Kaynak Dosyayı Hedef Sunucuya kopyalayın.
Her iki sunucu da aynı makinedeyse, bu dosyanın bir kopyasını oluşturmak isteyebilirsiniz:

EXEC master.dbo.xp_cmdshell 'COPY c:\Test\original.bak   c:\Test\clone.bak'

3) Açık Hedef DB Sunucus: Veritabanını yedekleme dosyasından geri yükle

RESTORE DATABASE CloneDB

FROM DISK='c:\Test\clone.bak'
5
Stefano Rosati

mS SQLServer 2012 kullanarak, önce 3 temel adım gerçekleştirmeniz, sadece kaynak DB => yapısını içeren .sql dosyasını oluşturmanız ve kaynak DB'yi sağ tıklamanız ve ardından Görevler sonra Komut Dosyaları Oluştur => sihirbazı takip etmeniz ve u Yerel olarak .sql dosyası İkinci olarak, .sql dosyasında kaynak db'yi hedef bir => hedef dosyaya sağ tıklayın ve Yeni Sorgu ve Ctrl-H tuşlarına basın veya (düzenle - bul ve değiştir - Quack replce) son olarak, verilerle doldurun => algılama DB'sini sağ tıklatın, ardından Görevler'i ve ardından Verileri İçe Aktar => Veri kaynağı bırakma dow'u "sql sunucusu için .net framework data procider" olarak ayarlandı + DATA ex altında bağlantı dizesi metin alanını ayarla ex: Data Source = Mehdi\SQLEXPRESS; Başlangıç ​​Kataloğu = db_test; Kullanıcı Kimliği = sa; Şifre = sqlrpwrd15 => Hedefle aynı şey => aktarmak istediğiniz tabloyu işaretleyin veya tümünü işaretlemek için "source: ....." yanındaki onay kutusunu işaretleyin

bitirdiniz.

0
Mehdi Benkirane