mysql
ひとつ前のエントリで紹介したイベントで話をしてきました。今回はTritonnやMySQL全文検索のコア技術からは一歩引いた視点で、全文検索が何に役立つのかとか、Tritonnプロジェクトの意義とかを説明させていただいています。MySQL全文検索ことはじめView more…
MySQLのクエリキャッシュ機能ですが、SELECT文の内容によってはquery_cache_XXX変数の値に依らず無条件に結果がキャッシュされませんよね。ではどんなキーワードを含んでいるとキャッシュされないのでしょうか。sql_yacc.yyとlex.hで確認してみました。 SQL_…
またまた更新が滞ってしまいました。でも忙しいのは良いことですよね。さて本題。ちょっと宣伝が入っていますが、ぜひお知らせいたしたく。これまで英語のスライドとテキスト(教材)でお届けしていたMySQL公式トレーニングですが(※講義自体は日本語)、なん…
id:kiskeさんにお誘いいただいて先週金曜日にカカクコムさんの社内勉強会でお話させていただきました。貴重な機会をいただきありがとうございました。自由に話してOKですよとのことだったので、何にしようかなと少し考えた結果、こんなスライドができあがり…
mysqlbugより。 CC='ccache /usr/local/gcc-4.3.2/bin/gcc -static-libgcc' \ CFLAGS='-g -O3 -march=i686' \ CXX='ccache /usr/local/gcc-4.3.2/bin/gcc -static-libgcc' \ CXXFLAGS='-g -O3 -march=i686' \ ./configure \ '--prefix=/usr/local/mysql' \ '…
概要 main関数→init_signals関数にて設定されます。いろんなシグナルをトラップしています。プラットフォームによっていくつか異なるinit_signals関数実装がありますが、ここではWindowsとLinuxについて説明します。 Windows版でのシグナル処理 sql/mysqld.c…
日本語版のPlanet MySQLが立ち上がりました。 http://jp.planetmysql.org/ Planet MySQLというのはMySQLに関連するブログを集めたアグリゲーションサイトで、Sun Microsystems(MySQL開発元)が運営しています。英語版は以前からありましたが、今回新しく日本…
ここ数日「MySQL + Connector/J(JDBCドライバ) + プリペアードステートメント」の話題がちらほら出ています。正確に把握はしていないですがSQLインジェクション対策→PreparedStatementという流れできた話のようです。 徳丸浩の日記 - JavaとMySQLの組み合わ…
いつの頃からかは知りませんが、Linux(CentOSとか)をインストールするとデフォルトでSELinuxが有効(Enfocing)になっていました。GUIインストーラ作業時にDisabledにするか、あるいは/etc/selinux/configでSELINUX=disabledにしておけばいいのですが、そのま…
スロークエリログはどのように計測され、出力されているのかをまとめてみました。 測定方法 THDクラスのset_time関数で計測開始、end_time関数で計測終了。 計測開始ポイント mysqld --bootstrapを使用している場合はmysql_parse関数の直前 ネットワーク経由…
これまでC++用クライアントAPIとしてはMySQL++というC APIのwrapper型ドライバがありましたが、新たにJDBC 3.0 APIを模倣したC++用クライアントAPIがリリースされるようになるようです。(今日のところはdevelopment preview release)Connector/C++の現在の…
まだ詳細は良く分かっていませんが、Brian Akerが中心となってMySQLのソースからforkしたプロダクト"Drizzle"を立ち上げたようです。MontyのBlogで紹介されていたのを見て気づきました。 http://monty-says.blogspot.com/2008/07/what-if.html Brian自身も記…
共著として執筆に参加させていただいた『MySQLデータベース構築バイブル』が7/19に発売になります。MySQLデータベース構築バイブル作者: 志村和彦,松信嘉範,池田徹郎出版社/メーカー: 毎日コミュニケーションズ発売日: 2008/07/19メディア: 単行本(ソフトカ…
MySQL日本ユーザ会日本MySQLユーザ会から許可をいただいて"MoSQL"の名前でストレージエンジン開発を始めました。現行のTritonn(MySQL本体+patch+libsenna+libmecab、MyISAM + Senna Index APIベース)をPluggable Storage Engine化したものを目指します。リリ…
いまSkeleton Engineみたいなのを0から独自に作っているのですが、嵌ったのでメモ。C++にはRTTI(Run Time Type Information、実行時型情報)という便利な機能があるそうなのですが、これを有効(G++ではデフォルト)にしたままビルドすると、Pluggable Storage …
Brianが書いたコードはこんな感じだったのだけど、 AC_MSG_CHECKING(for mysql source code) AC_ARG_WITH(mysql, [[ --with-mysql[=mysql src directory] Source requir to build engine.]], [ if test -d "$withval/sql"; then MYSQL_SRC="$i/mysql_config"…
Brianが作った"Skeleton Storage Engine"というのが既に存在するので車輪の再発明なのですが、勉強がてらスクラッチで作ってみました。Yet Another hogehoge ってのに何となく憧れがあっただけだったりもするのですがw一応、BrianのSkeleton Engineよりもコ…
今月のDB Magazineに同僚が書いたMySQL Clusterの記事が載っています。DB Magazine (マガジン) 2008年 08月号 [雑誌]出版社/メーカー: 翔泳社発売日: 2008/06/24メディア: 雑誌この商品を含むブログ (3件) を見るMySQL 5.1で新たに導入されたDiskベースのMyS…
MySQL 5.1で追加されたDROP EVENTコマンドの処理内容を説明します。 SQLコマンド DROP EVENTを発行すると内部的にSQLCOM_DROP_EVENTが発行されます。 ディスパッチ先 SQLCOM_DROP_EVENTに対しては、Events::drop_event関数の呼び出しが行われます。 Events::…
MySQL 5.0.60で--with-libeditでビルドした場合のmysqlクライアントにおけるマルチバイト文字入力不具合が解消されたようです。このChangeSetが取り込まれている模様。 http://mysql.bkbits.net:8080/mysql-5.0/?PAGE=cset&REV=47cd3cd4ZuTuAVELOv-2mljdCeXG…
setlocale関数のデフォルトの挙動の影響とのことでした。 308: setlocale(LC_CTYPE, ""); http://bugs.mysql.com/bug.php?id=36279 Thanks to 木村さん!Tritonn Windows版のハードルがこれでひとつ減ったかな。 追記 setlocale呼び出しを削除するパッチがco…
http://java.sun.com/javaee/downloads/index.jspGlassFish+MySQLなパッケージが登場した模様。そういえばMySQL,Inc.にお世話になっていたとき、GlassFishからMySQLを使うためのマニュアルを書いたなぁ(英語版/日本語版)。
http://jp.sun.com/company/events/mysql/4/9(水)のこのイベントに参加しようかと思います。最近仕事が忙しいのでもしかすると「夜の部」だけの参加になるかもですが。
こんな感じで計測してみようとおもいます。 mysqlslap --auto-generate-sql --auto-generate-sql-guid-primary \ --commit=5 --engine=innodb --number-int-cols=4 --number-char-cols=8 \ --preserve-schema --protocol=tcp --concurrency=50 \ --auto-gene…
古いバージョンのMySQLを使うことを推奨する意味はまったくないのですが、何らかの事情でver4.0系とかver3.23系とかのソース/バイナリを入手したいと思った場合、MySQL本家のダウンロードページからは消えていますが、ミラーサイトには残っているので直接ミ…
よく見たら神コンテンツだよ。参考にしようっと。 http://forge.mysql.com/wiki/MySQL_University
ついに買収(売却)が実現となりました。さびしい反面、相手がSunということで少し安心という面もあるかなと感じています。以下、記事とかのまとめリンク(にする予定)。 MySQLの公式アナウンス(英語) Sunの公式アナウンス(英語) かじのすけさん@mixi日記 Su…
ソース中に度々登場するmy_thread_varですが、いつも忘れるのでメモを残しておきます。my_thread_varの定義。include/my_pthread.hにて。 #define my_thread_var (_my_thread_var()) そう、関数呼出のマクロなのです。なのでgdbでptypeしても不明な訳で。_my…
Pluggable Storage Engineはdynamic linkなのでオーバーヘッドがどれくらいなのか気になって調べることにしました。先に結論を述べておくと、Pluggable化そのものはあまり気にしなくて良さそうです。測定にはこんな感じでmysqlslapを使いました。同時に100個…
調べてみました。テーブルのDDL出力は以下ような関数(backtrace)で行っています。 #0 get_table_structure (table=0x8c3c908 "t1", db=0xbfd0f8b8 "test", table_type=0xbfd0ee30 "\v", ignore_flag=0xbfd0ef8b "¿ù\213\t\b") at mysqldump.c:1624 #1 0x0808…