Xrea&Coreserver レンサバMySQLに巨大なCSVファイルを読み込ませる方法

先日、600MBほどの、かなり大きなCSVファイルのデータを、レンタルサーバーのMySQLに読み込ませる作業を行いました。

小規模のデータなら、phpMyAdminを利用すれば、簡単にアップロードできるのですが、今回の規模のデータだと、余裕でタイムアウトしてしまいます。

SSHで接続して、mysqlコマンドで読み込ませたら、数十秒で終わってしまいました。

CSVファイルの中身は商品データ。500万ほどのレコードがあります。

phpMyAdminで読み込めるのはせいぜい数十MBまで。SSHでサーバーに接続して、mysqlコマンドで試すことに。

まず最初に、読み込ませたいCSVファイルを、ファイル転送アプリでサーバーにアップロードしておきます。

そうしたら、SSH接続を。CORESERVERの場合は、管理画面から事前にセットしておく必要があります。

詳しいページを参考に。

コアサーバーでSSHやsftp接続を行う方法

私はMacなので、ターミナルでログインしてしまいます。WindowsならTeraTermあたりかな。

でSSH接続

でDB接続

mysqlコマンドでCSVファイルを流し込みます。

サーバー上で直接MySQLを操作すれば、20秒くらいで終了しました。速い!

phpMyAdminだとネット転送しながらですし、ウェブを通してDBを操作するので、遅いんでしょうね。

大量データーを、レンタルサーバーで取り扱いしたいときに、参考にしてください。

コメント

タイトルとURLをコピーしました