2台のサーバー間でデータベースとイメージファイルを同期させる必要があります。ソースサーバーにはsql server 2000があり、移行先サーバーにはsql server 2008があります。更新されたデータが毎回SQL Server 2008に送られるように、SQL Server 2000の一部のテーブルでデータを同期する必要があります。画像が保存されているフォルダの場合も同様です。Microsoft Sync Framework 2.1をSQL Server 2000用に使用する
私は目標を達成するためにMicrosoft Syncフレームワーク(http://msdn.microsoft.com/sync)をWCFで実装しようとしました。私は、SQL Server 2008で二つのデータベースのために成功し、次のプロジェクトを実行しました:
しかし、私は、データベース間でデータを同期しようとしたときには、SQL Server 2000およびSQL Server 2008の内の1つの、そして私は、データを同期させることができませんでした。
質問:
は、SQL Server 2000およびSQL Server 2008との間でデータを同期させるためにとにかくありますか?
もしそうでなければ、目的を達成するために実装できる他の可能なアーキテクチャはありますか?
ありがとうございました。リンクに表示されているように、SQL Server 2000に対してプロジェクトを動作させようとしました。ストアドプロシージャの1つでmin_active_version()を操作してエラーが発生しないようにしました。すべての動作は、sampleSyncAgent.Synchronize()というコードが実行された場合を除き、「このデータベースではスナップショット分離が許可されていないため、データベース 'DBName'にアクセスできませんでした。ご存じのように、私はSQL Server 2000でスナップショットアイソレーションを使用することはできません(ALTER DATABASE [データベース名] SET ALLOW_SNAPSHOT_ISOLATION ON)。 – Bikee
私はあなたが離れてスナップショットの分離を設定しないで得ることができると思います。 http://code.msdn.microsoft.com/Database-Sync-Oracle-and-037fb083から、Oracleプロバイダのサンプルをご覧ください。カスタムプロバイダをこのように扱うことができます。 – JuneT
こんにちはJuneT、私はすでにOracleプロバイダの例を見て、SQL Server 2000のバージョンに変換しました。すべてのpl/sqlスクリプトをSQL Serverバージョンに変換して、最終的に同じエラーが発生したときにSQL Server 2000と互換性を持たせるようにコードを変更するのは面倒でした。エラーはSynchronizationHelper.csの47行目と同じです(SyncOperationStatistics stats = orchestrator.Synchronize();)。自分で試しましたか?もしそうなら、私はいくつかの知識を共有していれば素晴らしいだろう。 – Bikee