4

MYSQLがバックアップされていない可能性のある本番サーバーがあります。問題のインスタンスには、ファイルを永続的に保存しているEBSでバックアップされたルートデバイス(/ dev / sda1)があります。MYSQLデータとバイナリログファイルが自然に永続的に保存されているかどうかはわかりません。

ルートにマウントされている場合はそうする必要がありますか?そう思います。

代わりに、別のボリュームを接続してマウントしてから、MYSQLサーバーを新しい場所に向ける必要がありますか?

私のコマンドは次のようになります(さらに、スナップショットの作成中にMYSQLテーブルをロックします)

    sudo mkdir /vol/etc /vol/lib /vol/log
    sudo mv /etc/mysql     /vol/etc/
    sudo mv /var/lib/mysql /vol/lib/
    sudo mv /var/log/mysql /vol/log/

    sudo mkdir /etc/mysql
    sudo mkdir /var/lib/mysql
    sudo mkdir /var/log/mysql

    echo "/vol/etc/mysql /etc/mysql     none bind" | sudo tee -a /etc/fstab
    sudo mount /etc/mysql

    echo "/vol/lib/mysql /var/lib/mysql none bind" | sudo tee -a /etc/fstab
    sudo mount /var/lib/mysql

    echo "/vol/log/mysql /var/log/mysql none bind" | sudo tee -a /etc/fstab
    sudo mount /var/log/mysql 

私はシステム管理者の専門家ではないので、既存のデータベースを台無しにしたくありません。ここにリスクはありますか?ここで追加のデバイスを気にする必要がありますか、それとも組み込みのルートデバイスをそのまま使用する必要がありますか?

4

3 に答える 3

7

/ etc/mysqlおよび/var/ lib / mysqlディレクトリをEBSに移動し、以前の場所にシンボリックリンクを作成しました。

そうすれば、構成ファイルを変更したり、ファイルが見つからないことを心配したりする必要がありませんでした。

/ etc / mysqlも移動した理由は、EBSを別のインスタンスに接続した場合に構成ファイルとメンテナンススクリプトが失われないようにするためです。

そのデータのバックアップについては、別のインスタンスを作成し、マスター/マスター構成を作成して、フェイルオーバーのメリットも享受できるようにするのが最善です。

于 2011-05-26T19:56:57.827 に答える
3

データの永続性が心配な場合:

/ dev / sda1のスナップショットを作成し、完全に別のインスタンスを作成し(t1.microはこれに最適です)、/ dev / sda1のスナップショットに基づいて新しいボリュームを作成し、その新しいボリュームを新しい別のインスタンスにマウントします?データが新しいボリュームに存在する場合、データは間違いなく/ dev/sda1のEBSに保存されています。

そうは言っても、多くのデフォルトのLinuxイメージは、インスタンスが終了したときにルート(/ dev / sda1)ボリュームを自動的に終了するように設定されています。意味:インスタンスを失った場合、他の場所にバックアップしていないと、ボリューム上のすべてのデータも失われます。バックアップを保持する簡単な方法は、EC2機能を使用してボリュームのスナップショットを毎日取得することです。スナップショットを取得し、新しいスナップショットが完了すると、古い毎日の定期的なスナップショットを削除するスクリプトを作成するのは非常に簡単です。より小さなバックアップサイズまたは増分バックアップ戦略を探している場合は、代替のアベイラビリティーゾーンまたはリージョンでt1.microを起動するより高度なスクリプトを記述し、任意のメカニズムを介してMySQLデータのみに対してバックアップを実行できます。 t1.microインスタンスをシャットダウンします。

于 2011-05-26T19:32:31.570 に答える
2

インスタンスを停止すると、通常のシャットダウンと同様になり、EBSボリュームはすべてのデータとともに保持されます。インスタンスを終了すると、スナップショット以降のすべてのデータが失われると思います。

しかし、通常、私はそれを終了する理由はあまりありません。いずれにせよ、テストインスタンスで試すのは簡単なはずです。いくつかのファイルを作成して、さまざまなユースケースで何が起こるかを確認できます。

このようにして、誰かの答えに頼るよりもはるかに安全だと感じるでしょう。

于 2011-05-26T19:32:55.690 に答える