うちのサーバー(OpenBSD)の MySQL には、ここの Nucleus の他にテスト用にインストールした Nucleus やバグトラッキングの fryspray のデータベースなどがある。これらのページを次々にアクセスしてると、ときたま MySQL がエラーを出力する。まぁ滅多にそんなことしないし、cron スクリプトが常時ログを監視してエラーが出た場合は mysqld を再起動するようにしてるから、まぁいいかということでしばらく放置しておいたんだが、調べてみたらなんてことはない。MySQL が沢山ファイルをオープンしようとしてるのに、OS が許可してないだけだった。
OpenBSD のバージョンは違うんだが、MySQL のドキュメント2.6.4.4 OpenBSD 2.8 の注意事項によると、mysqld_safe で起動するときに --open-files-limit オプションでオープンできるファイルの数を変更できるそうだ。説明によると 2048 って数値を付けてあるので、それで試したところ、ログに 1772 までしか開けないよ、って警告が出ていた。sysctl kern.maxfiles とやって確認したところ、1772 ってなってる。ということで、再度 --open-files-limit=1772 と指定し起動したら今度は警告なしで起動したようだ。試しにいろんなページにアクセスしてみたけど、例の errno: 9 というエラーは出ない。一応 OS が用意してる最大値一杯まで割り当てるのもなんだし、ってことで 1024 にしてみたが、それでもエラーが出なかったので、しばらくこれで運用してみようかと思う。
OpenID を使ってログインすることができます。
poker, backgammon, tramadol, casino, insurance, loans