MyCATとは
MyCATの主な機能
1. ここでは、MySQL マスター スレーブ レプリケーションの実装に基づいて、読み取りと書き込みの分離に mycat を使用します。アーキテクチャ図は次のとおりです。 2. デモ 2.1 MySQLマスターにデータベースを作成する db1を作成する 2.2 データベースdb1にstudentテーブルを作成する 同時に、MySQLマスタースレーブレプリケーションが設定されているため、MySQLスレーブにも同じデータベースとテーブルが存在します。 2.3 mycat設定ファイルserver.xmlを編集する <!-- mycat のログインユーザー名を示します --> <ユーザー名="テスト"> <!-- mycat のログイン パスワードを示します --> <property name="password">テスト</property> <!-- カスタマイズ可能な mycat の論理データベース名を示します --> <property name="schemas">TESTDB</property> </ユーザー> <ユーザー名="ユーザー"> <property name="password">ユーザー</property> <property name="schemas">TESTDB</property> <プロパティ名="readOnly">true</プロパティ> </ユーザー> 2.4 mycat設定ファイルschema.xmlを編集する <!--TESTDB は、mycat の論理データベース名を表します。スキーマ ノードに子ノード テーブルがない場合は、dataNode 属性が存在する必要があります (実際の mysql データベースを指します)。 --> <スキーマ名="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"> </スキーマ> <!--マスターデータベース db1 を指定します--> <データノード名="dn1" データホスト="192.168.0.4" データベース="db1" /> <!-- マスター IP を指定します --> <dataHost name="192.168.0.4" maxCon="1000" minCon="10" balance="3" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"> <!--MySQL のハートビート ステータスを示します--> <heartbeat>ユーザーを選択()</heartbeat> <!-- マスターが書き込みを担当します --> <writeHost ホスト="hostM1" url="192.168.0.4:3306" ユーザー="root" パスワード="admin"> <!--スレーブは読み取りを担当します--> <readHost ホスト="hostS2" url="192.168.0.5:3306" ユーザー="root" パスワード="admin" /> </writeHost> </データホスト> この時点で、mycatを使用して読み書きを分離する設定が完了しました。 dataHostノードの次の3つのプロパティに注意してください バランス、スイッチタイプ、書き込みタイプ balance="0" の場合、読み取り/書き込み分離メカニズムは有効にならず、すべての読み取り操作は現在利用可能な writeHost に送信されます。 balance="1" の場合、すべての readHost とスタンバイ writeHost が SELECT ステートメントの負荷分散に参加します。簡単に言うと、デュアル マスターおよびデュアル スレーブ モード (M1->S1、M2->S2、および M1 と M2 が相互にマスターとスレーブ) の場合、通常の状況では、M2、S1、および S2 はすべて SELECT ステートメントの負荷分散に参加します。 balance="2" の場合、すべての読み取り操作は writeHost と readhost にランダムに分散されます。 balance="3" の場合、すべての読み取り要求は writeHost の下の readhost にランダムに分散されて実行され、writeHost は読み取りの負荷を負いません。 writeTypeは書き込みモードを示します writeType="0"、すべての操作は最初に構成された writehost に送信されます writeType="1"、設定されたすべての書き込みホストにランダムに送信します writeType="2"、書き込み操作は実行されません switchType はスイッチング モードを指し、現在可能な値は 4 つあります。 switchType='-1'は自動切り替えなしを意味します switchType='1' デフォルト値、自動切り替えを示す switchType='2'は、MySQLのマスタースレーブ同期のステータスに基づいて切り替えるかどうかを決定します。ハートビートステートメントは、スレーブステータスを表示します。 switchType='3' は、MySQL galary cluster (クラスターに適しています) (1.4.1) の切り替えメカニズムに基づいており、ハートビート ステートメントは 'wsrep%' のようなステータスを表示します。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: LinuxベースのLVMシームレスディスク水平拡張の詳細な説明
WeChat ミニプログラムのネイティブ コンポーネントであるカメラ、キャンバス、入力 (フォーカス...
ボリュームラベル、プロパティ名、説明002 <! - - ... - -> コメント00...
この記事は主に、純粋な CSS3 を使用して div が順番に出入りする効果を紹介します。一定の参考...
最近、 Three.jsでReactを使用して、720 度のパノラマ写真を閲覧できるプロジェクトを構...
SVG は、さまざまな利点があるため、近年広く使用されています。残念ながら、WeChat ミニプログ...
目次ブラウザカーネルJavaScript エンジンV8エンジンJavaScript がどのように実行...
1. redisイメージを検索する docker 検索 redis 2. Redisイメージをダウン...
WeChatアプレットのログインインターフェースは参考までに実装されています。具体的な内容は次のとお...
方法1: onclickイベントを使用する <input type="button&...
古典的な色の組み合わせは力と権威を伝え、強いロイヤルブルーはあらゆる古典的な色の組み合わせの中心的な...
Web ページでは、基本的に <input type="file">...
シャドウスタイルにおけるフラッターとCSSの対応UIによって指定されたCSSスタイル 幅: 75px...
1. Dockerネットワークモードdocker run が Docker コンテナを作成するときに...
1. ip_hash: ip_hash は、送信元アドレス ハッシュ アルゴリズムを使用して、サーバ...
オールラウンドなシステム監視ツール dstat dstat は、vmstat、iostat、nets...