■WEBコンテンツバックアップ
障害対策サーバからsftpする
sftp -oPort=sshポート番号 webサーバのIP
パスワードを聞かれるので、入力。
sftp>
となればOK.
webサーバ事前作業として、
コンテンツをtarで圧縮。
シェルを組んだ。
#!/bin/sh
TargetDir=”/home/”
BackupDir=”/root/backup/”
cd $TargetDir
TarFileName=`date +%Y%m%d`.tar.gz
tar zvcf $TarFileName ./*
mv -f $TarFileName $BackupDir
で、圧縮。
これをcronで実行させれば定期的にバックアップできる。
あとは、世代管理のルールを考えればいいと思っている。(3世代まで保存。あとは削除するスクリプト作成中)
■メール情報バックアップ(postfixadmin)
# su – postgres
$ cd /var/lib/pgsql/dump
$ pg_dump postfix > ./バックアップの日付_bk_postfixadmin
■クライアント提供用DBバックアップ(Mysql,Postgresql)
1Mysql
# mysqldump –all-databases -uroot -pパスワード > 090603_bk_mysql(例)
2,Postgresql
# su – postgres
$ pg_dumpall -c > ./090603_bk(例)
■それぞれ反映。
(1)mysql
一端、既にあるデータベースを削除する。
mysql コマンドでデータベース、ユーザアカウントを全削除する方法がわかんなかった・・・・
ので、とりあえずphpMyAdminで、root権限アカウント以外を削除。
んで、反映させる。
■反映
1)WEBコンテンツ
先ほどのtar圧縮したファイルを/home/以下ディレクトリに、パーミッションを保持したまま解凍。
# tar -zxvf バックアップファイル -C /home/
で、解凍。
2)mysql
# mysql -u root -pパスワード < バックアップファイル
で、ユーザアカウントもデータベースも反映できた。
それで、サービスの再起動。
# service mysqld restart
とりあえずこれで、WEBからmysqlに接続できたのでOKとしておこう.
3)postgres
# su – postgres
$ psql postgres(存在しているDB名ならなんでもよい) < バックアップファイル
このページを共有する