MySQL、オープンソース系、ウェブ系ネタ。commentsTweetMySQLのINT等の整数型カラム(UNSIGNED)から減算する時に注意MySQL4.xでは大丈夫だったけど、MySQL5.xに移行してから起こった出来事。整数型カラムをUNSIGNEDして利用している時、負の数にならないのをいい事に0から減算して負の数の場合は0と自動で処理してくるものだと思っていた。(MySQL4.x時にはそのように処理されていた。)本当はプログラム側で処理するべきなのかもしれないけれど、楽してそのようなスクリプトを書いていた。先日MySQL5.xの環境に移行したらデータがおかしくなっていた。とてつもなく大きな数字となっており???状態。UNSIGNEDしているカラムが0で、そこから1を引くと4294967295のような値になってしまうようだ。SQL_MODE=’NO_UNSIGNED_SUBTRACTION’;とすると大丈夫のようだ。commentsTweetOpenPNEで全然ログイン出来ないRDBMS(MySQL)ベースでログイン出来たのにファイルベースだとログイン出来なかった。ログインボタンを押した後ブラウザに表示されるエラー内容はこんな感じ。34借りている専用サーバではなにもしないで使えたOpenPNEだったけど、自分のサーバ環境では足りないものがあったのでメモ。OpenPNEを使うには以下のものが必要のようだ。自分の環境でも入っていなかった。ファイルベースでセッション管理するには必須のようだ。インストールCentOS5ならyumでOKらしい。場合はRPMからインストールが必要。参考:http://centossrv.com/bbshtml/webpatio/364.shtml1.mcryptを組み込むのに必要なlibmcryptをrpmforgeからインストールします。libmcrypt-devel2.php用のmcrypt拡張モジュールをPHPRPMsよりダウンロードします。http://jaist.dl.sourceforge.net/sourceforge/phprpms/php-mcrypt-4.3.9-3.2.1.i386.rpm最新版はhttp://phprpms.sourceforge.net/mcryptで確認して下さい。CentOSはRHEL互換なのでRHEL4の物を落としました。X86_64で無いならばi386で問題ありません。3.ダウンロードしたrpmをインストールします。現在更新されていない(?)以下のページでも出来ると思う。拡張をロードできません。設定を確認してください」というエラーへの対処。これでヨシ、と思ったら。いざログインしてみるとエラー。