[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[postfix-jp: 4208] Re: 451 4.3.0 Error:queue file write error という現象について



私もちょっと前に同じ問題にハマりました。

On Fri, 17 May 2013 17:13:05 +0900 (JST)
大塚 総司(OTSUKA soushi) <otsuka@xxxxxxxxxxxxxx> wrote:

> postfix側がMySQLへ接続する際に特に文字コードは指定していないため、デフォルト
> の文字コードが利用されます。
> こちらの環境ではデフォルト文字コードは utf8 でした。
> postfixadminがDBテーブルを作成する際は文字コードを latin1 で作成するために
> サーバ側とクライアント側で文字コードのずれが出てきます。
> 
> ここのMySQLの挙動は自信がないのですが、文字コード間で互換がとれている文字
> (ASCII)のみなら特に問題なくて、全角文字のような互換が無いような文字が含ま
> れているとエラーになっているように思えます。
> (もしくは自動変換ができない場合にエラー?)

MySQL は、接続の charset と、テーブル(カラム)の charset が異なる場合に、カラムとリテラル文字列を比較しようとすると、文字列をカラムの charset に変換してから比較します。

その際、変換できない文字があると、Illegal mix of collations というエラーになります。

…という話を↓に書きました。

http://tmtms.hatenablog.com/entry/2013/04/11/mysql_Illegal_mix_of_collations

この記事を書いたきっかけは、まさに Postfix でした。

Postfix の場合はクエリを自由に書けるので、クエリ中の '%s' を _utf8'%s' のようにすることで、問題を回避できます。

-- 
とみたまさひろ <tommy@xxxxxxxx>
http://twitter.com/tmtms
D68F 8F55 7F6C 5908 88EB  1EBA 25ED DEE7 BBE8 1752

_______________________________________________
Postfix-jp-list mailing list
Postfix-jp-list@xxxxxxxxxxxxxxxxxxxx
http://lists.sourceforge.jp/mailman/listinfo/postfix-jp-list

References
[postfix-jp: 4204] Re: 451 4.3.0 Error:queue file write error という現象について, ettodesu
[postfix-jp: 4205] Re: 451 4.3.0 Error:queue file write error という現象について, OTSUKA soushi
[postfix-jp: 4206] Re: 451 4.3.0 Error:queue file write error という現象について, YOSHIMURA Keitaro
[postfix-jp: 4207] Re: 451 4.3.0 Error:queue file write error という現象について, OTSUKA soushi

[検索ページ] [Postfix-JP ML Home]