« トラックバック(TrackBack) URL を GD と ID タグで作成する | メイン | cron ジョブ と デーモン »

2005年01月03日

MySQL 4.1.7 (s101, s102 サーバ) と PublishCharset UTF-8

Xrea.com さんの 110台余りのサーバの中で、2つのサーバ s101, s102 は特別な仕様となっているようです。
     Athlon64 3500+ 1GB RAID1 (Perl5.8.3 / PHP5.0.3 / MySQL4.1.7 / PgSQL 7.4.5 )
   http://sb.xrea.com/showthread.php?&threadid=4443

Movable Type 新規インストールの際、
データベース MySQL 使用時、mt.cfg 設定: 文字コード (PublishCharset) utf-8 は使用できません。
UTF-8 として、mt-load.cgi を実行すると、

テンプレートを設定しています...
データの設定中に以下のエラーが発生しました:
Insertion test failed on SQL error Duplicate entry '1-' for key 2

となります。
文字コード (PublishCharset) EUC-JP とする必要があります ( 2005/1/3 確認済み) 。
MySQL4.1 新機能による影響のようです。データベースをみると、
  phpMyAdmin version 2.6.0-pl3 SQL Dump では、sql ファイルは、UTF-8 Unicode (utf8) で作成・エクスポートされます。
  MySQL dump version 10.8 をみると、dump ファイルは、ujis (EUC-JP) で作成・エクスポートされます。

「第48回 MySQL 4.0から4.1へのアップグレード 、トラブってませんか?」
鶴田展之氏 2004/12/21
   http://pcweb.mycom.co.jp/cgi-bin/print?id=25624
などが参考となりそうです。
つまり、s101 サーバでの報告
   http://sb2.xrea.com/showthread.php?p=64430
と同様の設定エラー が s102 サーバにおいても発生しますので、mt.cfg の文字コード (PublishCharset) は 必ず EUC-JP とする必要があります (PublishCharset Shift_JIS は未確認です)。

再構築後、atom.xml のエンコードをみると、"EUC-JP"なので、mt.cfg の文字コード設定が反映しています(当たり前ですが)。
   <?xml version="1.0" encoding="EUC-JP" ?>
これでは、MySQL 4.1系の高機能を利用できるようになっても、
   http://shellscript.biz/archives/000023.html
過去エントリー(2004年09月20日)のとおり、「文字コードEUC-JPでは、エントリーの記述内容次第で、再構築後にRSS、Atomに対応しなくなることがあります。」ので、ブログページの質は低下してしまう。

因みに、MySQL 4.0.23 の s104 サーバなどでは、従来どおり 文字コード utf-8 設定可能です。
[重要! 追記 2005/4/24] s101-s150 すべて4.1系 (MySQL4.1.7) のサーバ と表示変更されています (バージョンアップ完了)。
  http://sb.xrea.com/showthread.php?&threadid=4443
s104, s106, s107, s111, s112, s114, s139 では、MySQL Client API version 4.17, かつ 文字コード utf-8 設定可能となっています。ただし、s103、他サーバについては未確認です。

投稿者 mvtp : 2005年01月03日 23:39

トラックバック

このエントリーのトラックバックURL:
trackbacklink 45

このリストは、次のエントリーを参照しています: MySQL 4.1.7 (s101, s102 サーバ) と PublishCharset UTF-8:

» MySQL 4.1 日本語環境設定方法 (キャラクタセット設定方法) from iandeth.
自宅サーバにMySQL4.1を導入するうえで調べた日本語(マルチバイトコード)環境の設定方法をまとめてみました。サーバ環境は RedHatLinux 7.2J ... [続きを読む]

トラックバック時刻: 2005年03月07日 04:28

» MySQL リモート攻撃に対する脆弱性 from 初心者のための自宅サーバーの作り方
2005/3/11 公開された「MySQL AB MySQL Multiple Remote Vulnerabilities」によると、UNIX、Linux、W... [続きを読む]

トラックバック時刻: 2005年04月24日 17:39

コメント

はじめまして。

私は、トラックバックを送信するときに、
「Insertion test failed on SQL error Duplicate entry '29' for key 1」
というエラーがでます。

mt.cfg の230行231行目を見ると、下記の様になっています。
230:PublishCharset utf-8
231:# PublishCharset Shift_JIS

230行目をEUC-JPとすればよいのでしょうか?
これにより何か他の問題は出ませんでしょうか?
ご教授お願い申し上げます。

投稿者 macoto [TypeKey Profile Page] : 2005年01月17日 23:26

MySQL4.1系では、Movable Type の mt.cfg 内(つまり、入出力の)文字コード (PublishCharset) は「EUC-JP」のみとなります。 サーバ管理者 Xrea.com さんの初期設定によるものと思います。
http://as-is.net/blog/archives/000898.html
ここで、RSS,Atom、特に Atom.xml は「EUC-JP」で書かれていると、validity がなくなることがあります。
http://shellscript.biz/archives/000023.html
具体例
http://medqa.net/archives/000019.html
Atom.xml をクライアントPCの Atom Readerが認識しないと、blogツールでページを運用する(近い将来の)最大メリットの1つが失われることになりますので、私は s102サーバの使用を中止しました。Movable Type 管理者であれば、MySQL4.1系(特に、Xrea.comさんの設定)は必須ではないと思います。旧バージョンの templates であったり、エントリー内容次第では、RSS validity にも注意が必要と思います。

投稿者 tips [TypeKey Profile Page] : 2005年01月18日 06:50

コメントしてください

サイン・インを確認しました、 . さん。コメントしてください。 (サイン・アウト)

(いままで、ここでコメントしたとがないときは、コメントを表示する前にこのウェブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)


情報を登録する?




 Modified by Toshiaki YAMAMURA    Powered by Movable Type
 ■シックス・アパート株式会社より「個人用ライセンス」を取得し、Movable Type にて情報提供中です. ■ハンドル名とメールアドレスを入力すると、自由にコメント投稿できます. 但し、15歳未満のお子供は必ず保護者の指導・監督下で行って下さい. ■本ウエブログでは、サイト管理・運営者が著しく不利益と判断するコメントや他人を誹謗中傷するコメントは、直ちに削除いたします.