MySQL勉強メモ

概要

マスター・スレーブ型のレプリケーションDBを構築した時のメモです。

目的

  • スレーブに書き込んだらやばい、ということを体験する

機材

ハードウェア
  • サーバ機2台(サーバ1、サーバ2とする)
ソフトウェア

作業の流れ

準備
  • サーバ1、2にMySQLphpMyAdminをインストール
  • サーバ1にテーブルを作った
  • サーバ1をマスターとし、必要な設定を行った
  • サーバ2をスレーブとし、設定を行った
レプリケーションの確認
  • サーバ1にレコードを挿入した
  • サーバ2のテーブルに、↑のレコードが挿入されていることを確認
スレーブへの書き込みテスト
  • サーバ2(スレーブ)に、レコードを挿入できることを確認
  • マスターとスレーブ間にデータの不整合が生じた
  • 復旧

感想

スレーブに書きこむのはやばい、というのは知っていたが、書き込んだらどうなるか試したことはなかったのでやってみました。
スレーブに設定されているテーブルは、自分がスレーブであることは知らないので書き込めてしまうんですね。
スレーブに書き込めないように設定できないのかなーGRANT何とかで。まだまだ勉強が足りない感があるので頑張ろう