2007-07-01から1ヶ月間の記事一覧

Users Conference Japan 2007 申込受付開始

MySQLのユーザカンファレンスが9/11-12の2日間、東京で行われます。すばらすぃ〜ですねぇ。数年前はこんなこと考えられなかったです。時代は変わりつつあるとうことなのでせうか。http://www.mysql-ucj2007.jp/session/index.htmlあのRubyの*まつもとゆきひ…

mirz.jp 開設

うほほー。mirz.jpを開設したよ。http://mirz.jp/調べた内容を後で見やすいようにするためのまとめサイト。とりあえず今のところ、はてなダイアリに書いた記事のうち、リファレンス性が比較的高いものをhtml化しておいてるよ。

Understanding MySQL Internalsを読む(7)

連載記事一覧は*こちら*にあります。 Core API一覧 メモリ割当て、文字列操作、ファイル管理などの処理はいくつものグループの内部APIによって行われています。ポータビリティを確保するため、MySQLのコードはCのライブラリの呼出を非常に控えめにしており、…

Understanding MySQL Internalsを読む(6)

以前の記事 [MySQL] Understanding MySQL Internalsを読む(1) [MySQL] Understanding MySQL Internalsを読む(2) [MySQL] Understanding MySQL Internalsを読む(3) [MySQL] Understanding MySQL Internalsを読む(4) [MySQL] Understanding MySQL Internalsを…

高解像度表示

/etc/X11/xorg.confをいじったりdpkg-reconfigure xserver-xorgで設定したりしても画面の解像度選択のところに希望の解像度がでなかったのは、ドライバがちゃんと入っていなかったためだったことが判明。例えばUbuntuでnvidiaのカードを使っているうちの自宅…

Understanding MySQL Internalsを読む(5)

以前の記事 [MySQL] Understanding MySQL Internalsを読む(1) [MySQL] Understanding MySQL Internalsを読む(2) [MySQL] Understanding MySQL Internalsを読む(3) [MySQL] Understanding MySQL Internalsを読む(4) NET構造体 NET構造体はMySQLのclient/serve…

Understanding MySQL Internalsを読む(4)

以前の記事 [MySQL] Understanding MySQL Internalsを読む(1) [MySQL] Understanding MySQL Internalsを読む(2) [MySQL] Understanding MySQL Internalsを読む(3) THDクラス MySQLのCoreなクラスのひとつ、THDについて。THDクラスはMySQLの上位層(データベー…

に再挑戦(2)

Xen

数日ぶりに再開。ふむ。忙しかった。とりあえずdistの中身が気になる。make worldによってどんな生成物ができるのかをチョット整理したい。たぶん、RHEL5とかSuSE10とかのインストール時のパッケージ選択の時に「仮想化」を選ぶとXenもインストールされるわ…

Understanding MySQL Internalsを読む(3)

前回の記事 [MySQL] Understanding MySQL Internalsを読む(2) gdbデバッグするときのお薦めbreakpoint個所 P.35の表より。これでgdbデバッグ効率UP〜。 操作対象 お薦めbreakpoint個所 見ると幸せになれるかもしれない変数 SELECT文を実行 mysql_select() *t…

に再挑戦

Xen

夏ですね。本を買ってそれを読みつつ自宅鯖をXen化しようと企つつ企画倒れに終わってからおよそ1年、こりずにまた再挑戦する季節がやってきましたよ。前回の失敗はHowTo本を片手にGUIで地雷をスイスイ回避〜みたいな軟弱な方法で挑んだためと結論づけ、今回…

ver5.2.3でデバッグ用ビルド

PHP

ちょっとだけgdbで調べたいことがあり、環境(CentOS5)と同じオプションに-gを付けてPHPをソースからビルドしようと思ったのだけれども、"php -i"で見たら100個近いconfigureオプションが付いていて腰を抜かした。 CC=gcc CXX=gcc CFLAGS='-g -O0' CXXFLAGS='…

Invalid library (maybe not a PHP library)

phpをデバッグビルドしたのは後々に役立つだろうということの他に、当面の問題として"Invalid library (maybe not a PHP library)"が何なのかを調べようという趣旨があったりしました。php.iniに"extension=libmysqlclinet.so"と書いて、"/usr/lib/php/modul…

Understanding MySQL Internalsを読む(2)

前回の記事 [MySQL] Understanding MySQL Internalsを読む(1) Status Reporting Module システム変数、ステータス変数、テーブル情報、レプリケーションの状態、テーブルキャッシュ等を報告する。SHOW系コマンドの処理。ほとんどのコードはsql/sql_show.ccに…

Understanding MySQL Internalsを読む

『Understanding MySQL Internals』なるMySQLソースコード解説本が発売されました! たぶん現存する書籍(洋書含む)の中ではもっともコード寄りの本だろうと思います。著者曰く『Understanding the Linux Kernel』とか『Linux Device Drivers』のMySQL版となる…

C++コンパイラとlibgcc_c.so、libstdc++.so

ビルドオプションのひとつであるCXXを何も指定しない場合、環境にも依ると思いますが、コンパイラにより生成されるmysqldバイナリが、libgcc_c.so、libstdc++.soにリンクする場合があります。CXXはC++コンパイラを指定するためのフラグです。例えばこんな感…

バンドルしているzlibのライセンス

$MYSQL/zlib/FAQというテキストファイルの22個目のQAに、「zlibは商用アプリケーションで使用しても良いですよ。詳しくはzlib.hを見れ。」と書いてあります。 22. Can I use zlib in my commercial application? Yes. Please read the license in zlib.h.zli…

ウィルス対策ソフト カスペルスキー

某Sさんからtwitter経由で知ったんですが、カスペルスキーというウィルス対策ソフトがあるそうな。http://www.just-kaspersky.jp/products/これ変わった名前だなぁ、と思ってみてみたら、、このカスペルスキー(Kaspersky)はカスペルスキーさんという人が作…

keep alive有効化

最近、検証用マシン群が手元のマシンとは別のネットワーク上へ移動したのですが、SSHが良く途中で切れるようになってしまいました。これは10分放置すると間にいるルータがNATテーブルをクリアしてしまうからなんだそうで。しかも標準のopenSSLにはKeep Alive…

アーカイブしてバックアップ

既にhot-backup.pyスクリプトを利用してのバックアップ運用を開始しているものの、このhot-backup.pyスクリプトはデフォルトではレポジトリのディレクトリコピーに近い形でのバックアップを行うため、圧縮ファイルとかになっていませんでした。で、その後、…

サーバのホスティング

自宅サーバを立ち上げてみたり停止させてみたりなオイラですが、VPS(Virtual Private Server)方式によるホスティングサービスを利用したいなぁと前々から思っておりますた。そんな矢先、nkjm君が人柱になってくれるとのことで、さっそくレポートが!!!http://nkj…

--with-tcp-portが効かない

Windowsでは効いていた(ような気がする)けど、Linuxバイナリにどうも--with-tcp-portが効いていない感じ。 ./configure --with-tcp-port=9999 && make sql/mysqld --help --verbose | grep portするとmaster-portとかreport-portとかは変わるのにportが変わ…

--with-libedit直ってない

どーしよー♪ どーしよー♪readlineはGPLだけどlibeditはBSDライセンスだからという理由で使おうとすると、mysqlクライアントの対話モードで日本語入力できない現象がまだ直ってません。日本語入力できるようにする前のEmacsみたいに、うちこんだ瞬間に空文字…

sennachkにlibsennaを組みんでビルド

以下でいいのかな。 CFLAGS=-static CXXFLAGS=-static ./configure XXX大丈夫っぽい。バイナリサイズでかくなるけどねw senna-1.0.7/src$ ldd sennachk libc.so.6 => /lib/tls/libc.so.6 (0x001e0000) /lib/ld-linux.so.2 (0x001c7000)要するに、1個下のエン…

--with-mysqld-ldflags=-static

通常、MySQLに限らずC/C++等のネイティブな言語で書かれたプログラムをビルドする際には、依存ライブラリに対してstaticなリンクを行う方法とdynamicなリンクを行う方法の2つの方法がコンパイラから提供されています。MySQLでは「全部Staticで」「全部Dynami…

PIC - Position Independent Codeについて

PICとは 任意のアドレスにロード可能なコードのこと。データのアクセスやジャンプは相対アドレスで行われます。 共有ライブラリはPICでコンパイルする PICでコンパイルすることで共有ライブラリが意図している本来の機能を発揮できます。PICでないと実行時の…

configure --with-extra-charsetsについて

この"--with-extra-charsets"オプションは、以下のように説明されています。 --with-extra-charsets=CHARSET,CHARSET,... Use charsets in addition to default (none, complex, all, or a list selected from the above sets)つまりデフォルトの文字コード(…