もう10年以上前に、知人の依頼で作ったオンプレの業務システム、今日まで頑張って使ってきたが、herokuに新システムを作ったので移行することにした。
ところが、データ移行作業で困ってる。100万件はくだらないレコード数がある。
herokuにビルトインされたポストグレス(HobbyBasic、月額1000円)にデータを移行するんだが、普通にコマンドで実行するしかないんだろうか。
\i import.sql で入れると、1秒で約50レコードしか入らない。100万レコード入れ終わるのに約6時間かかる。もっといい方法がありそうなんだが、見つからない。
作業の流れ(備忘録)
1.SQLite(旧システム)の .dbファイルをDBBrowserで開き、insert文で全体をエクスポート
2.ファイルをサクラエディタで開き、ファイル保存時にSJISへ変更。
3.ファイルを15個のファイルに機械的に分割する。(div8という謎のソフトの力を借りた)
4.これらのファイルを、\i コマンドでheroku postgresqlに投入。今回の作業の性質上、順不同でながせるため、15個のコンソールに対して実行。
insertの速度は、約 50行/秒。ちょっと遅い。