バージョン選択

フォーラム

メニュー

オンライン状況

67 人のユーザが現在オンラインです。 (55 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 67
もっと...

サイト内検索

質問 > 管理機能 > データ移行プラグインで日付データが1時間ずれる

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
h_tanaka
投稿日時: 2019/9/13 15:59
対応状況: 解決済
仙人
登録日: 2016/7/22
居住地: 愛媛県
投稿: 907
データ移行プラグインで日付データが1時間ずれる
■移行後
EC-CUBE 4.0.2
データ移行プラグイン 1.5.0
Apache 2.2.34
PHP 7.1.22
MySQL 5.7.23

■移行前
EC-CUBE 2.4.1
Apache
PHP 5.3.3
MySQL 5.1.73-log

移行前と移行後で会員データを比較してみると、登録日と最終更新日が1時間ずれてしまっています。
原因わかりますでしょうか?

■移行前
登録日 2018/01/01 23:27:34
最終更新日 2018/01/01 23:27:34

■バックアップデータCSV
create_date 2018/1/1 23:27:34
update_date 2018/1/1 23:27:34

■移行後
create_date 2018-01-01 22:27:34
update_date 2018-01-01 22:27:34


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

nanasess
投稿日時: 2019/9/14 16:13
対応状況: −−−
登録日: 2006/9/9
居住地: 宝塚
投稿: 1967
Re: データ移行プラグインで日付データが1時間ずれる
移行前のデータベースと、移行後のデータベースでタイムゾーンに差があるとか、時計がずれているとかではないでしょうか?


----------------
大河内健太郎(Kentaro Ohkouchi)
EC-CUBE公式エバンジェリスト
スキルニル株式会社

EC-CUBE1系2系長期サポートホスティングサービス CUBE Lab
https://cubelab.info/

h_tanaka
投稿日時: 2019/9/14 16:30
対応状況: −−−
仙人
登録日: 2016/7/22
居住地: 愛媛県
投稿: 907
Re: データ移行プラグインで日付データが1時間ずれる
nanasess さん

移行前のphpMyAdminと移行後のphpMyAdminで SELECT NOW() を実行してみましたが、まったく同じ時刻でした。


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

h_tanaka
投稿日時: 2019/9/14 17:57
対応状況: −−−
仙人
登録日: 2016/7/22
居住地: 愛媛県
投稿: 907
Re: データ移行プラグインで日付データが1時間ずれる
PHPのtimezoneはどちらもAsia/Tokyoで一緒でした。


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

h_tanaka
投稿日時: 2019/9/14 18:02
対応状況: −−−
仙人
登録日: 2016/7/22
居住地: 愛媛県
投稿: 907
Re: データ移行プラグインで日付データが1時間ずれる
どちらのサーバーで現在時刻出力しても同じ時刻が出力されました。
echo date('r',time());


他に考えられる原因なんでしょう。。?


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

h_tanaka
投稿日時: 2019/9/18 9:39
対応状況: −−−
仙人
登録日: 2016/7/22
居住地: 愛媛県
投稿: 907
Re: データ移行プラグインで日付データが1時間ずれる
自己解決しました。

app/Plugin/DataMigration4/Controller/Admin/ConfigController.php
の convertTz() 内をデバッグしてみて原因に気づきました。
DateTimeZone が Europe/Berlin になっていました。
    // タイムゾーンの変換
    // ECCUBE_TIMEZONE= への対応
    private function convertTz($em, $datetime)
    {
        if ($datetime === 'NULL') {
            return null;
        }
dump($datetime);

        $date = new \DateTime($datetime, new \DateTimeZone(ini_get('date.timezone')));
dump($date);    // ★ Europe/Berlin (+02:00) だった
        $date->setTimezone(new \DateTimeZone('UTC'));
dump($date);
dump($date->format($em->getDatabasePlatform()->getDateTimeTzFormatString()));
die;

        return $date->format($em->getDatabasePlatform()->getDateTimeTzFormatString());
    }


改めてシステム情報設定を確認したところ、次のようになっていました。
Default timezone Asia/Tokyo
date.timezone Europe/Berlin

Default の方を見てしまっていました。。
すみません。。

php.ini の設定を変更してAppachを再起動することで時間のずれがなくなりました。
;date.timezone = "Europe/Berlin"
date.timezone = "Asia/Tokyo"


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

ec-cube.co

統計情報

総メンバー数は49,431名です
総投稿数は93,180件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
1967
4
468
1818
5
yuh
1602
6
red
1342
7
umebius
1296
8
fukap
907
9
h_tanaka
907
10
tsuji
856
11
shutta
835
12 ramrun 789
13
tao_s
774
14 karin 656
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 436


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.