1stレンタルサーバーでデイリーバックアップをcronを使って行ないます。
PuTTYのダウンロード
cronを使うのでsshでコマンドを試してみます。
そのためにssh接続用のソフトPuTTYをダウンロードします。
exe単体で動きますのでインストールは不要です。
下記URLよりputty.exeをダウンロードします。
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
public_htmlのバックアップ
wordpressやWebサイトのファイルはすべてpublic_htmlに保存されています。
sshを使ってバックアップしてみます。
putty.exeを起動してSessionカテゴリーのHost Nameを自分のサーバーIP、Portを2382に設定してOpen。
ログイン入力を促されるのでcPanelと同一のユーザーID、パスワードでログインします。
バックアップします。
前もってWeb Diskを使用してrootフォルダにbackupフォルダとその下にweb、dbフォルダを作成しておきました。
Web Diskの使用方法については下記記事で。
今回はrsyncコマンドを使ってバックアップしたいと思います。
uオプションで差分ファイルのみバックアップするようにします。
1 |
rsync -auv public_html/ backup/web/ |
vオプションを付けると現在コピー中のファイルが表示されます。
処理が完了したらもう一度同じコマンドを流してみます。
PuTTYで上矢印キーを押せば前回実行したコマンドが表示されます。
差分コピーをしているのでこのように何もコピーされずに終了するはずです。
MySqlのバックアップ
こちらもコマンドを使ってバックアップします。
1 |
mysqldump --single-transaction -u {mysqlのアカウント名} -p{mysqlのパスワード} -h {mysqlサーバー名} 対象DB名 > backup/db/出力先.sql |
-pの後はスペースを入れないように注意してください。
これでWebサイトとDBのバックアップが取れました。
今度はこれをデイリーで実行するようにします。
シェルスクリプトの作成
cron実行用のシェルスクリプトを作成します。
1 2 3 |
#!/bin/sh rsync -auv public_html/ backup/web/ mysqldump --single-transaction -u userid -ppassword -h hana87.club dbname > backup/db/dbname.sql |
1行目に#!/bin/shと書いてこれがシェルスクリプトであると宣言します。
後は自分の実行したいコマンドを書けばOKです。
ここで注意するのが改行コードです。1stレンタルサーバーはUnixなので改行コードをLFのみにします。
Windows標準の改行コードはCRLFなのでWindows上で普通にテキストを作ると実行したときにエラーが起きると思います。
また、文字コードはUTF-8(BOMなし)にしてください。
Notepad++であればWindows上でも自由に改行コードや文字コードが操作できるのでおすすめです。
backup.shという名前で保存してrootディレクトリに置きました。
sshでアクセス権を書き換えて実行できるようにします。
1 |
chmod 755 backup.sh |
これでcronの準備が整いました。
cronジョブの設定
cPanelに入り詳細カテゴリーからCron ジョブを選択します。
以下のように設定してデイリーバックアップの完了です。
毎日AM3時にバックアップするように設定しました。
スポンサーサイト
アフィリエイトはエーハチネット
ドメイン取るならお名前.com