SQL Server に格納されたジオデータベースの移行方法

ジオデータベースを移行するには、新しいジオデータベースを作成してデータを移行する方法と、データベース全体を移行する方法があります。Microsoft SQL Server では、データベースを移行するのに複数の方法があります。

新しいジオデータベースを作成してからデータを移行する

新しい SQL Server データベースを作成し、その中にジオデータベースを作成してから、既存のデータを新しいジオデータベースに移行することができます。これには、ArcGIS でコピーと貼り付けエクスポート ツールデータの抽出ウィザード、または XML ワークスペース ドキュメントを使用します。

新しいジオデータベースにデータをロードしているときにログインしているユーザが、そのデータを所有することになることに注意してください。新しいジオデータベースでもデータの所有者を同じにする場合は、各ユーザが自分の所有しているデータを移行します。

SQL Server データベースの移行

SQL Server データベースを移行するには、デタッチとアタッチ、バックアップとリストア、またはデータベース コピー ウィザードの使用などの方法があります。

SQL Server データベースの移行にどの方法を使用するとしても、データベースの名前を変更することはできません。たとえば、データベースをリストアする際には、必要に応じて、データベースを別の名前でリストアすることができます。その際、ジオデータベースの名前を変更すると、そのジオデータベースへの接続は不可能になります。

ジオデータベースのシステム テーブル内のすべてのオブジェクト名はデータベース名で完全修飾されます。さらに、多くのストアド プロシージャは、<データベース>.<所有者>.<オブジェクト>という形式の 3 つの部分からなる命名規則を使用します。データベースの名前が変更された場合、これらのストアド プロシージャは実行できなくなります。

デタッチとアタッチの使用

運用している SQL Server データベースに格納されたジオデータベースを移行する最も簡単な方法は、移行元サーバからデータベースをデタッチし、移行先サーバにアタッチすることです。次の点に注意してください。

  • デタッチしたデータベースへの接続は完全に不可能になります。
  • デタッチにより、データベースは正常終了されます。
  • デタッチ/アタッチは、データベースのバックアップ/リストアよりも高速に実行される可能性があります。
  • デタッチ/アタッチを使用すると、移行元サーバと移行先サーバにまったく同じデータベースが作成されます。
  • この方法は大量のデータを移動する場合に適しています。
  • SQL Server インスタンスからデータベースをデタッチするには、最低でも db_owner 権限が必要になります。
  • データベースを SQL Server インスタンスにアタッチするには、CREATE DATABASE 権限が必要になります。
  • Enterprise レベルの ArcGIS for Server でライセンスされる SQL Server の ArcSDE ジオデータベースを使用すると、CREATE DATABASE FOR ATTACH SQL コマンドですべてのデータおよびログ ファイルを指定することができます。

別のデータベースのバックアップのリストア

運用している SQL Server データベースを移行するためのもう 1 つの方法は、データベースの完全バックアップを実行し、移行先サーバでバックアップ ファイルをリストアすることです。次の点に注意してください。

  • リストア操作中、論理ファイル名を変更することはできません。
  • バックアップ処理でのアタッチは可能ですが、リストア処理では不可能です。

SQL Server データベースのバックアップのリストアについては、SQL Server のドキュメントをご参照ください。

データベース コピー ウィザード

ライセンスライセンス:

Enterprise ライセンス レベルの ArcGIS for Server で作成されるジオデータベースのみに適用されます

SQL Server Management Studio が提供するデータベース コピー ウィザードを使用して、データベースを移行することができます。データベース コピー ウィザードを使用する際には、注意しなければならない点がいくつかあります。

  • 複数のデータベースをコピーすることができます。
  • 同じインスタンス上でデータベースのコピーを作成する場合、データベース コピー ウィザードは使用できません。
  • データベース コピー ウィザードからユーザ アカウントを除外することはできないので、それらはコピー先のデータベースに新しいサーバ ユーザ ID(SID)で移行されます。
  • このウィザードを使用するには、移行元サーバと移行先サーバが接続している必要があります。
5/10/2014