MySQL

x86_64環境でRubyからMySQLのクエリを実行するときの問題が示す根本的な問題…

ニコニコ大百科というサービスをリリースしたわけですが、 開発言語を選定する際に 「最近書いてなくて忘れかけてるし、部下も書けるし、 たまにはRubyで書いてみようじゃないか。」 とテキトーに決めたことをちょっと後悔。 特にRubyのbase64に関しては マ…

MySQL + Sennaで実現する全文検索とMySQL Enterprise Monitor 日本語版プレビュー

住商情報システム主催で、MySQL+Sennaの紹介を含んだセミナーが開催されるそうです。 MySQL + Sennaで実現する全文検索とMySQL Enterprise Monitor 日本語版プレビュー 興味のある方は是非是非ご参加くださーい。

mysqlhotcopyが動かない

mysqlhotcopyを動かすと、 Invalid db.table name 'ore.ore`.`oretable' at /usr/bin/mysqlhotcopy line 855.のように、データベース名が2つ重なってしまって動かない。 MySQL Bugs: #27303: mysqlhotcopy dies with error Invalid db.table name 'foo.bar`…

MySQLつながりで

Understanding MySQL Internalsという本が出ているらしい。 Understanding MySQL Internals: Discovering and Improving a Great Database作者: Sasha Pachev出版社/メーカー: O'Reilly Media発売日: 2007/04/20メディア: ペーパーバック購入: 1人 クリック:…

住商情報システム、日本語全文検索に対応した「MySQL」の技術サポートを開始

日本語全文検索を高速に処理できるMySQLの技術サポートが始まったようです。 MySQL

MySQL用N-Gram全文検索プラグイン

「MySQL用N-Gram全文検索プラグイン」っていうのがあるのを知った。 http://mysqlbigram.googlepages.com/mysql%E7%94%A8n-gram%E5%85%A8%E6%96%87%E6%A4%9C%E7%B4%A2%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3Senna側から見たmysql-bigramとの違いはこ…

MySQLのUDF(ユーザ定義関数)をDjangoから使う

動機 SennaのMySQLバインディングには、 UDFというMySQLのユーザ定義関数を使ってスニペットを返す関数があります。 スニペットとは、検索対象文書の一部を抜粋したものです。 通常はKWICと呼ばれる、検索キーワードとその周辺の文書を抽出したものを出力し…

出た!出た出た!Tritonn(トリトン)

SennaのMySQLバインディングを高品質にする、Tritonnプロジェクトの成果物がリリースされました! http://qwik.jp/tritonn/ 僕が覚えている範囲だと、今までのMySQLバインディングとの差異は以下のとおりです。 alter table/create index/drop indexなどでイ…

PEAR::CodeGen_MySQL_UDF

ところで、PEARを漁っていると、PEAR::CodeGen_MySQL_UDFなるものも発見。 http://pear.php.net/package/CodeGen_MySQL_UDF MySQLのUDF(ユーザ定義関数)をXMLの定義ファイルから自動生成してくれるらしい。 外部ライブラリを利用したUDFが書きやすくなるんじ…

DBMSデフォルト組み込みの全文検索

PostgreSQL 8.2からGINというインデックス形式が追加され、 それを用いれば全文検索インデックスが実現できます。 分かち書きを別途行う必要はありますが。 http://itpro.nikkeibp.co.jp/article/COLUMN/20060912/247864/?ST=lin-server&P=3 MySQLのデフォル…

MySQLのSpatial Data TypesとSenna全文検索の併用

MySQLのSpatial Extensions http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html を使って、 以下のブログで実現していることをMySQL + Sennaで実現できるのかな? http://lucene.jugem.jp/?eid=92

InnoDBでも動く全文検索

sqlsearch。 http://firestuff.org/wordpress/2006/07/20/sqlsearch-100/ トリガベース?ちゃんと見てない。

5.0.24がリリース

MySQL 5.0.24がリリースされたようだが、 ミラーまでバイナリが回っていないようだ。 全パッケージ作成しなおそう。 今度は実機で作るぞ。。。

Sennaのパッチを当てたMySQLのdebianパッケージを作る話の続き。 http://qwik.jp/senna/debian_package.html に記載した方法で、おそらくパッケージングはOK。 ただし、SennaのMySQLパッチにちょっとだけ修正が必要のようだ。 というのも、configureを--with…

MySQL with Sennaのビルドがコケる件

mysql-dfsg-5.0(5.0.22-4)には、Makefile.inを修正するパッチが入っている NULL文字入れたら、その後がクエリログが残らないバグの修正のための my_memmem関数の導入・テスト用のパッチ http://bugs.mysql.com/bug.php?id=17667&error=no Sennaの導入のため…

debianのmysqlビルドもコケている

mysql-dfsg-5.0。くそう。my_memmemがないらしいぞ。

Innobaseのうそつきー!!

どうやら運が悪かったようだ。 http://forums.mysql.com/read.php?22,12604,12664#msg-12664

というわけでこうなった。

mysql-5.0.22-sennaでSennaのコンパイルを一度通す。 mysql-5.0.22-winにWindows用ソースディストリを展開。 以下のコマンドを実行。 cp mysql-5.0.22-senna/include/my_pthread.h mysql-5.0.22-win/include/my_pthread.h cp mysql-5.0.22-senna/include/myi…

ちょ、ちょまっ!!!

MySQLのBitkeeperリポジトリの中のscriptsに大改革が行われているようです。 あーん。 make_win_src_distributionも通らなくなっている。 というわけで、 MySQLのwindows用ソースディストリビューションをダウンロード MySQLにLinux上でsennaパッチを当てる …

MySQL with Senna on Windows

どうやらSennaページに載せている方法だとダメになったようだ。 id:mirさん推奨のWindowsソースパッケージ法にしよう。。

5.0.23

MySQL 5.0.23がいったん出たが引っ込められたらしい。 というわけで、 http://mysql.bkbits.net:8080/mysql-5.0/tags?nav=index.html を見てみると、 5.0.23はキャンセルで5.0.24がリリースされるのかしら。 いずれにしても、早く出して欲しい。ビルドしなお…

ストレージエンジン

MySQLはストレージエンジンが切り替えられるのが一応ウリ。 んでMySQLパッケージには入っていないストレージエンジンを調べてみた。 分散対応ですごくいいのが落ちているかもしれないからね(妄想) PBXT http://www.primebase.com/xt/ トランザクション対応…

というわけで

MySQL with SennaのWindowsでのコンパイル方法の文書を書き直した。 パッチなどは全てLinux上で当ててもらうことにする。 うーん、こっちのほうが楽チン、かな。。。

た、たしかに。。

とれない、昔のバージョンのMySQLをbitkeeperで。 んがーーーー!!!! sfioball -r1.2092.13.3 bk://mysql.bkbits.net/mysql-5.0 mysql-5.0.22 とりあえず、Windowsからビルドするときのメモ。 MySQLバインディングを大きく変わったので、 Windows環境での…

MySQLのインストーラー for Windows

今はBitKeeper上に乗っていないようだ。 sfioball bk://mysql.bkbits.net/mysql-server-setup mysql-server-setup 適当に探したら出てきた。メモメモ。 勝手に使っていいのかどうかという問題もあるが。 http://svn.mysql.com/svnpublic/mysql-server-setup/…

U・D・F!U・D・F!

MySQLのUDFを使うとクエリキャッシュに乗らなくなるのね。 ああ。。。呼び出しごとに結果変わる可能性あるもんな。 結果変わらないのでキャッシュしていいよフラグを立てたいな。 UDFじゃなくてMySQL本体に関数として組み込むのがいいのかしら。。

ふうむ。

MySQLでCHAR(1)型のフィールド、例えばflagがあったとしよう。 SELECT * FROM tekito WHERE flag = 0 というクエリを実行すると、 全レコードがひっかかる。 つまり、flag = 0は常にTRUEと評価されるようだ。 どこかにドキュメントあるのかしら。

DebianパッケージのMySQLのsocket

DebianのパッケージのMySQLライブラリに依存するやつ、 デフォルトのsocketが/var/run/mysqld/mysqld.sockになっている。 というわけで、MySQL 4.0.26を自前ビルドする場合には、 --with-unix-socket-path=/var/run/mysqld/mysqld.sock をconfigure時に指定…

続mMeasure

width below 10 pixels っていうエラーがいっぱい出てグラフが出ず。 むうう。ちゃんと追うのめんどい。

UDFについて

MySQLのUDF(User Defined Function)は死にゆく運命なわけですが、 一応メモを残しておこう。 間違ってたらごみん。・テーブルからわたってくる文字列は、 NULL Terminatedされてない場合がある。 適宜memcpy+NULL付加する。 ・error=1としてしまうと、全ての…