MySQLdumpファイルを別サーバーにSSH&CRONで定期バックアップ

MySQLのdumpファイルを、別サーバーにSSHとCRONで定期バックアップします。そして一週間後からのファイルは削除するようなスクリプトを組みます。

環境はCentOS:6.2、MySQL:5.5.23です。

  • Aサーバー:MySQLのデータ元(example.com)
  • Bサーバー:バックアップ用サーバー(example.jp)

Aサーバーでバックアップ用のユーザー作成。

[root@localhost ~]# useradd {ユーザー名}

ssh公開鍵をBサーバーにインストールします。

Aサーバー側でSSH公開鍵をつくります。

[root@localhost ~]# su - //まずrootになります。
[root@localhost ~]# su - {ユーザー名} // 次にバックアップユーザーになります。
//キーの作成
[{ユーザー名}@localhost ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/{ユーザー名}/.ssh/id_rsa):[Enter]
Created directory '/home/{ユーザー名}/.ssh'. [Enter]
Enter passphrase (empty for no passphrase): [Enter]
Enter same passphrase again: [Enter]
Your identification has been saved in /home/{ユーザー名}/.ssh/id_rsa.
Your public key has been saved in /home/{ユーザー名}/.ssh/id_rsa.pub.
The key fingerprint is:
フィンガープリント {ユーザー名}@{ホスト名}
[{ユーザー名}@localhost ~]$ exit
[root@localhost ~]# cd /home/{ユーザー名}/.ssh
[root@localhost .ssh]# vi id_rsa.pub

id_rsa.pubの内容が公開鍵になりますのでコピーしてバックアップ先のBサーバーにインストールします。

次の設定はBサーバーのものです。

[root@localhost ~]# useradd {ユーザー名} //同じくバックアップユーザーを作成。

.sshフォルダを作ります。

[{ユーザー名}@localhost ~]$ ssh -p sshのポート番号 localhost

次にキーのコピーです。

[{ユーザー名}@localhost ~]$ cd /home/{ユーザー名}/.ssh
[{ユーザー名}@localhost .ssh]$ vi authorized_keys //公開カギを貼り付けます。
[{ユーザー名}@localhost .ssh]$ exit
[root@localhost ~]# chmod 600 /home/{ユーザー名}/.ssh/authorized_keys

“MySQLdumpファイルを別サーバーにSSH&CRONで定期バックアップ” の続きを読む