複数ファイル・大容量ファイルを転送には圧縮を使う

サーバー間で引っ越しで、データを移動させようして、エラーが起きてうまかないことはありませんか?

  • 一部のデータが足りない。
  • 途中で通信がきれてうまく転送できない。

ファイル数・データの容量が大きデータをそのまま移動させようとすると、結構な確率でエラーが発生します。
データを移動させる前にサーバー上に1ファイルに圧縮するとデータ移動がうまくいきます。

大量のファイル・データの容量が大きいファイル移動はエラーが起こりやすい。

WorsPressの引っ越しのような、ファイル数もデータの容量も大きいファイルをそのまま移動するのは、とても非効率で転送速度も遅く、エラーも多い方法です。

ファイルを移動する前に圧縮する

エラーなく大きなファイルを移動せるために、
一番大事なポイントは、データを移動させる前にサーバー上で1ファイルに圧縮するとうまくいきます。

大量のファイル・データの容量が大きいファイルを転送する手順

パターン別でファイル移動の流れを紹介します。

ローカル上のファイルをサーバーにアップロードする場合

1.ローカルのファイルを1つに圧縮(.tar.gz、zip等)する
2.圧縮した状態のファイルをサーバーにアップ
3.サーバー上で展開

サーバー上のファイルをローカルダウンロードする場合

1.サーバーにSSH接続する
2.サーバー上のファイルを1つに圧縮(.tar.gz、zip等)
3.圧縮した状態のファイルをダウンロード
4.ローカル上で圧縮ファイルを展開

サーバーAからサーバーBに移動する場合

ローカルPCを介さなくとも直接サーバー間でデータを移動させることができます。
ただし、その場合は両サーバーとも「SSH接続」できることが条件です。
レンタルサーバーによっては制限があるため、SSH接続できるレンタルサーバー・プラウンなのか事前に確認が必要です。

1.サーバーAにSSH接続後、ファイルを1つに圧縮(.tar.gz、zip等)
2.scpコマンドでサーバーAからサーバーBにWordPressファイルを移動
3.サーバーBにSSH接続後、圧縮ファイルを展開する

SSHログインができないサーバーでファイルを展開するには?

SSHが使えないサーバーでzipファイル解凍場合は、以下のファイルをおき展開します。

zip_open.php

<?php
$zip = new ZipArchive;
$res = $zip->open('ファイル名.zip');
if ($res === TRUE) {
 $zip->extractTo('./');
 $zip->close();
 echo 'success';
} else {
 echo 'failed';
}
?>

最後に

 

ネットワーク関係のことを少しでも知っている人にとってもみれば、大きなデータを圧縮した上で移動させるのは常識です。
しかし、レンタルサーバーのヘルプページをみても、圧縮してから移動する方法は書かれていません。
レンタルサーバーの利用ユーザーはコマンド操作にはSSH接続には詳しくないユーザーが多いため、あえて、記載していないのかもしれません。