OneThird CMSでは、ホームページ用途だけではなくWebアプリケーションのプラットフォームとしてもご利用いただけます
そのために、数万に及ぶデータをMySQLのGUI操作なしでバックアップできるように設計されています
※ 数万のデータを扱う場合、あるいは不特定多数のユーザーが同時に書き込む可能性がある場合は必ず、MySQLをお使いください(SQLiteは使用しないでください)
バックアップを行うためには、システムメニューから「バックアップツール」を選択してください
バックアップ方式には、以下の種類があります
1) Zip-backup
2) Program-backup
3) Image-backup
4) User-backup
5) SQLite-backup
Zip-backupは一番汎用性があるバックアップ方式です
データベース中のデータレコードを一旦配列に吸い上げて、それをシリアライズ後Bace64でエンコードしてZIP圧縮します
データは、ajaxを使いデータの若い順に順番に保存していきます
保存中はプログレスダイアログが表示されいつでも中断することができます
中断した後、再度Zip-backupを実行すると続きから実行されます
一旦、全アイテムをバックアップした後は、その後追加されたアイテムを差分だけバックアップすることも可能です
さらに、ZIPファイルを展開して、サーバーに戻しても通常どおりリストアすることができます
その時、ZIPファイル内部のファイルは番号別に整理されていますので、必要ファイルだけ残して個別バックアップすることも可能です
差分バックアップ以外に、リストアとインポートが行えます
リストアは、では他レコードのIDを変えずに、そのまま上書きします
インポートでは、IDを新しく振り直し複製します
テーマや、プラグインのデータを纏めてバックアップします
具体的には、
インストールフォルダ/files/1/data
インストールフォルダ/files/1/plugin
以下のファイル群をzip圧縮してバックアップします
このバックアップでは、フォルダ内のファイルサイズを考慮しません、フォルダ内のファイルの合計サイズが極端に大きい場合、バックアップできないなどの問題が発生する事があります
その場合はFTPにてバックアップを行ってください
アップローダーを使ってアップロードした画像データ、ファイル添付プラグインでアップロードしたファイルなどをバックアップします
具体的には、
インストールフォルダ/files/img
以下のファイル群をzip圧縮してバックアップします
ファイルサイズは、デフォルトで2Mバイトごとに圧縮されます
「Image-backup」ボタンをクリックするとファイルをバックアップしますが、2Mを超える場合は、バックアップが一旦終了します
全てのファイルがバックアップされるまで繰り返し「Image-backup」ボタンをクリックしてください
ユーザーのバックアップを個別に行います
このコマンドは、ユーザーIDと名前の関係を検証せずに無条件(IDベースで)リストアします
例えば、ベースとなるサイトデータに他のサイトのデータをインポートした場合、ユーザーIDが異なります
そういった場合、ページオーナーの不整合が発生したり、思わぬ不具合を発生する可能性があります
SQLiteバックアップではユーザーデータもそのまま引き継げますので、できる限りそちらを利用してください
SQlite-backupは、SQLiteを使って、データをフルバックアップします
メリットとしては、ここでバックアップしたデータをそのままリネームして、テスト環境で動作しているSQLiteで初期化したOneThird CMSに上書きコピーするとそのまま動作させることができます
マルチサイトや、ユーザーデータそのままコピされます
デメリットとしては、SQLiteが使えない環境ではバックアップできないことと、あまり大量のデータはエクスポートできないという点が上げられます