2009-01-01から1年間の記事一覧

MySQL 5.5.0-m2リリース

出ました。突然のメジャーバージョンアップですが、これは新しい開発サイクルに基づくものです。曰く、 trunkは常にβ版以上の品質を保つ (純粋な新機能の開発は別のstaging treeで行う) 3〜6ヶ月ごとにRC版の品質でマイルストーンリリースを行う 12〜18ヶ月…

MySQL InnoDBだけで全文検索

実験エントリです。 予習してみる 「転置インデックス」というキーワードで検索して、しばらく勉強してみます。 転置インデックス - Wikipedia mixi Engineers’ Blog » 転置インデックスを実装しよう ASCII.jp:悟空、秘剣「転置インデックス」を手に入れる …

AirProxyのmixiアプリとニコニコ動画対応

今日はデータベースとは関係のないネタです。 AirProxyというソフトウェアをご存知でしょうか。AirProxyはダイヤルアップ接続やAIR-EDGEなどのナローバンド環境において、ブラウズ対象のテキスト・画像を圧縮することでレスポンスを改善することができるHTTP…

MySQL 5.1.41リリース

出ました。今回は機能の追加・変更が4件、バグ修正が62件あります。 MySQL 5.1.38から同梱されるようになったInnoDB Pluginですが、MySQL 5.1.41ではバージョンが1.0.5に上がり、ついにRC(リリース候補版)となりました。再掲になりますがInnoDB Pluginはビル…

PHPを組んで作業するのは実力ではないですか?

私の職業はWebエンジニアですが 少しPHPがわかるのでルーチン化できるものはPHPを組んでいます。 そうすることによってJavaで1時間かかる作業が1分で終わることがあります。 なので職場では「仕事が早い、仕事ができる」と評価されることがありますが 先日先…

MySQL 5.1.40リリース

出ました。今回はバグ修正が48件あり、そのうちパーティショニング機能に関するものが5件、レプリケーション機能に関するものが6件あります。サーバクラッシュ系のバグ修正がいくつかありますが、いずれも発生条件が極めて複雑であり、通常の運用で当たるこ…

MySQL 5.4.3-betaリリース

出ました。今回は仕様変更が3件と、バグ修正が48件あります。 このバージョンから、InnoDBのパラメータについていくつかデフォルト値が変更されました。デフォルト値をMySQL 5.1、MySQL 5.1のInnoDB向けサンプルファイル(my-innodb-heavy-4G.cnf)、MySQL 5.4…

MySQL EXPLAINの読み方をJavaで理解する(2)

前回の例が思いのほかSQLの実行計画をまともに表現できているようなので、3つだけピックアップして詳しく図解しておきます。解説なしだと自分でもあまり読む気がしなかったというのもあります(^^; 1つ目はSQL 04、索引のない状態で、従業員番号(empno)が7,78…

MySQL EXPLAINの読み方をJavaで理解する(1)

はてなブックマークの人気エントリで「SQLを使うなら理解しておきたいアルゴリズム?…」という記事を眺めていて、実際にSQLのアルゴリズムを説明するにはどうすればよいか考えてみました。そこで、試しにSQLの実行計画をJavaで再現してみることにしました。 …

MySQL Plugin ’FEDERATED’ is disabled. について

ときどき「Plugin 'FEDERATED' is disabled.」で検索してくる方がいらっしゃるようなので。 MySQL 5.1.26以降、FEDERATEDストレージエンジンはデフォルトで無効化されるようになりました。そのためMySQL 5.1のバイナリディストリビューションを使用している…

MySQL Connector/J 5.1.10リリース

MySQLのJDBCドライバ、Connector/Jの5.1.10がリリースされました。 今回のバグ修正はBug#47974の1件のみです。これは5.1.9におけるデグレードで、TCP 3306番以外の非標準ポートへの接続ができなくなるという致命的なものです。5.1.9を誤って使うことのないよ…

MySQL 5.1.39リリース

出ました。今回はバグ修正が20件あり、そのうちパーティショニング機能に関するものが4件、レプリケーションに関するものが9件となっています。 今回のバグ修正のうちBug#28976、正確にはBug#28976を取り巻く状況は覚えておいた方が良いと思います。解説しま…

MySQL Connector/J 5.1.9リリース

MySQLのJDBCドライバ、Connector/Jの5.1.9がリリースされました。 今回は11件のバグが修正されています。前回のようなセキュリティ関連の修正は無いようです。件数が少ないので一通りバグレポートを読んでみましたが、あくまで個人的な意見として、現在シス…

NoopでHello World!

今回はデータベースのネタをお休みして、噂のプログラミング言語Noopを試してみました。 速報:グーグルが新言語「Noop」を公開。JavaVMで動作 − Blog on Publickey JVMで動作する新言語「Noop」- Google開発者らによる新プロジェクト | エンタープライズ | …

MySQL 5.4.2-betaリリース

出ました。MySQL 5.4系列にも、このバージョンからInnoDB Pluginが同梱されるようになりました。 元々MySQL 5.4はInnoDBの性能向上が主な改善点だったのですが、MySQL 5.1でもInnoDB Pluginを使えるようになったので特長が薄れてしまっています。とはいえ、M…

MySQL RethinkDB 0.1 試してみました

少し前に話題になった、MySQLのRethinkDBストレージエンジンを試してみました。 RethinkDBはSSD向けに最適化されたMySQL用ストレージエンジン SSDに最適化したデータベース「RethinkDB」、ロックもログも使わずにトランザクション実現 − Blog on Publickey R…

SSDの真の性能を引き出す MySQL 5.1.38 InnoDB Plugin

X25-M、SSDで検索してくる方が非常に多いので、本ブログ内のSSD関連記事をリストしておきます。 MySQLのベンチマークを用いたIntel X25-M SSDの評価 (2009/03/25) SSDの真の性能を引き出す MySQL 5.1.38 InnoDB Plugin (本記事) MySQL 5.1.38から本体に同梱…

MySQL 5.1.38リリース InnoDB Plugin追加!

出ました。今回は仕様変更が4件、バグ修正が49件あります。そのうちレプリケーション関連で仕様変更が1件とバグ修正が4件、パーティショニング関連でバグ修正が3件あります。 今回のリリースから、配布物になんとInnoDB Pluginが含まれるようになりました。…

MySQL 5.1 高速インストール手順 Windows用

WindowsでMySQL 5.1をちょっと試してみたいという方向けのインストール手順書です。Webで検索するとMySQLのインストール手順書はたくさん見つかるのですが、今回ご紹介する手順にはこんな特長があります。 インストール時点でMySQLの知識が不要 起動・停止が…

データベース負荷テストツールまとめ(2)

データベース負荷テストツールまとめの第2回です。 前回はTPC-Bベース、TPC-Wベースのものから6つのツールをご紹介しました。今回はTPC-Cベースのものについて見ていきたいと思います。 tpcc-mysql 対応RDBMS:MySQL 対応OS:Linuxなど 言語:C 作者:Percon…

MySQL 5.1.37リリース

出ました。 今回は37件のバグ修正があり、そのうち7件がレプリケーション関連、さらにそのうち2件がImportant Changeになっています。Important Changeの2件について、内容を簡単にご紹介します。 RESET MASTER文とRESET SLAVE文が、SHOW SLAVE STATUSにおけ…

データベース負荷テストツールまとめ(1)

Webシステム開発において性能試験を行う場合、hp LoadRunnerやApache JMeterといったウェブブラウザをエミュレーションしてくれる負荷テストツールを用いるのが定番だと思います。そんななか、たまにデータベース単体での性能を測ってほしいと頼まれることが…

MySQL Connector/J 5.1.8リリース SQLインジェクションの修正あり

MySQL用のJava JDBCドライバ、Connector/Jがバージョンアップしました。 Connector/J 5.1.8では以下のSQLインジェクション脆弱性が修正されています。私たち日本のユーザにとってクリティカルなバグですので、早めにバージョンアップされることをおすすめし…

MySQL InnoDB Pluginの簡単なビルド手順

これまで数回に渡ってInnoDB Pluginのエントリを書いてきたので、InnoDB Pluginを試してみたくなったという方がいるかもしれませんね。そこで本日はそのような方がいることを期待して、InnoDB Pluginを組み込んだMySQLの簡単なビルド手順をご紹介します。本…

The Art of Work:MySQL InnoDB Pluginのデータ圧縮機能 性能編

MySQL InnoDB Pluginのデータ圧縮機能の続きです。前回はInnoDB Pluginの独自機能であるデータ圧縮の仕組みを解説し、Wikipedia日本語版のデータが約半分にまで圧縮されることを確認しました。今回はデータ圧縮によって性能がどのように変化するかを、実際に…

MySQL 5.1.36リリース

出ました。MySQL 5.1.36には機能追加・変更が4件、バグ修正が50件あります。このうちサーバがクラッシュするバグが11件、またレプリケーションに関するImportant Changeが2件出ており、いつもより多い印象を受けます。 今回のポイントはBug #44352です。cp93…

MySQL InnoDB Pluginのデータ圧縮機能

InnoDB Pluginの面白い機能の一つに、データ圧縮機能があります。今回はその仕組みと効果について見ていきたいと思います。まずはグラフをご覧ください。 これはWikipedia日本語版のデータベースをダウンロードし、記事本文の格納されているtextテーブルをMy…

MySQL 5.4.1-betaリリース

出ました。 今回は This release does not differ from 5.4.0 except that binary distributions are available or all MySQL-supported platforms, including Windows binaries with scalability improvements enabled. ということで、これまで一部のプラッ…

Sergey氏がMonty Program ABに移籍していた件

Changed jobs, now at Monty Program AB Sergey Petrunia氏はMySQLのクエリオプティマイザの開発者です。参考のためにカンファレンス資料をいくつかリンクしておきます。 MySQL Conference & Expo 2009のセッション内容と配布資料(PDF) MySQL Conference & E…

MySQL InnoDBにおけるロック競合の解析手順

データベースの運用で避けられないのが、ロック競合によって起こるシステムトラブルへの対応です。「2時までに終わるはずのバッチ処理が朝になっても終わっていない」とか「負荷が高いわけでもないのにシステムが無応答になっている」といったトラブルが発生…