タグ

MySQLに関するyuhi_asのブックマーク (9)

  • MySQLでお手軽デッドロック - jfluteの日記

    -- MEMBER_SEA は MEMBER の 1:n の子テーブル delete from MEMBER_SEA where MEMBER_ID = 3 insert into MEMBER_SEA ...(MEMBER_ID は 3) ん? 最初のdeleteが互いに「0件削除」だとデッドロック。別トランザクションのMEMBER_IDが別ID(例えば4)でもデッドロック。(とにかく両方のトランザクションでdeleteが0件であれば) これは... ネクストキーロックって? MySQLのInnoDBには「ネクストキーロック」という機構があります。 詳しくは、ぐぐってくれればOKですが、ひとまず参考になるオフィシャルサイトのページを。 => ネクスト キー ロック:ファントムの問題を防ぐ 難しいこと書いてありますねぇ。 「ギャップ」って何!? ここでいうインデックスレコードって!? とに

    MySQLでお手軽デッドロック - jfluteの日記
    yuhi_as
    yuhi_as 2016/08/03
    delete->insert
  • MySQL5.6でのレプリケーション設定 (複数のデータベース)

    今回は、MySQL5.6がインストールされた環境で、複数のデータベースを指定したレプリケーション設定を行いました。 構成はマスター&スレーブの2台となります。 MySQL5.6からリリースされたGTID機能を試してみたかったのですが、今回は都合により通常のレプリケーション設定になりました。 通常のレプリケーション設定なので今更感がハンパないですが、一応ブログに残しました。 サーバーにインストールされているOSは、Centos5.8(x86_64)となります。 ここでは、マスター側のサーバーIPアドレスを192.168.1.40とし、スレーブ側のサーバIPアドレスを192.168.1.50としています。 (レプリケーション設定を行う際は、対象のMySQLサーバーでの作業は全て停止してください。) マスター側の設定 (192.168.1.40) マスター側のMySQL設定ファイル(/etc/m

    MySQL5.6でのレプリケーション設定 (複数のデータベース)
  • MySQL 5.6でスレーブをクラッシュセーフにするには | Yakst

    MySQL Performance Blogの翻訳。MySQL 5.6の新機能である、リレーログのリカバリ機能を使って、クラッシュ誤にスレーブが自動復旧するように設定する方法。 September 13, 2013 By Stephane Combaudon スレーブがクラッシュした時にもリカバリ可能(クラッシュセーフ)に設定できるのは、MySQL 5.6のレプリケーション関連の大きな改善の一つだ。しかし、正しくこの機能を使うにはどう設定したらよいのか混乱してしまいがちなので、ここで手順をはっきりさせておこう。 概要 スレーブのMySQLを停止 relay_log_info_repository = TABLEとrelay_log_recovery = ONをmy.cnf追記 MySQLを再起動して待つ 細かな詳細 クラッシュセーフなスレーブを作りたい時に、なぜ上のような設定をしなければな

    MySQL 5.6でスレーブをクラッシュセーフにするには | Yakst
  • MySQL マスター/スレーブサーバの設定メモ

    [mysqld] # 各MySQLサーバを識別するためのIDの設定 server-id=1 # バイナリログの有効化 log_bin=mysql-bin # バイナリログをコミットと同時にディスクに書込む sync_binlog=1 # クラッシュセーフなレプリケーション設定 relay_log_info_repository=TABLE relay_log_recovery=ON #----- レプリケーション関連の設定はここまでです -----# # 基設定 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock symbolic-links=0 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES # 文字コードの設定 skip-character-set-client-han

    MySQL マスター/スレーブサーバの設定メモ
  • MySQL入門 レプリケーション編 - Qiita

    #経緯 とある勉強会の内容の復習&整理 #タイトル インストール・アーキテクチャ基礎編 レプリケーション編 ←今回はこちら バックアップ編 チューニング基礎編 #レプリケーション編 アジェンダ レプリケーションとは レプリケーションの仕組み レプリケーションの種類 レプリケーションの設定方法 バイナリログの管理方法 その他の考慮事項 参考情報 #1. レプリケーションとは ##1.1. 基礎知識 データの複製(レプリカ)を別のサーバにモテる機能 MySQLの標準機能で、多数のWebサイト等で利用されている - シンプルな設定で利用可能 - マスター → スレーブ構成 ##1.2. マスタースレーブ構成 サーバはマスター、スレーブまたは両方になれる マスターサーバ - データを変更 - 変更内容をスレーブに転送 - マスターは複数のスレーブを持てる スレーブサーバ - マスターでの変更内容を

    MySQL入門 レプリケーション編 - Qiita
  • [MySQL5.7]マルチソースレプリケーション設定方法 – (っ´∀`)っ ゃー | 一撃

    プライベートIPアドレスはeth1に振っています。さくらのクラウドでCentOS7のeth1にIPアドレスを振る手順はこちらを参考にどうぞ。 今回構築するサーバーの、マスターとスレーブの関係は以下の通りです。 master0 は test0 データベースのマスター。チャネルは0 master1 は test1 データベースのマスター。チャネルは1 slave0 は 上記すべてのデータベースのスレーブになる slave1 は 上記すべてのデータベースのスレーブになる ちなみに、マルチソースレプリケーションはマルチマスターレプリケーションとイコールではありません。 こちらの図表を見ると違いが一目瞭然ですが、マルチマスターレプリケーションは循環型のレプリケーションで、SQLクライアントはどのノードに書き込みを行っても、レプリケーションを構成するすべてのノードに等しくデータが同期されます。いっぽう

    [MySQL5.7]マルチソースレプリケーション設定方法 – (っ´∀`)っ ゃー | 一撃
    yuhi_as
    yuhi_as 2015/10/26
    レプリケーション情報だ
  • 漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法

    ちょっとキャッチ−なタイトルをつけてしまったが、今日は独断と偏見でMySQLを高速化する方法を10個紹介しよう。MySQLサーバをチューニングするときや初期導入する場合などに参考にしてもらいたい。 1. バッファを増やす、または減らす チューニングの基中の基であるが、適切なバッファサイズを設定することはパフォーマンスチューニングの要である。主なバッファは次の通り。 innodb_buffer_pool_size・・・InnoDBだけを利用する場合は空きメモリの7〜8割程度を割り当てる最も重要なバッファである。余談だが、実際にはここで割り当てた値の5〜10%ぐらいを多めにメモリを使うので注意が必要だ。 key_buffer_size・・・MyISAMだけを利用する場合は、空きメモリの3割程度を割り当てるといい。残りはファイルシステムのキャッシュ用に残しておこう。 sort_buffer_

    漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法
  • Using filesort

    去年ソートに関する記事を書いたが、今日はその続きである。 MySQLでEXPLAIN SELECT...を実行するとExtraフィールドでよく見かける「Using filesort」という文字列。Filesortって一体なんだろう?と思ったことはないだろうか。単刀直入に言ってFilesortの正体はクイックソートである。 クエリにORDER BYが含まれる場合、MySQLはある程度の大きさまでは全てメモリ内でクイックソートを処理する。ある程度の大きさとはsort_buffer_sizeであり、これはセッションごとに変更可能である。ソートに必要なメモリがsort_buffer_sizeより大きくなると、テンポラリファイル(テンポラリテーブルではない)が作成され、メモリとファイルを併用してクイックソートが実行される。 Filesortは全てのソート処理において実行されるわけではない。前回の記事

    Using filesort
    yuhi_as
    yuhi_as 2015/09/09
    LIMIT後のデータセットに対してJOINのパターン
  • MySQL 5.7の罠があなたを狙っている

    2015/08/22 YAPC::Asia Tokyo 2015 Lightning Talk 2016/01/13 update about default_password_lifetime will be 0Read less

    MySQL 5.7の罠があなたを狙っている
    yuhi_as
    yuhi_as 2015/08/24
    MySQL5.7で躓きがちな設定の罠を回避するための秘伝のタレ
  • 1