問題タブ [transactional-replication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1618 参照

sql-server - スクリプトを使用したトランザクション レプリケーション

SSMS を使用してトランザクション レプリケーションを構成でき、正常に動作します。しかし、c#/vb アプリケーションから使用できるように、スクリプトを使用して構成したいと考えています。

それを行う方法はありますか?

0 投票する
1 に答える
2695 参照

sql-server - SQL Server双方向トランザクションレプリケーション-それは良いユースケースですか?

SQLサーバーでのスケールアウトに問題があります。これは主にいくつかの理由によるものです:1)不十分に設計されたデータ構造、2)重労働およびビジネス/処理ロジックはすべてT-SQLで実行されます。これは、サーバーで分析を実行するために雇ったRedmondのMicrosoftSQL担当者によって検証されました。私たちは文字通り、コマンドタイムアウトを継続的に増やすことで問題を解決しています。これはばかげており、長期的な解決策としては適切ではありません。それ以来、次の戦略と一連のフェーズをまとめました。

フェーズ1:出血を止めるために、問題にハードウェア/ソフトウェアを投げます。

これには、キャッシングサーバーなどのいくつかの異なるものが含まれますが、ここで皆さんに質問したいのは、特に、新しいSQLサーバーでの双方向トランザクションレプリケーションの実装に関連しています。これを実装するための2つのユースケースがあります。

  1. この新しいSQL「処理ボックス」で長時間実行(およびテーブル/行のロック)SELECTを実行し、それらをキャッシュレイヤーにスローして、UIにキャッシュから読み取らせることを考えていました。これらのSELECTはレポートを生成し、Web上に結果を返します。

  2. ほとんどのビジネスロジックはSQLです。処理ロジックを実行するSELECT、INSERT、UPDATE、およびDELETEに対して実行中のクエリがいくつかあります。最終結果は、処理が完了した後(多くのカーソル)、実際にはINSERT、UPDATE、およびDELETEでいっぱいになります。これら2つのサーバー間の負荷を分散することが考えられます。

いくつか質問があります:

  1. これらは、双方向のトランザクションレプリケーションの優れたユースケースですか?

  2. このソリューションが「正しく機能」し、競合について心配する必要がないことを確認する必要があります。このソリューション内で競合が発生するのはどこですか?衝突を防ぐためにIDシードの増分をリセットすることに関するいくつかの記事を読みましたが、これは理にかなっていますが、UPDATE / DELETEまたは競合が発生する可能性のあるその他の場所をどのように処理しますか?

  3. 他にどのような問題が発生する可能性があり、注意する必要がありますか?

  4. この問題に対するより良い解決策はありますか?

フェーズ2:ロジックを.NETに書き直し、SQLストアドプロシージャを最適化して、セットベースの操作のみを実行するようにします。

これには明らかにしばらく時間がかかります。そのため、ユーザーが経験している苦痛を止めるために実行できるいくつかの準備手順があるかどうかを確認したかったのです。

ありがとう。

0 投票する
1 に答える
2765 参照

sql-server - SQL Server 2012は、更新可能なサブスクリプションを使用したトランザクションレプリケーションをサポートしていますか?

このページで、Microsoftは次のように述べています。

このトピックでは、SQLServer2012で 引き続き使用できる非推奨のレプリケーション機能について説明します。これらの機能は、SQLServerの将来のリリースで削除される予定です。非推奨の機能は、新しいアプリケーションでは使用しないでください。

スナップショットおよびトランザクションパブリケーションによる即時更新およびキュー更新を含む更新可能なサブスクリプション。

代わりに、ピアツーピアのトランザクションレプリケーションを使用することをお勧めします。

このページでは、Microsoftは更新可能なサブスクリプションを有効にする方法も教えています。

サブスクリプションの更新を有効にするには

新規パブリケーションウィザードの[パブリケーションタイプ]ページで、[ 更新可能なサブスクリプションを持つトランザクションパブリケーション]を選択します。

ただし、SQL Server 2012のパブリケーションタイプページで、更新可能なサブスクリプションを持つレプリケーションタイプのトランザクションパブリケーションが見つかりません。次の画像を参照してください。

ここに画像の説明を入力してください

SQL Server 2012にこの機能があるかどうか、誰でも確認できますか?

ありがとう!

0 投票する
1 に答える
946 参照

sql-server-2008 - SQLServerトランザクションレプリケーション-スクリプトの前後を実行する

SQL Server 2008を使用しており、トランザクションレプリケーションを設定しています。パブリッシャーでレプリケーション前のスクリプトを実行してから、サブスクライバーでレプリケーション後のスクリプトを実行できるようにする必要があります。これはトランザクションレプリケーションで可能ですか?

私はここでこの他の記事を見つけましたが、ここの投稿スクリプトは、snapsnotがサブスクライバーに配信されたときにのみ実行されます。

0 投票する
1 に答える
428 参照

sql-server-2008 - パブリッシャーがパーティション化されていない場合のサブスクライバーテーブルのパーティション化

サードパーティのデータベースに、非常に大きな、パーティション化されていない、トランザクションで複製されたテーブルがあります。これを管理していますが、変更することはできません。

パブリッシャーを変更することはできませんが、このテーブルをサブスクライバーで分割したいと思います。パブリッシャーですでにそのように設定されているテーブルのパーティション分割を維持することに関連するドキュメントをかなり見つけましたが、これに関連するものは何も見ていません。

私は、私を噛む可能性のある長期的な影響について心配しているので、それを行うメカニズムについてはそれほど心配していません。

誰かがこれを成功させたことがありますか、それとも私は今から3か月後に自分自身を嫌うことになりますか?

0 投票する
1 に答える
2686 参照

sql-server-2008 - パブリケーション データベースの復元後にレプリケーションを再開する

トランザクション レプリケーションを使用しています。D1 というパブリッシャー データベースとサブスクライバー データベース D2 があります。D1 は、DR 環境で配布されたログを取得しています。パブリッシャー (D1) で「バックアップと同期」オプションが有効になっています。これでデータはバックアップされましたが、何らかの理由でディストリビューターに送られず、D1 がクラッシュしました。バックアップしたデータベースを別のサーバーに復元し、パブリケーションとサブスクリプションを再度セットアップします。

では、ディストリビューターのデータベースに保存されていないデータは複製されるのでしょうか?

パブリケーションを削除して D1 データベースを削除し、[レプリケーション設定を保持] を使用して DR 環境から復元すると、パブリケーションが既に存在していてもデータはレプリケートされません..

0 投票する
1 に答える
1261 参照

sql-server - distribution.dbo.MSdistribution_history コメント 説明

distribution.dbo.MSdistribution_history のコメント列には、次のようなコメントが含まれています。

状態値は次のように変換されます

コメントは、リーダー スレッドがライター スレッドを待っているが、最後の統計エントリ以降に 1948689 コマンドを読み取ったことを示しています。それとも、リーダー スレッドがライター スレッドを待っていて、ライター スレッドが最後の統計エントリ以降に 1948689 コマンドを書き込んだということですか?

0 投票する
0 に答える
92 参照

sql-server-2008 - SQL Server 2008 R2 Std への AS400 サブスクリプション

AS400 ボックスから SQL Server ボックスへのサブスクリプションを作成できることは認識しています。私の質問は、AS400 テーブルの一部で進行中のアクティブなジャーナルがない場合、レプリケーションを行うことができますか?