タグ

MySQLに関するakipomのブックマーク (11)

  • MySQL 5.5.* + MySQLdb(mysql-python)を使う – challenge-asap

    MySQL5.5 では utf8mb4がサポートされたそうです。が、一筋縄ではPythonから使えなかった。(少なくとも私には;;) とりあえず、以下の方法で行けます。 Windowsで使う場合、MySQL5.5を導入、MySQL-pythonをVS2008を使ってコンパイル codingsのaliasesにutf8mb4の設定を追加 Windowsでのコンパイル 実のところ、client 5.5.*が必要かどうかは検証してないのですが、多分必要。 CでいうところのMakefileを適宜修正しながらコンパイル。 不要なヘッダファイルを読み込ませない 直接mysqlへのパスを指定する リンクするlibraryを変更する で対応できた 具体的には mysql-python/_mysql.c の #include <config-win.h> をコメントアウト /*#include <con

  • InnoDBの正しい発音とは - rkajiyama’s diary

    12/11(土)のMySQL Casual Talks vol.1で突如熱い話題となったInnoDBの発音。 営業部門のトップ(ロンドン在住英国人)や自分の部門のボス(ニューヨーク在住米国人)にも聞いてみたけど、共通した答えは「英語の発音だとイノ・ディー・ビーっぽいけど、作ったヤツに聞くのが良いんじゃない?」と。 ちょうどMySQL 5.5のリリース前だったので聞きづらかったけど、予定通りMySQL 5.5がGAリリースとなったのでInnoDBの制作者のHeikkiに直接聞いてみました。真面目なHeikkiはきっちり教えてくれました。 Heikkiによる説明を以下にまとめています。 InnoDBの最初の名前はInnobaseだった。MySQL創業者の一人David AxmarkがInnoDBという名前を付けた。 フィンランド語での一般的な発音としては IN - no - dee - bee

    InnoDBの正しい発音とは - rkajiyama’s diary
  • 日本語情報がほとんど無いConnector/MXJ - rkajiyama’s diary

    MySQLの接続部品の中でもConntctor/JやConnector/ODBCに比べて極めて地味な存在です。 概要 Connector/MXJは、正確にはJDBCドライバのようなアプリケーションから接続する際に利用するソフトウェア部品ではなく、MySQLサーバをJavaのコンポーネントとするためのユーティリティです。Javaアプリケーション内でMySQLサーバを起動停止などができます。 Connector/MXJを利用する利点としては、Apache TomcatやJBossなどJMXに対応したJavaアプリケーションサーバと組み合わせて利用すると、他のMBeanと同様にMySQLサーバを管理できます。MySQLサーバをレプリケーション構成で利用し、スレーブをアプリケーションサーバと同じノード上で稼働させる場合、アプリケーションサーバからMySQLサーバを起動するなど一括で管理できます。

    日本語情報がほとんど無いConnector/MXJ - rkajiyama’s diary
  • なぜMySQLのサブクエリは遅いのか。

    よくMySQLはサブクエリが弱いと言われるが、これは当だろうか?半分は当で半分は嘘である。MySQLのサブクエリだってなんでもかんでも遅いわけではない。落とし穴をしっかり避け、使いどころを間違えなければサブクエリも高速に実行できるのである。今日はMySQLがどんな風にサブクエリを実行し、どのような場合に遅いのかということについて説明しよう。 EXPLAINで実行計画を調べた際に、select_typeにはクエリの種類が表示されるのだが、代表的なサブクエリには次の3つのパターンがある。 SUBQUERY DEPENDENT SUBQUERY DERIVED 結論から言おう。遅いのは2番目、DEPENDENT SUBQUERYである。DEPENDENT SUBQUERYとはいわゆる相関サブクエリに相当するもので、サブクエリにおいて外部クエリのカラムを参照しているサブクエリのことである。そし

    なぜMySQLのサブクエリは遅いのか。
  • 残暑なんて吹き飛ばすぐらい熱いベンチマークをやろうぜ!!

    なんて幸運なことなんだろう。 実は最近、個人的にサーバーマシンを借りるという機会があった。そのマシンに搭載されているCPUコア数は合計48である!大事なのでもう一度いう。日語でいう。48CPUコアだ!一昔前なら数千万円もしたスペックだろうが、最近は実にリーズナブルにお求めいただけるようである。(価格についてはふせておく。)このマシンには2.2GHzのOpteron 6174が4つ搭載されている。つまり、ひとつのパッケージに12個のコアが格納されているのだ。これはすごい。いや、むしろどうしてこうなった?!というべきか。そのようなマシンを目の前にすると時代はメニイコアに向かっているんだなあと実感せざるを得ない。 今後、CPUがどんどんメニイコアに向かう流れはさけれない。コアを増やさなければCPUの性能が(システム全体としての性能が)向上しないからだ。CPUの演算回路に対して半導体素子をたくさ

    残暑なんて吹き飛ばすぐらい熱いベンチマークをやろうぜ!!
  • Q4M - a Message Queue for MySQL

    Q4M (Queue for MySQL) is a message queue licensed under GPL that works as a pluggable storage engine of MySQL, designed to be robust, fast, flexible. It is already in production quality, and is used by several web services (see Users of Q4M). To start using Q4M, download either a binary or source distribution from the install page, and follow the installation instructions. A small tutorial is also

  • 快適スケールアウト生活への第一歩。SPIDERストレージエンジンを使ってみよう!

    先月、Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジンというエントリでSPIDERストレージエンジンによるスケールアウトが凄い!という話を書いた。SPIDERストレージエンジンは凄いヤツだが、ノウハウがあまりウェブ上で見つからない。唯一見つかる日語の記事は、ウノウラボによる「国産MySQLストレージエンジン「Spider」の作者、斯波健徳氏に聞く 」だけである。SPIDERストレージエンジンは斯波氏による単独の作品であるため、斯波氏は開発だけで手いっぱいであり、使い方の紹介記事を書くことまでは手が回らないのであろう。こんな凄いストレージエンジンをドキュメントが足りないせいで使って貰えないなんて勿体ない!! というわけで、今日はSPIDERストレージエンジンの基的な使い方について紹介する。少し長いエントリであるが、最後までお付き

    快適スケールアウト生活への第一歩。SPIDERストレージエンジンを使ってみよう!
  • PostgreSQLユーザのためのMySQLバイナリログ・レプリケーション講座 - interdb’s blog

    Original Streaming Replication搭載のPostgreSQL9.0リリースが近づき、MySQLとのレプリケーション比較が今後ますます盛んになると思われるので、PostgreSQLユーザ向けにMySQLの説明を行う。 参考->MySQLユーザのためのPostgreSQL:WALログとレプリケーション講座 なお、なぜ最初に延々とバイナリログを説明するかといえば、MySQLのレプリケーションでマスタからスレーブに送るのは、バイナリログのデータだからである。 [レベル:1] MySQLのバイナリログ MySQLにはWALログに直接対応するものはない。理由はMySQLがマルチストレージエンジンだからである。 マルチストレージエンジンについては後述するのでここでは簡単に説明すると、 MySQLはトランザクション機能ありのInnoDB型というテーブルや、トランザクション機能なし

    PostgreSQLユーザのためのMySQLバイナリログ・レプリケーション講座 - interdb’s blog
    akipom
    akipom 2010/08/20
  • まるで魔法のようなストレージエンジン??VP for MySQLによる驚愕のテーブル操作テクニック。

    先日、SPIDERストレージエンジンについて2度に渡りブログで紹介した(その1:Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン、その2:快適スケールアウト生活への第一歩。SPIDERストレージエンジンを使ってみよう!)が、SPIDERの作者である斯波氏は、実はもう一つ驚くべきストレージエンジンを開発している。その名も、VPストレージエンジンだ。ちょっと地味な名前だが、VPとは、Vertical Partitioning(垂直パーティショニング)の略で、複数のテーブルの上にVPストレージエンジンを被せて、垂直パーティショニング(カラムごとにデータを格納する領域を分ける)を実現するというものだ。他のテーブルの上に被せるアーキテクチャをとっているという点では、VPとSPIDERの発想は同じである。以下は、VPストレージエンジンの動作

    まるで魔法のようなストレージエンジン??VP for MySQLによる驚愕のテーブル操作テクニック。
  • Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン

    Webサービスでは、世界中からのトラフィックを捌く必要があるため、いくらチューニングしようとも一台のRDBMSでは捌ききることが出来ないのが常だ。MySQLは最初からマスター・スレーブ型のレプリケーション機能が搭載されており、スレーブをたくさんぶら下げることによって参照の負荷をスレーブに割り振るというスケールアウトによってその問題に対処してきた。スレーブによるスケールアウトは、参照(=PV)が多いWebサイトと非常に相性が良く、幾多のWebサイトにおいて実績を作ってきているし、まだまだ利用されている。 しかしながら、サイトのトラフィックが劇的に増加してくるようになると、レプリケーションによる負荷分散では追いつかなくなってきた。そこで人々がとった選択肢は、memcachedを利用することである。memcachedはインメモリ型の高速なKVSであり、参照・更新性能はMySQLより格段に高い。M

    Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン
  • たった3秒でInnoDBのデータローディングが快適になるライフハック

    MySQLに限った話ではないが、データベース管理システムに大量のデータを投入するのは時間が掛かり大変苦痛を伴う作業である。劇的に効能があるわけではないが、MySQLを利用しているとき、特にInnoDBを使っている場合にはデータの投入を高速化するためにいくつかテクニックがあるので紹介しよう。皆さんの作業時間が短縮され、少しでも早く帰路に着いたりサービスインさせたりという形でお役に立てれば幸いである。ちなみに、タイトルはネタであるのだが、もし当に3秒で以下の全ての設定を行えた人が居たら教えて頂きたい! ログファイルサイズの調整データ投入時に限った話ではないが、ログファイルサイズを調整するのは更新性能にとって非常に重要なファクターである。バッファプールのサイズが重要なことに代わりはないが、同じぐらいログファイルのサイズも重要である。InnoDBはログファイルを使い切ってしまうと、バッファプール

    たった3秒でInnoDBのデータローディングが快適になるライフハック
  • 1