mysql
調べてみました。SQLコマンドの処理ではおなじみのmysql_execute_command関数ですが、SHOW CREATE TABLEについてはSQLCOM_SHOW_CREATEというコマンドが用意されています。(SHOW系のコマンドはinformation_schemaデータベースへのSELECT文に変換されるケース…
config/ac-macros/plugins.m4参照。pluggable storage engineのplug.inを書く上で関係しそうなものをピックアップ。 MYSQL_STORAGE_ENGINE 利用方法 dnl Macro: MYSQL_STORAGE_ENGINE dnl dnl SYNOPSIS dnl MYSQL_STORAGE_ENGINE([name],[legacy-option],[St…
について調べています。とりあえずBrianがいくつか書いていたのを思い出したのでリンクを載せます。 http://tangent.org/543/Skeleton_Engine_for_MySQL.html http://tangent.org/576/Skeleton_Engine_for_MySQL_0%2E7_%28default%29.html http://hg.tangent…
./configure \ '--prefix=/usr/local/mysql' \ '--localstatedir=/usr/local/mysql/data' \ '--libexecdir=/usr/local/mysql/bin' \ '--with-comment=MySQL Community Server (GPL)' \ '--with-server-suffix=' \ '--enable-thread-safe-client' \ '--enable…
MySQL本体が必要、ということでmysql-5.1.22-rc.tar.gz等を入手。configure/make/make installしておく。skeleton engineも入手してビルド。ver0.7が最新? http://download.tangent.org/skeleton_engine-0.7.tar.gz configureでMySQLのソースとライブラリを…
恒例の名前だけ変えた奴ができました。 [test]> install plugin mir soname 'libmir_engine.so'; Query OK, 0 rows affected (0.10 sec) [test]> create table t1 (c1 int) engine = mir; Query OK, 0 rows affected (0.01 sec) [test]> show create table t…
昨日一度エントリを書きだしつつ途中で面倒くさくなって破棄したのですが、やっぱり簡単にメモだけ残しておきます。残さないと半年後くらいにサッパリ忘れそうでw 制限事項まとめ 先に制限事項をまとめておきますその1 innodb_data_file_pathに列挙できるデ…
mysql-5.0と比べるとmysql-5.1ではsql/lex.hのsql_functionsが大幅に減っている。なぜでしょう?
mysql-5.0とmysql-5.1で異なっているようなので貼りつけておきます。 mysql-5.0での方法 - Use one of the 'sys_var... classes from set_var.h or write a specific one for the variable type. - Define it in the 'variable definition list' in this fil…
MySQL Enterprise Server 5.0.50がリリースされました。リリース内容の詳細はどこかに出ると思うので1点だけ。これまでconfigureオプションの--with-tcp-portを指定してもLinuxの場合はmysqld起動時の/etc/servicesにより上書きされるという実装だったのです…
以前にも書いていた、sql_locale.cppがビルドできない件だけれども、これはとりあえずUnicode文字をすべてASCII変換してあげれば、ソースコードの文字コードを変更(UTF-8 → UTF16LE)しなくてもビルドできることが分かった。Javaとかをインストールしていれば…
@ITさんが記事をアップされてます。MySQLと掛けてIKEAと解く、その心は? 〜 MySQL Users Conference Japan 2007レポート 〜 http://www.atmarkit.co.jp/flinux/special/mysqlconf/mysqlconf_a.html http://www.atmarkit.co.jp/flinux/special/mysqlconf/mys…
"-j"無しの状態でこんくらい。 real 7m13.728s user 4m21.224s sys 1m22.018sHP DL380 G5には及ばないけど、ThinkPadX31に比べるとコア単体の性能で4倍くらい速い。ちなみにこれは、Xen上で準仮想化で動かしてるCentOS 4.5 x86_64での結果です。
うちのセッション、ブースにお越しくださった方々、ありがとうございました。2日間にわたるMySQL UC Japan 2007も無事終了し、今日は少しのんびりしてます。今回は自社ブースを守らなければいけなかったため、Cybozuさん(MySQL+Senna!!)のセッション以外はほ…
9/11-12の明日明後日は、MySQL Users Conference Japan 2007でーす。 http://www.mysql-ucj2007.jp/ たぶん2日間ずっと会場にいます。見かけたら声かけてくださーい。
新しいSQLコマンドやSQL関数などをパーサに追加する際、編集するべきファイルは以下。 sql/lex.h sql/sql_yacc.yy でもって、GNU Bisonによりここから自動生成されるファイルは以下。 sql/sql_yacc.h sql/sql_yacc.cc でもこれだけだとdiff漏れになるので注…
以前こんなエントリを書きました。 [MySQL][BUILD] --with-tcp-portが効かない 簡単にまとめるとこんな感じ。 configure時に--with-tcp-portでデフォルトのポート番号を指定可能。 ただしLinux/Unix等の/etc/servicesファイルを使用しているOSでは、そのserv…
Warningの出力方法 sql/sql_error.hにMYSQL_ERRORクラスとpush_warning関数が定義されてます。 class MYSQL_ERROR: public Sql_alloc { public: enum enum_warning_level { WARN_LEVEL_NOTE, WARN_LEVEL_WARN, WARN_LEVEL_ERROR, WARN_LEVEL_END}; uint code…
http://dev.mysql.com/doc/refman/5.0/en/udf-return-values.html これを見るとUDFではエラーは返せるもののwarningは突っ込めないように見えるけどどうなんだろ。
コメントがたっぷり書いてあったので訳してみました。 概要 virtual String *val_str(String *str)=0;このItemオブジェクトの文字列表現を返す。引数strは割り当て済みのバッファ。このItemオブジェクトあるいは入れ子のItemオブジェクトはこのメソッドの戻…
dddで観察 しっかり撮影できたので残しとこう。 値がnameになるらしい。引数に3とか数字を渡しても"3"になる。3.3なら"3.3"。で、-2を渡したら0になってた。 printfで観察 SQLクエリ上の引数は、Item_funcのインスタンス変数argsに設定された状態で呼出が行…
MySQL 5.1系のそれぞれのバージョンでstorage/myisamディレクトリのdiffを取ってdiffstatしてみた。 対比バージョン 変更ファイル数 追加行数 削除行数 5.1.20-beta vs 5.1.19-beta 58 853 822 5.1.19-beta vs 5.1.18-beta 4 27 20 5.1.18-beta vs 5.1.17-be…
LANGの設定をen_USとかにしておいた方がいいかも。ja_JP.UTF-8とかのままだと自動生成系のファイルに日本語で日時が入ったりしてちょっと嫌な感じ。
可変引数を持つNative関数は実装方法が一般的なNative関数とは異なるためメモしときます。一般的なやつの実装方法はリファレンスマニュアル参照。 概要 編集対象のファイルとその内容についての表。 ファイル 編集内容 sql/item_func.hまたはその派生 新しい…
連載記事一覧は*こちら*にあります。http://mirz.jpでまとめて読むこともできます(オススメ)。ストレージエンジンインタフェースが終わりといいつつまだあった。handlerton構造体について。 handlerton構造体 ストレージエンジンを独自に実装してMySQLに組み…
連載記事一覧は*こちら*にあります。http://mirz.jpでまとめて読むこともできます(オススメ)。久々の連載更新。ストレージエンジンインタフェースがこれでやっと終わり。まだあといくつかやっておきたいネタがある。 handlerクラスのメソッド(続き) メソッド…
夏休みに突入したので書いてみる!MySQLをソースからビルドしてみたい人向け、最新版。MySQL 5.0.46をベースにしてます。 まずはダウンロード MySQL Enterpirse Serverのソースダウンロードページはこちら。有償サポートを買った人向け。最近はftp://ftp.mys…
連載記事一覧は*こちら*にあります。http://mirz.jpでまとめて読むこともできます(オススメ)。ストレージエンジンインタフェースの続き。忙しくなってきたのでビルド待ちの時間にコツコツ書いていたものをUP。 handlerクラスのメソッド(続き) メソッド定義 …
MySQLを回帰テスト中にgdbデバッグしたいような場合のために、mysql-test-run.plにはオプションが用意されています。まず簡単なやり方は、オプション--gdbを付けること。例えばhogeというテストケースを実行する際にgdbデバッグをかましたい場合。 ./mysql-t…
連載記事一覧は*こちら*にあります。http://mirz.jpでまとめて読むこともできます(オススメ)。今回はストレージエンジンインタフェースについて。かなりボリュームがあります。 handlerクラス ストレージエンジンのインタフェースはhandler抽象クラスによっ…