Monthly Archives: 12月 2008

Commitは命じゃ!!

0
Filed under MySQL, php
Tagged as ,

PhpでMysql(innodb)を利用している場合に、
すごくはずかしい失態をおかしたので、
繰り返さないように、恥を公開しておこう。

autoCommit(false);

としてたわけですよ。
で、id を auto_increment するようなテーブルが複数あり、
それらを、insertとかしてたわけですよ。

でも、なぜかDBが更新されないわけですよ。

mysql_insert_id();

の関数を利用して直前のSQLのauto_incrementのIDを引っ張るわけですが、
これが、ちゃんとに取得できるわけですよ。
id が 100とかなってても、100のIDのレコードがテーブルに存在しないわけです。

もう全然わからないと思っていたところ、

commit()

部分を気持ちよく、綺麗さっぱりコメントアウトしてたわけです。
そりゃー 動くわけないですがな。

中途半端にまともなIDなんて返してくれちゃうから、
余計あせっちまいましたよ。

と、いったところで、自分のinnodbの扱いの認識不足と、
注意力不足が招いた結果ですけどね。。

Sorry, no mailbox here by that name. (#5.1.1)ではまる。

3
Filed under Mail, Qmail
Tagged as , ,

久しぶりというのもあって、初歩的なミスをおかしました。

Qmailをインストールして、ユーザを作成して(/usr/sbin/useradd)、
メール配信のテストをしたわけですが、
エラーになって、リターンメールが来て、配信できないわけです。
届かないわけですよ。

【リターンメールの内容】

 failure: Sorry,_no_mailbox_here_by_that_name._(#5.1.1)/

で、.qmailを設置して動作確認しても、.qmailすら動いてないわけです。

ここで、原因と考えられる候補を絞っていったわけですが、
 ・該当ユーザのホームディレクトリのパーミッション(755)問題なし。
 ・/etc/rc.d/init.d/qmail の中身問題なし。
 ・/var/qmail/rc の中身問題なし。

と、ここまでくると、残りは、以下のようなあたりですかね。
 ・/etc/passwd に入っているアカウント情報に不備がある
 ・/var/qmail/controlの中にあるファイルに不備がある。

でも、/etc/passwdの中身は問題なさそうに見えました。

最後の砦である/var/qmail/controlに的を絞ります。

/var/qmail/control/defaultdomain : 該当サーバのホスト名
/var/qmail/control/locals     : 該当サーバのホスト名
/var/qmail/control/me       : 該当サーバのホスト名
/var/qmail/control/rcpthosts    : localhost
/var/qmail/control/morercpthosts : 該当サーバのホスト名
/var/qmail/control/virtualdomains : 該当サーバのホスト名:所有者名

ここで、何度かみても気づかなかったんですが、localsがいけてないようです!!

virtualdomainsに記載するドメインは、localsには記載してはいけない!! ようです。
なぜかというと、virtualdomainsよりlocalsの方が優先されるからだそうです。

ブランクとは恐ろしいっす。。。