MyCatは何ですか
MyCATからなるアリコバーデータベースをサポートするために進化し、別読み取りおよび書き込み、サブテーブルサブライブラリ分散ミドルウェア。MyCATは、Oracle、MSSQL、MYSQL、PG、サポート DB2 リレーショナルデータベースを、だけでなく、MongoDBのような非リレーショナルデータベースをサポート。
MyCAT原則主にSQLの傍受によるMyCAT、その後、一定のルールの後のフラグメント分析、ルート解析、分析、個別の読み取りの分析およびバッファを書き込みなどして、SQL実際のデータブロックの後端部に送られ、そして結果を返却しますこのプロセスは、適切なクライアントに返します。MyCatはJavaで書かれています。
別々の読みとMyCatに書きます
別の読み取りおよび書き込み、異なるデータベースサーバに対応してデータベースに読み出し動作および書き込みを分離するだけです。プライマリ・データベースは、書き込み操作、データベースから提供された読み出し動作を提供し、これは効果的に単一のデータベースの圧力を低減することができます。その上で、プライマリ・データベース後は、書き込まれたデータは、MySQLのマスタースレーブのレプリケーションなど、データのデータベースの一貫性の読み書きを保証するために、できるだけ多くのデータベースを読むために時間的に同期、Oracleのデータガード、SQL Serverののサブスクリプションのコピーと。
読み込みデータベース:のみを選択します。
データベースを書く:選択、作成、挿入、削除、更新。
別々の読み取りと書き込み、どのように異なるデータベースへのアクセスにルーティングしますか?
MyCat原理:異なるデータベース操作に転送判定SQL文によると、すべてのJDBCクライアントの要求をインターセプトします。
MyCat同様のnginxの:
MyCatデータベースは、リバースプロキシ、IPアドレスを達成することができますように、実際のデータベース、ロードバランシング、ブラックリスト、スライスなどを非表示にします。
MyCat読み取りおよび分離を書くインストールするLinux環境
1、インストールMycatサーバ-1.6.5リリース - 20180122220033-linux.tarをアップロード
2、インストールパッケージのタールを抽出-zxvf
図3に示すように、コンフィギュレーションとのserver.xmlのschema.xml
4、クライアント接続ポート番号:8066プロフィール紹介:
プロフィールの紹介:
MyCat読み取りおよび分離を書くインストールするLinux環境
1は、停止./mycat停止MyCatを開始./mycat MyCatを開始するには、binディレクトリに移動します
2、それは成功した成功を起動する場合は/ usr / local / mycat /ログはログwrapper.log見ます
systemctl停止firewalld.service:ファイアウォールをオフにします
唯一のアカウントのユーザー、ユーザーのポート番号8066を読みます
読み書き可能なアカウントのルート123456ポート番号8066
SpringBootプロジェクトの統合動的なデータソース(別の読み取りと書き込み)
1.対応する戦略を指定し、ビジネスニーズに応じて異なるデータにアクセスするために複数のデータソースを設定します。データ処理の一貫性を行うには、追加、削除、操作に対応するデータ・アクセス、データを対応する照会アクセスを変更し、異なるデータベース。この方法は簡単で、理解することは比較的容易であるため、あまりにも多くの導入を行いません。
2.動的切り替えデータソースは、構成ファイル、動的切り替えサービスデータベースアクセスによれば、この方式はスプリングAOPによって達成され、春に実装AspactJ製織は、AbstractRoutingDataSourceダイナミックスイッチング・データベース・アクセスを実施するようにプログラムされた継承します既存の手順を侵害せずに、拡張を容易にするだけでなく、この機能の追加および削除のためには、比較的容易であることができないだけ。
3.別個のリードによって達成さmycatを書き込む:myCatは、別個のリードを使用して提供される機能を記述し、myCatデータベースの複数に接続され、データのみmyCatを接続する必要があり、開発者のために彼は、データベース(実際には中間のMySQL myCat接続しました一片)、および異なるサービスに応じて異なるライブラリーの間で選択する必要がないので、余分なコードを生成しません。詳細なリファレンス構成
動的なデータソースのコア構成
AbstractRoutingDataSourceの春に導入2.0.1は、データソースクラスは、動的に、いくつかのデータソースに応じて真のキー値に切り替えるために実行時に持つことができ、中間経路として作用します。
1.プロジェクトの複数のデータソースを統合する必要性を読み、データソース、異なる結合キーを記述しています。
2. Yewuluojicengインターセプト法、書き込みまたはプレフィックス読み出し動作をする必要性を決定する方法かどうかAOPの使用
3.接頭辞は、ソースが読み出しデータに切り換えられる一方、ライトスイッチは直接、データ・ソースの書き込み動作の方法の場合、独自の注釈カプセル化を定義することができ
公式サイトmycatます。http://www.mycat.io/