タグ

MySQLとreplicationに関するnubesのブックマーク (13)

  • MySQL スレーブで SQL スレッドが停止した場合の対処方法 - maruko2 Note.

    MySQL スレーブで SQL スレッドが停止した場合の対処方法 提供:maruko2 Note. 移動: 案内, 検索 MySQL スレーブで SQL スレッドが停止(Slave_SQL_Running: No)した場合、次のような対処方法がある。 mysql> show slave status\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event 省略 Relay_Log_Pos: 13550246 Relay_Master_Log_File: mysql-bin.000010 Slave_IO_Running: Yes Slave_SQL_Running: No 省略 Last_Errno: 1062 Last

  • MySQL DBマスタのDC間移設 | Ore no homepage

    システムをデータセンターAからデータセンターBに論理移設を行うときのメモ。 肝になるのはDB、特にマスタDBだと思うので、主題の通りおもにDBマスタの切り替えに焦点を当てて手順を書く。 移設先であるデータセンターBではサーバ構築やアプリケーション/コンフィグのデプロイは完了していて、新マスタおよび全スレーブは現マスタにレプリを張っている状態からスタートする。新マスタにはバイナリログ出力など、DBマスタとして振る舞うための設定が入っているものとする。 手順の要約 現DBマスタへの更新クエリをすべてブロックする 全てのスレーブと新マスタでshow slave statusしてログとポジションが一致していることを確認する 新マスタと全てのスレーブでstop slaveする 新マスタと全てのスレーブでreset slaveする 新マスタでreset masterする 全てのスレーブでchange

  • 株式会社TAP

  • MySQLにおけるレプリケーション遅延の傾向と対策

    レプリケーションはMySQLで最もよく使われる機能のひとつだ。レプリケーションは基的に非同期でデータの複製を行う仕組みになっているのだが、非同期故にどうしても逃れられない問題がある。そのひとつが今回のテーマ、遅延である。というと、MySQLのレプリケーションはすぐに遅延が生じてしまうように感じてしまうかも知れないが、そのようなことはない。ほとんどの場合は即座にスレーブの更新が行われる。 なぜ遅延は発生するのか、どのように遅延が起きていることを調べるのか、どのように回避するのかということをエントリでは解説したい。うまく遅延と付き合って、MySQLのレプリケーションをより快適に運用してもらえればと思う。 そもそも遅延とは何かMySQLのレプリケーションは非同期で行われる。これは準同期でも同じであり、スレーブにおいて更新が起きるのはマスターよりも一瞬遅れてしまう。これは非同期であるが故に逃れ

    MySQLにおけるレプリケーション遅延の傾向と対策
  • 稼働中のMySQLに無停止でスレーブを追加する - 雑記帳(2011-10-17)

    ■ [MySQL] 稼働中のMySQLに無停止でスレーブを追加する MySQLは簡単にレプリケーションすることができて便利。最初からレプリケーションを前提に構築するのは簡単にできる。しかし、実は運用が始まってしまって、なかなか停止できないMySQLにも、ほぼ無停止でスレーブサーバを追加できる。現在の設定状況にもよるが、再起動は必要になるかも。 マスターでバイナリログを出力するようにする my.cnfで、binlog_do_dbの設定をする。レプリケーション対象となるデータベースを指定する。 [mysqld] binlog_do_db=your_db マスタのserver_idを設定する my.cnf で server_idの設定をする。レプリケーションする際に、個々のサーバを識別するのに使われる。任意のユニークな整数を指定すれば良い。 [mysqld] server_id=10 ここまでの

  • MySQLで参照の負荷分散を行うslaveは3台から構成するのがよいのでは - 酒日記 はてな支店

    前回の記事 MySQLをmaster:slave=1:1構成にして参照をslaveに向けるのがなぜ良くないか の続きです。 master : slave = 1 : 1 で参照を slave に分散してもまったく美味しくないわけですが、では参照の負荷分散を行いたい場合の slave は何台で構成するとよいのか考察してみます。具体的には slave 2台の場合と 3台の場合でどちらがお得か。 台数を増やすということは、どこかに障害が発生する確率が高まる、ということです。1台の slave に障害が発生してダウンした場合のことを考えてみます。 slave * 2 → 残り 1台で処理継続 生き残った1台あたりの処理が 2倍になる slave * 3 → 残り 2台で処理継続 生き残った1台あたりの処理が 1.5倍になる たとえば 1台あたり最大 1000qps の処理能力があるとします。sla

    MySQLで参照の負荷分散を行うslaveは3台から構成するのがよいのでは - 酒日記 はてな支店
  • 既存レプリケーション環境に新スレーブ追加 - Studio3104::BLOG.new

    MySQL Casual Advent Calendar 2011の27日目として更新します。 皆さんがまったくcasualじゃないので、バシッとコンセプト通りの記事をあげます。 ちなみに今日は熱出して会社を休んでおります。 アタマがぼーっとしている中書いてますので、変な事書いてたらスミマセン・・・ マスタ-スレーブ-スレーブ構成のMySQLで、サービスを停止せずにスレーブを追加する方法を紹介します。 参照が多くなってきたなーってときに、ピークタイムを避けて作業すればメンテナンスを入れなくてもスレーブを増やせます。 環境、構成 この構成に、スレーブCを追加する 【MySQLマスタ】ー【MySQLスレーブA】 | 【MySQLスレーブB】 サービスからMySQLスレーブAを切り離す スレーブAのコネクションをモニタ netstatコマンドで、スレーブAのmysqlコネクションをモニタリングし

    既存レプリケーション環境に新スレーブ追加 - Studio3104::BLOG.new
  • Art of MySQL Replication.

    1. Art Of MySQL Replicaton 〜 10 年の歴史を誇るレプリケーションの妙技〜 奥野 幹也 @nippondanji mikiya (dot) okuno (at) gmail (dot) com 2. 免責事項 ● プレゼンテーションにおいて示されている見解は、 私自身の見解であって、オラクル・コーポレーション の見解を必ずしも反映したものではありません。ご了 承ください。 3. 自己紹介 ● 今日は個人として来ています。 – http://nippondanji.blogspot.com/ – Twitter: @nippondanji ● 現職は MySQL サポートエンジニア。 – 2000 年にサン・マイクロシステムズ入社 – 2007 年に MySQL KK へ転職 – 気付くとまたサン・マイクロシステムズに・・・ – 現在は日オラクルに在席。 ●

    Art of MySQL Replication.
  • MySQL レプリケーションの設定 - maruko2 Note.

    MySQL レプリケーションの設定 提供:maruko2 Note. 移動: 案内, 検索 目次 1 MySQL レプリケーションの特徴 2 MySQL レプリケーションの動作概要 3 レプリケーションのセットアップ 3.1 レプリケーション用の my.cnf 設定 3.2 マスターにレプリケーション専用のユーザーを登録する 3.3 マスターサーバのスナップショットを作成する 3.4 マスターサーバのスナップショットを元に、スレーブを作成する 4 レプリケーションが正常に行われているか確認する方法 5 マスターのバイナリログの削除 6 参考ページ 7 MySQL 関連のページ MySQL レプリケーションの特徴 MySQL のレプリケーションは非同期。 1つのマスターに対して、1つ以上のスレーブが可能。 更新系のクエリはマスターのみで実行しなければならい。更新系クエリをスレーブで実行すると

  • MySQL レプリケーションの設定 - とみぞーノート

    1.2 レプリケーションの動作レプリケーションでは最初にDBの内容を同期させた後、Masterサーバーで実行された更新系のクエリ(UPDATEとか)をSlaveに渡してSlaveでも同じクエリを実行していくことで、DBを同期させている(図1)。 Master側で実行された更新系クエリはバイナリログに蓄えられており、Slave側が接続してきたら、前回の接続からの変更分をSlave側に送信する。Slave側は受け取ったクエリを一旦リレーログに蓄えて順次クエリを実行してDBを同期させていく。リプリケーション動作にはBinlogDump,I/O,SQLの3つのスレッドが連携して動作する。 2.設定手順 (Master-Slave構成) 2.1 Master側の設定の確認Master側ではバイナリログを採取しておく必要があるので、Master側のmy.cnfにlog-binの設定が入っていることを確

  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 17.1.2 バイナリログファイルの位置ベースのレプリケーションの設定

    ソースで、バイナリロギングが有効になっていることを確認し、一意のサーバー ID を構成する必要があります。 これには、サーバーの再起動が必要となる場合があります。 セクション17.1.2.1「レプリケーションソース構成の設定」を参照してください。 ソースに接続する各レプリカで、一意のサーバー ID を構成する必要があります。 これには、サーバーの再起動が必要となる場合があります。 セクション17.1.2.2「レプリカ構成の設定」を参照してください。 必要に応じて、レプリケーション用のバイナリログを読み取るときに、ソースとの認証中にレプリカで使用する別のユーザーを作成します。 セクション17.1.2.3「レプリケーション用ユーザーの作成」を参照してください。 データスナップショットを作成したり、レプリケーションプロセスを開始したりする前に、ソースで現在の位置をバイナリログに記録するようにして

  • MySQLレプリケーションを安全に利用するための10のテクニック

    MySQLのレプリケーションは非常に簡単に使える割には応用の幅が広いので非常に人気のある機能の一つである。レプリケーションの応用分野は例えば、 バックアップ 参照系の負荷分散 HA(高可用性) ディザスタリカバリ(サイト間レプリケーション) BI(レポーティングetc) という風にとても多くのバリエーションがある。このブログを読んで頂いている皆さんの中にもレプリケーションを使っている方は多いのではないだろうか。ご覧の通りMySQLのレプリケーション機能はミッションクリティカル分野でも利用されているが、レプリケーションの使い方が適切でないとシステムの安定稼働に支障を来してしまってDBAやシステム管理者の肉体的、精神的負担が増大してしまう。逆にレプリケーションを堅牢に運用することが出来ればマクラを高くして眠れるというものだ。レプリケーションはMySQLの代表的な機能であるので、レプリケーション

    MySQLレプリケーションを安全に利用するための10のテクニック
  • 現場指向のレプリケーション詳説

    この文書は、技術評論社刊『WEB+DB PRESS Vol.22』に執筆した記事を技術評論社の 許可を得てWWWで公開しているものです。 このWWW版は校正前の原稿を元にしている点、WWW公開後に必要があれば修正する点で、雑誌版の文章とは異なる部分があります。また、図表も雑誌版とは異なります。 予めご了承ください。 また、この文章が対象しているのはMySQL 4.0系なので、最新のリリース版と比べると説明不足な点などが多々あると思います。 レプリケーションの基をおさえるには、この文書はまだ有益だと思いますが、設定レベルの説明は最新のドキュメントを参照するようにしてください。

  • 1