EC-CUBE 郵便番号 DB 止まる

郵便番号DB登録の画面



郵便番号をデータベースに登録しようとするとゲージが途中で止まってしまい、
調べてみると何度もリロードすればいけるとの事でしたが、同じ場所で止まるので、
更に調べた結果、無事登録が完了して正常に動作する事が確認出来ました。

環境
さくらサーバー スタンダード
EC-CUBEバージョン 2.11.4
PHPバージョン PHP 5.2.17
DBバージョン MySQL 5.5.15-log

郵便番号の入力補助を使う為、最初に設定が必要になりますが、
データベースに10万行以上のデータを入れ込む為、
途中で自動登録では接続がタイムアウトする場合が多いようです。

郵便番号DB登録の画面
一般的な手順としては、

DB削除>郵便番号CSV更新>自動登録>手動登録

となりますが、自動登録でタイムアウトする場合、
1行目から手動登録を行なっていき、タイムアウトした際に、

> 郵便番号CSVには 123194 行のデータがあります。
> 郵便番号DBには 52185 行のデータがあります。

といった風に表示されている場合、
DB手動登録には「開始行:52186行目」と表示されていますので、
そのまま再度手動登録を実行すると、引き続き登録が行われます。

これを繰り返して完了まで進めて、CSVとDBの行数が揃えばOKです。
自動登録や手動登録をリロード等によって繰り返していた場合、
CSVよりDBの行数が遥かに多くなっている場合があります。
その際は、DB削除から一度全てクリアにしてから再度登録すると良いです。

このCSVデータはFTP上では、Shift-JIS形式とUTF-8形式があります。
data/downloads/KEN_ALL.CSV
data/downloads/KEN_ALL_utf-8.CSV

こちらのデータの最新版は日本郵便全国一括からダウンロード出来ますので、
手動で置き換えて、テキストエディタでShift-JIS版とUTF-8版をそれぞれ用意しても良いようですが、
「郵便番号CSV更新」から取得したデータとファイルサイズを見比べてみても同じだったので
普通にこのボタンから更新するだけで大丈夫でした。


> 通常は、[自動登録] を利用してください。
> ただし、タイムアウトしてしまう環境では、タイムアウトした後に [手動登録] を正常に完了するまで繰り返してください。

という管理画面のメッセージを難しく解釈してしまっていましたが、
DBとSCVの行数が合えば正常といった感じでした。



コメントをする

メールアドレスが公開されることはありません。