MediaWiki のお引越し手順
以下の手順は、同じデータベース名、同じフォルダで MediaWikiを引っ越しさせたときの 手順です。つまりバックアップをリストアするのと変わらない一番無難な引っ越し方法です。
名前の異なるDBへ, 異なるフォルダへの引っ越しは今後の課題ということで(^^; とりあえず、確実な手順を確立してみました。
目次
バックアップ
MediaWikiのバックアップは
- MySQLのデータのバックアップ
- MediaWikiのファイルのバックアップ
で行います。
以下の説明では MediaWiki の使っている MySQL のユーザ名は nakamuri, データベース名は tknotebook、 MediaWiki がインストールされている場所は /var/www/html/mw というディレクトリであるとします。
apacheの停止
service httpd stop
で外部からのアクセスを止めます。
DBのバックアップ
データベースのバックアップは mysqldump というコマンドで行います。
mysqldump -u DBユーザ名 -p DB名 > 出力先ファイル名
この例ではデータベース名が tknotebook なので
mysqldump -u root -p tknotebook > tknotebook.sql
ファイルのバックアップ
ファイルのバックアップも簡単です。
まず、MediaWiki のディレクトリの一つ上のディレクトリ(/var/www/html)に移動します。
cd /var/www/html
MediaWiki のディレクトリ配下を tar で固めます。
tar czvf tknotebook.tar.gz mw
こうして取得できたファイルとDBは ftp や scp 等で吸い上げればよいでしょう。
apacheの起動
最後に apache を再起動します。
service httpd start
リストア
apache停止
引っ越し先でapacheが既に動いているなら止めます。
service httpd stop
データベースとユーザ作成
引っ越し先にはユーザとまっさらなデータベースを用意します。 既に必要なユーザがある場合はユーザを作り直す必要はありませんが、データベースは作り直した方が楽でしょう。 その場合、ユーザに権限を与えなおすのを忘れずに。
mysql -u root -p
で MYSQL に接続して
既にデータベースがあるなら、いったん削除してください。
drop database tknotebook;
データベースを新規作成
create database tknotebook;
必要ならばユーザを作成してください。これは MediaWikiが使っているユーザ名です。もし違う名前を使うなら後で LocalSettings.php の書き換えが必要です。
create user nakamuri identified by 'パスワード';
tknotebookの権限を全て与えます。
grant all on tknotebook.* to nakamuri;
いったん mysql を抜けて
mysql -u nakamuri -p
でログインでき、tknotebook にアクセスできるか試してみてください。
ファイルの転送
バックアップファイルを引っ越し先にコピーする方法は様々ですが、 ssh+Teratermの場合は以下の手順が便利でしょう。
- TeraTermで root で接続し、画面に バックアップ.sql(MySQLのバックアップ) と バックアップ.tar.gz(MediaWikiのファイルシステムのバックアップ)をドロップしてroot のホームにファイルを転送します。
- 転送したバックアップファイルはさらに Linux 側で /var/www/html へ移動します。
バックアップファイルからファイルとデータを復元
カレントディレクトリを /var/www/html に移動し、
tar xzvf バックアップ.tar.gz
オーナとグループを apache に変更
find mw -exec chown apache {} \; find mw -exec chgrp apache {} \;
DBのデータベースをリストア
mysql -u root -p tknotebook < tknotebook.sql
サーバ名の変更
引っ越しでサーバ名が変わる場合は LocalSettings.php の変更が必要です。
$wgServer = "http://www.nakamuri.info";
の部分を書き換えてください。
Apacheの起動
最後に apache を起動します。
service httpd start
確認
MediaWikiにアクセスして、無事復元されていることを確認してください。