データベースのバックアップとリストア

CS-Cart は、データベースのバックアップの作成と復元ができます。

データベースのバックアップは、定期的に作成することで、何か問題が発生した場合に、いつでもECサイトやマーケットプレイスサイトを以前の状態に戻す事ができます。

ECサイトやマーケットプレイスサイトをバックアップするには、データベースをバックアップするだけでは不十分です。画像などの一部の情報は、CS-Cart や CS-Cart Multi-Vendor のさまざまなフォルダに保存されます。ただし、バックアップにファイルを含めることができる設定があります。

データベースのバックアップ

データベース バックアップは、DBダンプとも呼ばれます。

管理画面の上部メニューから「一般設定 > バックアップ/リストア」をクリックします。

バックアップ/リストア
バックアップ/リストア

右上の「+」ボタンをクリックします。

ポップアップウィンドウが開き「バックアップの作成」画面になるので、以下の項目を設定します。

  • ファイルのバックアップ:バックアップにECサイトやマーケットプレイスサイトのファイルを含める場合には、このチェックボックスをオンにします。チェックボックスをオンにしなかった場合は、DBダンプを含む SQL ファイルのみが含まれます。画像などは、CS-Cart や Multi-Vendor のさまざまなフォルダに保存されます。ECサイトやマーケットプレイスサイトを完全にバックアップする場合は、必ずファイルもバックアップしてください。
  • データをバックアップ:チェックボックスにチェックを入れると、バックアップにはデータベースのデータそのものが含まれます。通常、特別な理由がない限り、このオプションは有効にする必要があります。
  • テーブルを選択:バックアップに含めるデータベース・テーブルのリスト。デフォルトでは、cscartプレフィックスが付いたテーブルがリストで選択されます。複数のテーブルを選択するには、 CTRL キーかSHIFTキーを押したまま選択をします。
  • バックアップのオプション:チェックボックスにチェックを入れる、バックアップにはデータベースのテーブルのスキーマ(構造)が含まれます。通常、特別な理由がない限り、このオプションは有効にする必要があります。
    • データをバックアップ:チェックボックスにチェックを入れると、テーブル内のデータレコードをバックアップします。
  • バックアップ ファイル名:バックアップファイルの名前を指定してください。拡張子は.sqlになります。

右下の「登録」ボタンをクリックすると、バックアップファイルが生成されます。

システムは、バックアップ作成の進行状況を表示します。

バックアップが完了すると、管理画面の上部メニューの「一般設定 > バックアップ/復元リストア」に生成されたバックアップファイルが表示されます。

バックアップ名をクリックするか、マウスを載せると表示される「歯車」ボタンを押してプルダウンメニューを開き、「ダウンロード」 を選択すると、バックアップファイルをローカルにダウンロードできます。

「バックアップ/リストア」に表示されるバックアップファイルは、CS-Cart のvar/backupsディレクトリに保存されています。

データベースをバックアップから復元する

データベースをバックアップから復元するには、以下の手順を実行します。

管理画面の上部メニューから「一般設定 > バックアップ/リストア」をクリック。

バックアップ/リストア
バックアップ/リストア

「バックアップ/リストア」に表示されるバックアップファイルは、CS-Cart のvar/backupsディレクトリに保存されています。

右上にある「歯車」ボタンをクリックし、プルダウンを開いて「ファイルのアップロード」を選択。

ファイルのアップロード
ファイルのアップロード

復元するバックアップファイルの場所を指定します。

  • ローカル(自分のマシン)
  • CS-Cart がインストールされているサーバ
  • リモートの場所(バックアップに直接アクセスするURLを指定)

右下の「アップロード」ボタンをクリック。

デフォルトのディレクトリのvar/backupsにバックアップファイルがある場合は、リストからファイルを選択することもできます。

復元するバックアップファイルにマウスを載せると表示される「歯車」ボタンを押してプルダウンメニューを開き、「リストア」を選択します。

データベースを復元すると、既存のデータベーステーブルが上書きされます。

バックアップからECサイトやマーケットプレイスサイト全体を復元する場合は、ファイルに書き込み権限があることを確認してください。

コンソール経由でストアをバックアップ

この機能は、バージョン 4.8.2 で初めて登場しました。

CS-Cart や CS-Cart Multi-Vendor のバックアップは、コンソール経由でも作成ができます。

この方法には 2つの利点があります。

  1. 管理画面からバックアップの設定を手動で指定する必要はありません。コマンドを一度準備すれば、バックアップを作成する必要があるたびにサーバ上のコンソールで実行するだけです。
  2. このコマンドは、 cronまたはその他のタスク スケジューラに追加できます。こうすることで、バックアップを自動的に (たとえば、1日に1回) 作成できるようになります。

ファイルとデータベースを含むECサイトやマーケットプレイスサイトの完全バックアップを作成するコマンドは次のとおりです。

php /path/to/cart/admin.php --dispatch=datakeeper.backup --p --backup_database=Y --backup_files=Y --dbdump_tables=all --dbdump_data=Y --extra_folders[]=var/files --extra_folders[]=var/attachments --extra_folders[]=var/langs

/path/to/cart を、サーバ上の CS-Cart やCS-Cart Multi-Vendor の実際のパスに置き換えてください。

パラメータ説明
pこのパラメータは、コントローラ ( dispatch=datakeeper.backup) が他のすべての POST パラメータを受け入れるために必要です。
backup_databaseデータベースのバックアップを作成するかどうかを決定します。Y-はい、N-いいえ。
backup_filesファイルをバックアップするかどうかを決定します。Y-はい、N-いいえ。
dbdump_filenameデータベースのバックアップが含まれる SQL ファイルの名前。パラメーターが指定されていない場合は、バックアップ作成日が名前として使用されます。
dbdump_tables[]バックアップする必要があるテーブルを含む配列。すべてのテーブルをバックアップする場合は、allパラメータを渡します。
dbdump_schemaデータベース スキーマをバックアップするかどうかを決定します。Y-はい、N-いいえ。
dbdump_dataデータベースからデータを保存するかどうかを決定します。Y-はい、N-いいえ。
extra_folders[]バックアップが必要な非標準ディレクトリ (デフォルトでは CS-Cart や CS-Cart Multi-Vendor に存在しない) を含む配列。ECサイトやマーケットプレイスサイトがインストールされているディレクトリからのフルパスを指定します。
compress (必須ではありません)アーカイブ形式。デフォルトでは ZIP が使用されます。TGZ アーカイブが必要な場合は、 tgzを渡します。
pack_name (必須ではありません)ファイルとデータベースのバックアップが含まれるアーカイブの名前。指定しない場合は、デフォルトの名前が使用されます。

たとえば、cscart_productsすべてのデータを含むテーブルと、var/langsおよびvar/attachmentsディレクトリをバックアップするコマンドは次のとおりです。

php /path/to/cart/admin.php --dispatch=datakeeper.backup --p --backup_database=Y --backup_files=Y --dbdump_tables[]=cscart_products --dbdump_data=Y --extra_folders[]=var/langs --extra_folders[]=var/attachments