あるサーバーから別のサーバーに約40のデータベースをコピーする必要があります。新しいデータベースには新しい名前を付ける必要がありますが、すべて元のデータベースと同じテーブル、データ、およびインデックスです。これまで私は行ってきました:
1)各宛先データベースの作成
2) " Tasks-> Export Data "コマンドを使用して、各データベースのテーブルを個別に作成および設定します
3)SQLスクリプトを使用して各データベースのすべてのインデックスを再構築する
データベースごとに3つのステップしかありませんが、もっと簡単な方法があると思います。 MS SQL Serverの専門家にアドバイスはありますか?
複数のデータベースでこれを実行している場合、ポイントアンドクリックソリューションではなく、単純なスクリプトソリューションが必要です。
これは私が保持しているバックアップスクリプトです。 1つのファイルで機能するようにしてから、多くのファイルで変更します。
(on source server...)
BACKUP DATABASE Northwind
TO DISK = 'c:\Northwind.bak'
(target server...)
RESTORE FILELISTONLY
FROM DISK = 'c:\Northwind.bak'
(look at the device names... and determine where you want the mdf and
ldf files to go on this target server)
RESTORE DATABASE TestDB
FROM DISK = 'c:\Northwind.bak'
WITH MOVE 'Northwind' TO 'c:\test\testdb.mdf',
MOVE 'Northwind_log' TO 'c:\test\testdb.ldf'
GO
おそらく最も簡単なのは、デタッチ/再アタッチすることです。 DBのサーバーマネージャーを右クリックし、タスク->デタッチします。次に、MDF/LDFファイルを新しいサーバーにコピーし、サーバーアイコンとタスク->接続をクリックして再接続します。 MDFファイル-名前などが正確であることを確認してください。
簡単にするために
宛先サーバーespでのアクセス許可、ユーザー、およびグループについて考慮すること。転送または復元する場合。
すでにより良い答えがありますが、これは単なる別のオプションであるため、「これも実行されました」です。
無料の低価格については、 Microsoft SQL Serverデータベース公開ウィザード をご覧ください。このツールを使用すると、スキーマ、データ、またはデータとスキーマをスクリプト化できます。さらに、UIまたはコマンドラインから実行できます<-CIプロセスを考えてください。
バックアップ/復元ソリューションを使用している場合は、孤立したユーザーがいる可能性が高いため、修正方法については この記事 <Microsoft>を確認してください。
レプリケーションを使用しない場合は、バックアップ->復元が最も簡単です。
Enterprise Managerの標準SQLバックアップツールを使用してデータベースをバックアップし、2番目のサーバーで復元するときに、新しいデータベースの名前を指定できます。
これは、スキーマ全体を維持するための最良の方法です。
バックアップを使用して、データベースを新しい名前で新しいサーバーに復元します。
Redgate SQLCompareとSQLDataCompare。比較バンドルは、私がこれまで働いてきた会社がこれまでに行った中で断然最高の投資でした。 e-トレーニングコンテンツを移動するのは簡単でした。
それらのリンクを確認してください。