1. ホーム
  2. sql

[解決済み】リモートSQL Serverデータベースをローカルドライブにバックアップするにはどうすればいいですか?

2022-04-05 22:13:47

質問

データベースをリモートサーバーからローカルサーバーにコピーする必要があります。SQL Server Management Studioを使用しようとしましたが、リモートサーバーのドライブにしかバックアップされません。

いくつかポイントがあります。

  • ファイルをコピーできるような形でリモートサーバーにアクセスできない。
  • 自分のサーバーへのUNCパスを設定するアクセス権がない。

このデータベースをコピーする方法について何か思いつくことはありますか?サードパーティツールを使用しなければならないのでしょうか?

解決方法は?

Microsoft SQL Server Management Studioで、バックアップしたいデータベースを右クリックし、タスク ->スクリプトの生成をクリックすることができます。

ウィザードが表示されるので、以下の設定を行い、データベースのバックアップを実行します。 リモートサーバーでも :

  • バックアップするデータベースを選択し、次へを押してください。
  • 表示されるオプションで
    1. 2010の場合:[テーブル/ビュー オプション]の[スクリプト データ]と[スクリプト インデックス]を[True]に変更し、[次へ]をクリックします。
    2. 2012年の場合:「一般」の「スクリプトするデータの種類」を「スキーマのみ」から「スキーマとデータ」に変更します。
    3. 2014年:データをスクリプト化するオプションは、quot;Set Scripting Options"のステップで、"Hidden"になりました。
  • 次の 4 のウィンドウで、「すべて選択」、「次へ」の順にクリックします。
  • 新しいクエリウィンドウにスクリプトを実行することを選択します

それが終われば、目の前にバックアップスクリプトが用意されていることになります。 新しいローカル(またはリモート)データベースを作成し、スクリプトの最初の 'USE' ステートメントを新しいデータベースを使用するように変更します。 スクリプトを安全な場所に保存し、先に進み、新しい空のデータベースに対してスクリプトを実行します。 これで、ローカルに(ほぼ)複製されたデータベースが作成され、好きなようにバックアップすることができます。

もし フル リモートデータベースにアクセスする場合、ウィザードの最初のウィンドウで「すべてのオブジェクトをスクリプトする」をチェックし、次のウィンドウで「スクリプトデータベース」オプションを「真」に変更することができます。 ただし、スクリプト内のデータベース名を、スクリプトを実行する前に作成する必要のない新しいデータベースに完全検索&置換する必要があります。 これは、より正確な複製を作成する必要がありますが、権限の制限により利用できない場合があります。