2015年一覧

[amazon クラウド] RDS上のMySQLでリージョン間のレプリケーションを構築する

2015-07-12前回、前々回とRDS内でのレプリケーションの仕組み、MySQLでのレプリケーションの仕組みををまとめましたが

それを踏まえて

リージョン間でレプリケーションしたらどうなるかをまとめてみました。

WS000038

つまり更新系はマスターでないと他のスレーブに配ってくれないので、データは

マスターに行く。参照系は、各リージョンにあるRDSに繋げば、データ量が多いクエリも

マスターを見に行くより早いのは間違いない。

この方法による構築での課題点は

・参照系と更新系でデータベースの接続先が違う。

・MySQLのレプリケーションは非同期レプリケーションなので、タイミングによっては、
整合性がとれていないクエリー結果になってしまう。
上記の図の例で言いますと、海外1と海外2はタイミングによっては、結果がずれる。
東京は、マスターを参照するので、ずれはない。
因みに、リージョン内での参照系レプリケーションであればRDS側のReadReprication機能で対応できます。

具体的な手順を以下に記載します。

1.まず、マスターのEC2を立ち上げます。

2.MySQLをインストールしましょう。

3.マスターのリージョンにRDSインスタンスをmySQLで起動します。

•MySQL5.6.13のRDS

•Publicly AccessibleをON

•Mullti-AZオプションはOFF

•セキュリティグループではお互いの通信を許可

ポートの開放

インバウンド、アウトバウンド両方

4.EC2からRDSのmySQLに接続

5.ここでレプリケーション用のユーザーを作成しておく

6.テスト用のテーブルを作成する。

7.バイナリ―のログにアクセスできるようにストアドプロシージャーを実行する。

8.内容を控えておく

8.次に、スレーブ用のリージョンのRDSのインスタンスを起動します。

同じようにポートを解放してください。

9.スレーブのデータベースに接続します。

10.レプリケーション用のユーザーを作成します。

11.マスターのデータベースをそのままスレーブにコピーします。

最初にマスターをダンプします。

次にスレーブ側でダンプファイルをインポートします。

12.スレーブ側 mySQLにて以下ストアドプロシージャ―を実行します。

先程の内容をセットします。

13.スレーブ側でレプリケーションを開始します。

14.状況確認します。

13.マスター側で

データを登録

14.スレーブ側でレコードが増えているか確認 レコードが1件増えていれば

同期確認完了。



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。


 




[MySQL] レプリケーションの仕様(マスタースレーブの関係)

前回のアマゾンクラウドでのお話でもお伝えしましたが、レプリケーションとは、

データベースを複製することで、以下の役割を満たします。

・データベースがぶっ壊れたときのための予備

・もうひとつ同じデータベースを作っておくことで負荷分散スピードアップ

mysqlは

非同期レプリケーションによるマスタースレーブ型です。

非同期レプリケーションとはマスターの更新状況の保全を待たず同時に書き込むこと。

マスタースレーブ型はマスター1つに複数のスレーブを持つ。更新はマスターに全てやらせる

その内容をスレーブが取りにいく仕組み。

高機能のデータベースソフトはマルチマスター型もできる。

常に自分もマスターになれるということ。みんなで更新する感じですね。

mySQLは、マスタースレーブの関係は出来上がっています。

 

 

 



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。


 




[Amazon クラウド] RDSのレプリケーションについて

レプリケーションはとは、データベースの中身を複製することによって、以下の役割を満たすこと。

・壊れたときの予備

・分散しておくことで、スピードアップ

RDSにもレプリケーション機能が備わっています。

 

MultiAZ構成

マスターとスレーブ (メインとサブ)に分けて2つのデータベースを作成する機能

同期レプリケーションであり、物理レプリケーションである。

同期レプリケーションとは

ひとつのデータベースを作ったあと、次をつくる

非同期レプリケーション

データベースの作成を待たずに、次のデータベースを作る。(分散)

論理レプリケーションとは

トランザクション単位でレプリケーション(複製する)

ひとつのトランザクションが終わったら次みたいな。

物理レプリケーションとは

マスターのトランザクションを待たずスレーブが平行して動き出して

それが終わって一式で、決定される。(全体で整合性を取る)

リードレプリカ

参照するときは、マスター、とスレーブ両方見に行く機能。

参照なので、更新系とちがい、どちらか

早く取得できるほうを選んで取得する(分散)

 



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。