サーバーのRAID 1 - ミラーリングされたドライブのファイルが必要です。

サーバーのRAID 1 - ミラーリングされたドライブのファイルが必要です。

約3年前、私は医療機関用のUbuntuサーバーをインストールしました。 RAID 1(ソフトウェアRAID)用にHDD 2個を設定しました。RAID設定

今日、彼らは突然mySQLデータベースの1つのテーブルへのアクセスを失いました。

ミラーリングされた(バックアップ)HDDからmySQLデータベースを復元する方法は?

答え1

ミラーリングは単一ドライブ障害に対する保護です。 これはバックアップを置き換えません。 RAID-1がデータベースにアクセスできない場合、単一のディスクでもアクセスできません。

唯一の方法は、データベース全体を別々の2つのディスク(コピー2枚を含む)にコピーし、ddrescue個々のディスクのSMARTデータを使用して分析し、必要に応じて新しいディスクをインストールし、(新しい?)ディスクをフォーマットし、最新のバックアップを作成します。を復元することです。コピーの1つから元のデータを抽出し、抽出からインポートできるだけのデータをインポートします。smartctlbadblocks

あなた〜するデータ損失はddrescue最小限に抑える必要がありますが希望インデックスのみ!

答え2

RAID は変更を直ちにコピーします。両方ディスク。たとえば、rmファイルが存在する場合、rm両方のディスクに保存されます。それとも何かが故障したり、何でもしません。

RAID-1はディスク障害からのみ保護します。 1つのディスクに障害が発生した場合、アレイは1つのディスクのみを使用し、ほとんど中断することなく動作し続けます。概念的には、実際の「プライマリ」ディスクと「バックアップ」ディスクはなく、2つ以上のディスクが非常に安定した1つのディスクとして機能します。

cat /proc/mdstatたとえば、アレイの状態を確認できます。アレイが良好でMySQLが破損している場合、MySQLには回復ツールがあります。何よりもバックアップから復元できます。

答え3

バックアップドライブがありません。 RAID-1がある場合、ミラーは1つだけです。 1つのドライブに障害が発生しても(デュアルドライブアレイで)、2台目のドライブに引き続きアクセスできる必要があり、そのドライブに障害が発生した場合(あなたの場合のように)、バックアップから復元する必要があります。

システムの電源が入っている場合は、次の手順でRAIDの状態を確認できます。

cat /prod/mdstat

動作中のドライブがある場合、出力にUが表示されます(たとえば、角かっこ間[U_])。この場合、RAIDは「単なる」パフォーマンスを低下させますが、この場合はまだ機能する可能性があります。 RAIDの電子メール通知がすでに設定されているとします。

ドライブの状態確認を使用する必要がありますsmartctl

答え4

私は指示に従った。http://www.thegeekstuff.com/2011/12/mysqlcheck/ そしてテーブルを修正しました。これでアプリケーションが正しく実行されています。

みんなありがとうございます。

関連情報