mysql:14198
From: Shinichi Yoshimura <Shinichi Yoshimura <info@xxxxxxxxxx>>
Date: Thu, 13 Sep 2007 14:06:14 +0900
Subject: [mysql 14198] Re: MySql3.23.58でdump時に「'」が文字化け
金子 様 お世話になっております。 教えていただいた方法でテストしたところ、 正常に復元を行うことができました。 ありがとうございます。感謝です。 Duplicate entry 'number' for key number 途中、上記のエラーが発生しましたが、auto_increament を無効にすればエラーが出なくなりました。 皆様の参考になればと思います。 On Thu, 13 Sep 2007 10:24:30 +0900 "Kensuke Kaneko" <kyanny@xxxxxxxxxx> wrote: > こんにちは。金子と申します。 > > mysqldump の -T オプションは試されましたか? > > http://dev.mysql.com/doc/refman/4.1/ja/mysqldump.html > > mysqldump -T /tmp/mysqldump_`date +%Y%m%d` foobar > > 区切り文字が問題になっているなら、区切り文字の入らないこの方法で回避できると思います。 > > SELECT INTO OUTFILE や LOAD DATA INFILE の構文も参考になさってください。 > > http://dev.mysql.com/doc/refman/4.1/ja/select.html > http://dev.mysql.com/doc/refman/4.1/ja/load-data.html > > > 07/09/13 に Shinichi Yoshimura<info@xxxxxxxxxx> さんは書きました: > > こんばんは。 > > 過去ログを検索させていただきましたが、 > > 見当たらなかったので、質問させていただ > > きました。 > > > > □サーババージョン > > PHP 4.3.2 > > mysql Version 3.23.58 > > MyISAM > > EUC-JP > > > > MYSQLでDUMPを行うと、 > > 「'」の区切り文字で文字化けが発生するため、 > > リストア時にエラーが発生します。 > > > > これらの問題が行っているレコードの > > 特徴として、入力チェックが不十分なため、 > > Varcharフィールドの最大バイト数をオーバー > > したレコードのようです。 > > > > 文字コードの知識はあまり豊富では > > 無いのですが、EUC-JPの2バイト以上の文字が > > 途中で切れてしまっているのでは?と考えて > > います。 > > > > ※念のため以下のテストを行ってみました。 > > テスト用レコード、Varchar(5) に5以上の漢字を > > INSERTしたところ、最後の文字が文字化。 > > MYSQL4.1以降では自動的に調整されました。 > > > > かなりのレコード数がありますので、 > > なんとかスマートに解決したいのですが、 > > 良い方法、DUMPオプション等がありましたら > > 教えていただけると助かります。 > > > > どうぞ、よろしくお願い致します。 > > > > > > > > > > > -- > Kensuke Kaneko <kyanny@xxxxxxxxxx> > > -- トレードブック <info@xxxxxxxxxx>
14196 2007-09-13 01:28 [Shinichi Yoshimura <] MySql3.23.58でdump時に「'」が文字化け 14197 2007-09-13 10:24 ┗["Kensuke Kaneko" <ky] -> 14198 2007-09-13 14:06 ┗[Shinichi Yoshimura <] 14200 2007-09-13 18:17 ┗["Kensuke Kaneko" <ky] 14206 2007-09-15 07:44 ┗[Shinichi Yoshimura <]