タグ

mysqlに関するobedienceのブックマーク (9)

  • Kazuho@Cybozu Labs: MySQL のボトルネックを統計的に監視・解析する方法

    MySQL のチューニング、と言った場合には、サーバーパラメータの調整や EXPLAIN コマンドを利用したクエリ実行計画の最適化が話題に上ることが多いです。しかし、発行する全ての SQL について、いちいち EXPLAIN コマンドを使って確認していては、いくら時間があってもたりません。チューニングを効率的に進めるには、まず、ボトルネックとなっている SQL クエリを特定し、次にその最適化を行うべきです。 ではどのようにして、ボトルネックを特定するのか。MySQL Conference & Expo 2009 のキーノートにおいて Mark Callaghan 氏は、Google では SHOW PROCESSLIST コマンドを使った統計的アプローチを使っていると述べていらっしゃいます (参照: MySQLConf 09: Mark Callaghan, "This is Not a

  • MySQL管理ツールと開発ツールのまとめ | エンタープライズ | マイコミジャーナル

    Smashing Magazine - WE SMASH YOU WITH THE INFORMATION THAT WILL MAKE YOUR LIFE EASIER, REALLY. Smashing MagazineにおいてMySQL Admin and Development Tools Round UpのタイトルのもとMySQLの管理および開発に活用できるツールがまとめられている。MySQLを使った開発やデータベース管理を行っている場合には一度チェックしておきたい内容だ。紹介されているツールを抜粋すると次のとおり。 phpMyAdmin - MySQL管理Webアプリケーション SQL Buddy - MySQL管理Webアプリケーション Aqua Data Studio - MySQL管理アプリケーション(開発向け機能含む) (Win, OS X, Linux, Solari

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

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

    漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法
  • GIGAZINE、ついに新サーバへ移転完了

    というわけで、ここが新サーバ群による新生GIGAZINE.NETです。この記事が見えているということは、新しいサーバへのDNS浸透が済んだということです。見た目上は特に何かの変化があるわけではないのですが、サーバが物理的にトラブルを起こさない限りは重くなったりはしない……はず。 というわけで、前回の記事に引き続き、裏話第2弾です。詳細は以下から。 ・MySQLDNSルックアップを無効化 新サーバ構成でテスト中に最大の問題となったのがコレ。ルータが落ちまくるので一体何が起きているのかがわからず、延々と1週間も悩み続け、GIGAZINE編集部を恐怖のどん底にたたき込んだものです。結論から言うと、外部のDNSサーバを利用していたため、ローカルでのテスト環境においてもMySQLに接続が発生するごとに、DNSの参照が発生していたのが原因。 MySQL :: MySQL 4.1 リファレンスマニュア

    GIGAZINE、ついに新サーバへ移転完了
  • MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」

    サーバのチューニングをする上でかなりやっかいなのがデータベース系。特にログファイルの量が膨大になると後から中身を見て問題を分析するのも一苦労という場合が。そんなときにこのMySQLtopコマンド「mytop」を使えば一体何が起きているのかがすぐにわかるので問題点の把握が容易になります。ベンチマークするときに併用すればかなり効率が良くなるのではないかと。 インストールと使い方は以下の通り。 まずは「mytop」から。以下が公式サイト。 mytop - a top clone for MySQL http://jeremy.zawodny.com/mysql/mytop/ マニュアルは以下にあります。 mytop - display MySQL server performance info like `top' インストールするにはSSHなどを使ってrootでログイン後、wgetでファイル

    MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」
  • MOONGIFT: » RailsでDB管理「RailsMyAdmin」:オープンソースを毎日紹介

    Railsで開発を行う際にDBは必須だろう。簡易的なものであればSQLiteで良いが、これまでの経験では大抵MySQLが利用されている。 DB管理にはphpMyAdminや、GUIDB管理ツールを利用してきたが、Rails上で一括管理できるこちらが便利そうだ。 今回紹介するオープンソース・ソフトウェアはRailsMyAdmin、Rails上のDB管理ソフトウェアだ。 RailsMyAdminではRailsでのDB設定を利用するので設定も手間もなく簡単に利用できる。インストールはプラグインとして簡単にでき、environment.rbに設定を書き加えるだけでいい。 テーブルの一覧やデータの一覧表示、追加、編集はもちろん可能だ。また、created_at/updated_atといったRails特有のフィールドは値を入れられないのも便利だ。テーブル構造の変更はもちろん不可で、migration

    MOONGIFT: » RailsでDB管理「RailsMyAdmin」:オープンソースを毎日紹介
  • MySQLノウハウ

    いろいろなからメモってきたメモのメモ。出典を書いておくのを忘れた。思い出し次第補完するかも。 deleteのコストは高いので、無効化を示すフィールドを作ってupdateすべき slow query logに要注意 多くのエントリでほとんどのフィールドが同じ値を持つ場合はインデックスの効果が小さい →複合インデックスの効果が大きい 複合インデックスは指定の順番が大切。AとBという指定の場合、A単独でもインデックスの効果がある。逆は真でない。 インデックスが使われる場面は フィールド値を定数と比較するとき (where name = 'hogehoge') フィールド値でJOINするとき (where a.name = b.name) フィールド値の範囲を求めるとき (<,>,between) LIKE句が文字列から始まるとき (where name like 'hoge%') min(),

  • Open Tech Press | MySQLデータのバックアップ方法

    2007年5月31日10:53 Tom-Adelstein、Bill-Lubanovic(2007年5月29日(火)) ファイルやディレクトリのバックアップは比較的簡単だが、データベースのバックアップとなると、いくつか特別な工夫を施す必要がある。ここではMySQLを取り上げているが、同じ原理はPostgreSQLやその他のリレーショナルデータベースにもあてはまる。 稿は、最近O’Reillyから出版された書籍『 Linux System Administration 』の抜粋。 MySQLサーバを休みなく稼働させ続ける必要がないなら、以下に示すような圧縮なしのオフラインバックアップ手法が手っとり早い。 MySQLサーバを停止させる。 # /etc/init.d/mysqld stop MySQLのデータファイルおよびディレクトリをコピーする。例えば、MySQLのデータディレクトリ/var

    Open Tech Press | MySQLデータのバックアップ方法
  • MySQLの最適化

    限りなく眠気を誘うPHP Internalsのセッションから逃げる。こっちの 講師はMySQL.comの人。講演慣れしていて、ずっとまともでプロフェッショナルな 感じ。午前中を逃したのが惜しいが、詳しいプレゼン資料は後日公開される らしい。 DELETEのコストはかなり高い 読みだしがすごく多い場合は無効化を示すフィールドを作りUPDATEすべき、 index更新のコストが馬鹿にならないSHOW STATUSの表示結果の解析方法 起動ごとに初期化、全データベースに共通rnd と rnd_next の割合Key_reads : Key_read_requests 、ディスクから読まれた回数:総回数 この割合が1:100より悪くなったら要注意Key_write_requests:Key_writes 総書き込み要求回数:ディスクに書き込ま れた回数 キャッシュの効果などMax_used_con

  • 1