tsukalogo0000

alt

joomlaバックアップ&再構築

最近バックアップが取れてなかってそろそろローカルで再構築しておこうと思っていたやさき…
今回、ハッカーにサイト攻撃されバックアップに踏み切るきっかけができた(笑)
●単純には、以前書いた通りデータベースのマスターを元のサーバー管理画面から抜き出して、joomlaのファイルはFTP経由で移動させるだけ念のためにちゃんとバックアップされているか確認のためPCのXMAPPコントローラーで一度稼働させプレビューさせて本サーバーに上げて行く。


《joomla!のMEMO》

joomaのインストール(基本作業とMAPPに再構築)
http://ameblo.jp/tsukapiko/entry-10854923259.html

joomlaのPHPベースのMySQLデータをエクスポート&インポート/アメンバー限定
http://secret.ameba.jp/tsukapiko/amemberentry-10855604960.html

XMAPP(MAPP) によるローカル環境にjoomlaを再構築
http://tsukapiko.minibird.jp/index.php/webdesign/joomlacms/180-mampaxampp.html

サイトがハッキングに(対応と処置・joomlaのVerアップ)/アメンバー限定
http://secret.ameba.jp/tsukapiko/amemberentry-11222587023.html


■記載漏れ及び高度な注意点


◎本来joomlaCMSも各ページのリンクは相対パスで自動リンクしていくもんだが一部記事やテンプレート、カスタムモジュール内など、jQuery等、絶対パスで書かないと機能しなかったりする。当然、ローカルで展開したりサーバーが変わるとリンク切れを起こすので入れ変える際、注意が必要。

◎joomla!テンプレートのフォルダ名をオリジナルから任意に変更したらデーターを移行した時に管理画面で上手く認識しない様だ。この事でデフォルテのテンプレートのhtmlとcssが蹴られてスタイルやメニューがバラバラになる。

◎以前にも書いたが、XMAPPをMacのローカルで動かした時にMySQLのみグリーン点灯するがアパッチが稼働しない場合はMac→web共有を切る

●2MB以上のデーターベースを移動する方法


データベースは大抵容量制限がかかっていて、2M以上インポート出来ない。その際、BigDumpダンプ(http://www.ozerov.de/bigdump/)を使うBigDumpは、PHPベースのMySQLインポートツール1つのSQLファイルサイズがかなり大きくても大丈夫なようだが(このサイトは現在約30MB)エクスポートするSQLファイルはいろいろな制約がある。

《1》 BigDumpのダウンロード

BigDumpのページの右にある「BigDump ver. 0.34b (beta) 」をクリック。


《2》 BigDumpの設定

ダウンロードしたアーカイブを展開し中にあるbigdump.phpをドリームウエーバー等のエディタで開き、データベースに接続するための以下の情報を編集します。
// Database configuration。

$db_server = 'localhost';
$db_name = '';
$db_username = '';
$db_password = '';
それぞれの設定内容は次のとおり
  • $db_server:データベースサーバ
  • $db_name:データベース名
  • $db_username:データベースユーザ名
  • $db_password:データベースパスワード
また、文字エンコーディングの設定もある。
// Connection charset should be the same 
as the dump file charset (utf8, latin1, cp1251, koi8r etc.)
// See http://dev.mysql.com/doc/refman/5.0
/en/charset-charsets.html for the full list
// Change this if you have problems with non-latin letters
$db_connection_charset = '';
 
UTF-8を設定する場合は次の文字を挿入。
$db_connection_charset = 'utf8';
$db_connection_charsetの設定はインポート実行で データが文字化けした場合のみこの設定を行う、 データベースを一旦削除・再作成して再実行するといい。 特に書き込まなくてもたいてい問題はないようだが、 取りあえずUTF-8は設定しておいていいだろう。


《3》 bigdump.phpの起動

bigdumpフォルダ(名称任意)内にbigdump.phpとアップロードさせたいdbをディレクトリに入れたらブラウザからbigdump.phpにアクセス、データベースの設定が正しければ次のような画面が表示。


データベースの設定が正しくない場合は次のような表示になる。


《4》 SQLファイルのアップロード

もし、SQLファイルのサイズがそれほど大きくなければ、bigdump.phpを使ったアップロードも可能らしい。アップロードするには、4項で表示されているbigdump.phpのフォームからSQLファイルを選択し、「Upload」をクリック。これでbigdump.phpと同じディレクトリにSQLファイルをアップロードします(この操作ではインポートは実行されない)。


アップロード可能なファイルサイズは、サーバによって上限が異なるらしい。FTPによるアップロード、またはbigdump.phpを使ったアップロード、いずれの場合も、アップロードしたファイルは次のように表示される。


ここでは1ファイルのみですが、複数のSQLファイルをアップロードすればすべて表示される。


《5》 インポート実行

表示されたSQLファイルの一覧にある「Start Import」をクリックすれば、インポートを開始。

次のように表示されればインポート完了。実行ラインやクエリー数、バイト数などが表示される。


インポート完了後、画面下にある「Start from the beginning」をクリックして最初の画面に戻る。
このとき、絶対にブラウザの「戻る」で戻らない事(インポートが再実行される)。 
一覧の右側にある「Delete file」をクリックすれば、サーバ上のSQLファイルを削除し、再実行を防ぐ(削除されないケースもあるらしい)。


※データーベース名が重複しても、エラーが出るので注意が必要。
さらに注意すべき問題として、joomlaを新規インストールすると、データベースを読み込まず、既存のデータベースを一旦消去して、新たにインストールするとデータベースを認識する。


《6》 インポート時のエラーについて

「Start Import」を実行したあと、以下のエラーが発生する可能性がある。


このエラーの原因は、1回にINSERTするときの行数が300行以上ある場合。ファイルサイズの小さいSQLファイルでも、1つのINSERT文に300行以上の内容が含まれていると、このエラーが発生する可能性がる。このエラーを回避するには、phpMyAdminからエクスポートするときに、「作成するクエリの最大長」の値を変更します。minibirdは、デフォルトで50000になっているので、この値を300などに変更してエクスポートこれで1回のINSERT文が300行以内になる。


この値について、例えば10などを設定しても、1つのINSERT文に1レコードの情報が入らなくなるということはない。尚、マスターのデータベースを消去する前に値を変えて
出力をしないとインポート出来ず取り返しがつかない事に…

小粋空間phpMyAdminでインポートできない大きなファイルを一気にインポートできる
http://www.koikikukan.com/archives/2012/04/04-000300.php

phpMyAdminからうまくSQLファイルをインポートできなかったのでBigDumpを試してみた
http://bambooo.jp/tips/1457.html

●バックアップにJoomlaPackを使う。

joomla管理画面のインストールからzipファイルを読み込んでコンポーネントからコンパネを出したら、何も考えずバックアップを押すだけ。




本来は、出力先や圧縮方法などの細かい設定があるみたいだけど、そのままで大丈夫だった。



そしてそのデータを圧縮状態でエクスポートしたら完了。dbデータもすべて格納されているみたい



ただそのままhtdocs=ディレクトリ内にフォルダの中身を移動してもサイトが復元されないーおそらくファイル自体は正確にバックアップされてるのだろうけどなんかのファイル情報が欠損もしくは違っているのだろう…
やはり、ftpから手作業コピーの方が、その都度確認ができるからこの機能は気休め及び応急処置程度で考えていた方がいいだろう。

joomlaの道しるべJoomlaPack - サイトを丸ごとバックアップ
http://www.joomlaway.net/extension-new/70-access-a-security/backup/923-joomlapack.html

Joomla CMSの使い方で困ったら Goyat
http://goyat.info/faq/the-news/120-joompack-warning.html

 

ADD_YOUR_COMMENT

YOURALIAS:
YOUREMAIL:
YOURLINK:
タイトル:
FULLTEXT: