mycatコアコンセプト
Mycat定義された論理ライブラリー、データベース管理
ライブラリ・テーブルに含まれるサブテーブルに格納された論理サブライブラリ必要な論理テーブル
ノードを格納するデータノードデータノード(ノード断片)、ロジックテーブルスライス
datahostデータホスト(マスターノード)は、ノードのホストデータ
実際のデータベースサービスホストホストを書くwritehost
ホストを読んreadhost
MySQLのマスタ - スレーブ同期設定
プライマリ・データベース上でアカウントを作成するために、同期1、
*上の助成金のレプリケーションスレーブ*「repl'@'192.168.5.125」が「123456」で識別します。
図2に示すように、マスタノード構成、オープンバイナリログ、VIな/etc/my.cnfは、以下の構成を追加します
MySQLの-ビン=ログビン#ログファイル名のプレフィックス
サーバクラスタ固有のIDで-id = 1#整数、値は1〜2 ^ 32-1かもしれ
3、再起動mysqlの、入力し、mysqlのクライアントは、SHOW MASTER STATUSがメインライブラリのステータスを表示します
4、ノードの追加、構成、VIな/etc/my.cnfから、追加
サーバID = 2
図5は、入力mysqlクライアント・ノードから、文のホストライブラリに変更マスタの同期設定を行い、
= '192.168.5.144'、MASTER_USER = 'REPL' をMASTER_HOSTに変更MASTER、MASTER_PASSWORD = '123456';
状態を表示するために、ライブラリからのshowスレーブ・ステータス、ライブラリSTART SLAVEからオープン6、。
図7に示すように、以下のマスタライブラリのコマンド、対応するデータベースかどうかを確認するため、およびデータベースからのデータテーブル
DATABASE受注文字セット「UTF8」を作成。 受注を使用します。 表t_order CREATE( ORDER_ID BIGINT PRIMARY KEY、 order_timeの日時を、 BIGINT、CUSTOMER_ID ORDER_AMOUNT DECIMAL( 8,2 ) )。
mycatマスター・スレーブ構成
参考詳細な構成:http://www.mycat.io/document/mycat-definitive-guide.pdf
1、schema.xmlを構成論理ライブラリ・データ・ノード、データ・ホスト
<?のXmlバージョン= "1.0" ?> <!:DOCTYPEはSYSTEMスキーマ"schema.dtdを" myCat > < myCat:スキーマのxmlns:myCat = "HTTP://io.mycat/" > <! - 注:内部特定のスキーマ、注文データノード、dataHost構成に従って要素> - < スキーマ名= "MYDB1" checkSQLschema = "偽の" sqlMaxLimit = "100" データノード= "mydn1" > </ スキーマ> < データノードの名前= "mydn1" dataHost = "dhost1" データベース= "受注」 /> < データノードの名前= "mydn2" dataHost = "dhost2" データベース= "注文" /> <! - 读写分离第一种配置方式- > < dataHostの名前= "dhost1" maxCon = "1000" minCon = "10" バランス= "1" writeType = "0" のdbType = "MySQLの" dbDriver = "天然" > < ハートビート>を選択し、ユーザ()</ ハートビート> < writeHostのホストは= "myhostM1" URL = "192.168.100.218:3306" ユーザー= "マイク" パスワード= "Mike666!"> < readHost ホスト= "myhostS1" URL = "192.168.100.219:3306" ユーザー= "マイク" パスワード= "Mike666!" 重量= "1" /> </ writeHost > </ dataHost > <! - 读写分离第二种配置方式- > < dataHostの名前= "dhost2" maxCon = "1000" minCon = "10" バランス=」 1" writeType = "0" のdbType = "MySQLの" dbDriver = "ネイティブ" </ ハートビート> < writeHostのホスト= "myhostM2" URL = "192.168.100.218:3306" ユーザー= "マイク" パスワード= "Mike666!" > </ writeHost > < writeHostのホスト= "myhostS2" URL = "192.168.100.219:3306" ユーザー= "マイク" パスワード= "Mike666!" > </ writeHost > </ dataHost > </ mycat:スキーマ>
2、server.xmlのユーザーデータベースのアクセス権を設定します
< ユーザー名= "ルート" defaultAccount = "真" > < プロパティ名= "パスワード" > 123456 </ プロパティ> < プロパティ名= "スキーマ" > mydb1 </ プロパティ> </ ユーザー>
3、別読み出し及び書き込みモードの2つの構成の間の差
最初のホストは、書き込みMySQLは、最初のマシン第二のMySQLのMySQLハング通常の読み出しおよび書き込みの後、使用後の第二段階をハングアップ実際にはモード(スタンバイモード)に耐えられない読み取ら
4、Navicatはまたは単一の構成に接続するためのMySQLのようなJava APIには、mycatは、私たちは別々の読み取りを実現し、書き込みをするのに役立ちます