Firebird RDBMSのレプリケーションとフェイルオーバーに関するDRBD / Heartbeatについてのあなたの意見は何ですか?
-
06-07-2019 - |
質問
私は、プロジェクトにFirebirdを使用する可能性を調査しています。
ただし、潜在的な問題の1つは、レプリケーションとフェールオーバーです。溶液。 Firebird FAQにはいくつかの潜在的なソリューションがリストされていますが、それらは1)Windows中心です。 2)恐ろしく時代遅れ。 3)商業的;または4)フル機能ではありません。
私が見る唯一の潜在的なオプションはファイバーで、1)未熟に見えます。 2)死亡の可能性。および3)フル機能ではありません。
DRBDとHeartbeatについて学びましたが、これらのソリューションは有望に見えます。 1)複製されたFirebird構成をセットアップしている場合、フィードバックをお探しです。および/または2)FirebirdでDRBDを使用しました。
「よくある質問」、推奨事項、ヒントなど
ありがとう!
解決
Firebird Conference 2009 <には、レプリケーションに関するセッションが1つあります
ホルガークレムト
* Firebird Replicated Part 1 * Firebird Replicated Part 2 o In this two sessions you will see how easy it is to implement
独自のレプリケーションシステム Firebirdデータベース。トリガーに基づく シンプルなスクリプトで、作成できます ライブバックアップシステム。建築学、建築物、建築様式 マスター-マスター、マスター-スレーブ、 マルチマスター、オンラインおよびオフライン レプリケーション。複製されたFirebird クラスターはどのクライアントでも使用できます 中断のない場合も 計画的な部分的なハードウェア障害の ハードウェアおよびソフトウェアのメンテナンス 操作、たとえばへの切り替え 新しいFirebirdバージョン。
他のヒント
過去2年間、まったく同じ問題に対して DRBD / Heartbeat / Pacemaker ソリューションを使用してきました。 Firebirdデータベースを稼働状態に保ち、フェイルオーバーする。セットアップは実際には非常に簡単であり、私はあなたが有利なスタートを切るためにあなたに与えるいくつかの提案があります。これらは単なる提案です...
- drbd パーティションを作成し、フォーマットして / data にマウントします(もちろんペースメーカーを使用)
- aliases.conf を drbdパーティションに置くと、変更するたびにaliases.confを2回変更する必要がなくなります。 aliases.confファイルを/ dataにコピーし、両方のノードの/etc/firebird/2.1/aliases.confにリンクします
プライマリ/セカンダリセットアップでDrbd / Pacemakerを使用する欠点は、プライマリノードが停止するとすぐにクライアントが接続を失うことです。 strong>およびセカンダリノードが起動するまで。再接続する必要があります。 Firebirdクライアントは接続タイムアウトを許可する必要がありますが、アプリケーションで実際には機能しませんでしたが、使用するアプリケーションまたはライブラリがFirebird接続タイムアウトを実際に使用していない可能性があります) >
データベースの複製については、Hugues Van Landeghemが記述または引用したとおりに進めなければならないのではないかと心配しています。トリガーで動作するこのようなアプリケーションを開発しました。そのため、テーブルに新しい行が追加され、トリガーがエントリのキーを別のテーブルにコピーします。このテーブルは、そのエントリを取得して別のデータベースに挿入するアプリケーションによって常に読み取られます。かなりいですが、それはうまく動作します!私は個人的に、Firebirdは独自のdatbaseレプリケーションシステムを持つことにある程度の時間を費やすべきだと考えています...彼らは本当に遅れています... 私の情報が少しお役に立てば幸いです。さらに質問がある場合は、気軽に私に連絡するか、私のサイトにアクセスしてください gefoo.org