タグ

innodbに関するgam-22のブックマーク (5)

  • MySQL InnoDBストレージエンジンのチューニング(前編)

    InnoDBのアーキテクチャおさらい クエリは、物理レイヤーの特性を意識して書かなければいけないものの、基的にはロジック(論理)を記述するレイヤーである。前回まで解説したオプティマイザは、論理と物理の中間に位置する(または両者をつなぐ)レイヤーであると言える。つまり、オプティマイザにとっての至上命題は、如何に効率良く下位のレイヤーを使うというものであると言える。一方、下位のレイヤーであるストレージエンジンはまさに実装(物理)の領域である。ユーザーが必要とするクエリに対していかに素早く応答するかが、物理レイヤーたるInnoDBのチューニングにおける最終目標となる。 物理レイヤーのチューニングをするには、そのアーキテクチャを知ることが何よりも重要だ。アーキテクチャこそが物理レイヤーそのものだと言っても過言ではないからだ。以下では、チューニングを行う上で必須となる、基的な構成部品について説明

    MySQL InnoDBストレージエンジンのチューニング(前編)
    gam-22
    gam-22 2015/10/25
    ようやく納得した“セカンダリインデックスは必然的に主キーの値を含んだマルチカラムインデックスとなる”
  • DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!

    MySQLのチューニングにおいて非常に重要となるメモリ(バッファ)関連のパラメータについて、 チューニングのポイント DSASのとあるDBサーバ(実メモリ4GB)の実際の設定値 をまとめてみます。 また、必要メモリの総量の計算や限界値を越えてないかチェックしてくれるスクリプトも紹介します。 是非、参考にしてみてください! まず最初に注意点を。 バッファには2つのタイプがあります。 グローバルバッファ スレッドバッファ グローバルバッファはmysqld全体でそのバッファが1つだけ確保されるもので、 これに対し、 スレッドバッファはスレッド(コネクション)ごとに確保されるものです。 チューニングの際にはグローバル/スレッドの違いを意識するようにしましょう。 なぜなら、スレッドバッファに多くのメモリを割り当てると、コネクションが増えたとたんにアッという間にメモリ不足になってしまうからです。 in

    DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!
  • InnoDB Pluginことはじめ。快適ストレージエンジン生活はじまる!

    MySQL 5.1.38からMySQL体にInnoDB Pluginバンドルされている。一部の先駆的なユーザー以外に、「InnoDB使ってますよ!」もしくは「検証してるよ!」という話をあまり聞かない。そもそもであるが、InnoDB Pluginってなんぞ?!という人が多いんではないかと思うのだが、実際はどうなのだろう?現在はRC版(リリース候補版)という位置づけのInnoDB Pluginであるが、一部影響度の高いバグが残っていたりしてGA版ほどの安定性は求められないものの、ほとんど実用に耐えうる品質になっているといえる。そんなわけで、今日は改めてInnoDB Pluginの使い方・使いどころについて説明するので、ぜひ皆さんの手でInnoDB Pluginを評価してみて頂きたい。 なお、以下の解説は現在の最新バージョンである、InnoDB Plugin 1.0.6を前提にしているので、将

    InnoDB Pluginことはじめ。快適ストレージエンジン生活はじまる!
    gam-22
    gam-22 2015/10/25
    “innodb_file_format=Barracuda”しないと圧縮テーブル使えないのか
  • MySQLの「InnoDB」と「MyISAM」についての易しめな違い - (2015年までの)odaillyjp blog

    今回はMySQLのストレージエンジンという重箱の隅をつつくようなネタをメモしておきます。 私はMySQLについてはよちよちレベルなので、込み入った内容には触れられません。初心者でも理解しやすい部分での違いを中心にまとめていこうと思います。 【復習】ストレージエンジンとは MySQLなどのデータベース管理システムが、データベースにデータを書き込んだり、読み込んだりするときに使われる基盤を「ストレージエンジン」と呼びます。初心者同士の会話の中で「MySQLを使ってデータを保存する」と表現することがありますが、実際にデータの保存処理を行っているのが、このストレージエンジンになります。MySQLの論理構造を図で載せます。 MySQLは「データベース管理システム」ですので、データベースを管理するために必要である様々な機能が搭載されています。その中の「データの読み書き」という部分を担当しているのがスト

    MySQLの「InnoDB」と「MyISAM」についての易しめな違い - (2015年までの)odaillyjp blog
  • InnoDB buffer pool dumpで遊ぶ

    掲題のMySQL5.6の新機能で遊んでみたメモ。 InnoDBバッファプールの内容をファイルに書き出しておくことが出来る機能が追加された。 書き出すタイミングは正常終了時(SET GLOBALまたはmy.cnfでinnodb_buffer_pool_dump_at_shutdown = 1を設定)または 任意のタイミングで即時書き出し(SET GLOBAL innodb_buffer_pool_dump_now = 1;) 読み出すタイミングは起動時(my.cnfにinnodb_buffer_pool_load_at_startup = 1)または 任意のタイミングで即時読み込み(SET GLOBAL innodb_buffer_pool_load_now = 1;) これで、mysqldを再起動してバッファプールが空っぽになっても 素早くウォームアップできるぞ、ということらしい。 特に何

    gam-22
    gam-22 2015/10/21
    MySQLのウォームアップ機能を実験してみよう
  • 1