mysqldump バックアップは、その独自の特性 (テーブルのロック、基本的に挿入スクリプトまたはテキストのバックアップ、差分バックアップのサポートなし) により、リアルタイム要件が高い状況には適していません。 まずは機能を整えてから細かい部分に取り組むという方針のもと、細かい部分に立ち入ることなく、ざっくりとしたバックアップとリストアを実施しました。 インターネット上には xtrabackup に関する記事が多数あります。環境が異なるため、その一部では xtrabackup 構成ファイルの構成が必要です。 innobackupex バックアップ xtrabackupとMySQLのバージョンは次のとおりです 完全バックアップ 次のようにコードをコピーします。 innobackupex --defaults-file=/etc/my.cnf --user=root --password=root --socket=/var/lib/mysql/mysql.sock /data/backup 例: 1.--defaults-file=/etc/my.cnf ファイルが先頭にある必要があります スクリーンショットに示すように、完全バックアップが完了しました スクリーンショットに示されているように、完全バックアップでは日付 (年-月-日-時-分-秒、yyyy-MM-dd_hh-mm-ss) で名前が付けられたファイルが作成されます。完全バックアップによって生成されるメモリは、実際にはバックアップされたデータベースのデータ ファイルのコピーと、バックアップ中に生成された情報です。たとえば、xtrabackup_checkpoints は現在の完全バックアップに関する情報です。この情報は差分バックアップにとって非常に重要です。 差分バックアップ 差分バックアップが差分を実現できる理由は、フルバックアップに依存しているからです。フルバックアップをベースに、フルバックアップ後の差分バックアップを行います。 スクリーンショットに示すように、差分バックアップが完了しました 指定された完全バックアップ ファイルが正しくない場合、または差分バックアップ中に完全バックアップ ファイルが指定されていない場合、xtrabackup は xtrabackup_checkpoints ファイルが見つからないというメッセージを表示します。 innobackupex 復元 準備 1. フルバックアップ、つまりフルバックアップアプリケーション (--apply-log) ログを復元します。nobackupex --defaults-file=/etc/my.cnf --apply-log --redo-only --socket=/var/lib/mysql/mysql.sock /data/backup/2017-06-22_13-40-29 2. 増分バックアップを完全バックアップに個別に適用します innobackupex --defaults-file=/etc/my.cnf --apply-log --redo-only --socket=/var/lib/mysql/mysql.sock --incremental /data/backup/2017-06-22_13-40-29 --incremental-basedir=/data/backup/2017-06-22_13-41-48 差分バックアップが複数ある場合は、差分バックアップを完全バックアップに個別に適用します。 回復期 1. すべての差分バックアップが完全バックアップに適用された後、復元された差分バックアップを元のデータ ディレクトリにコピーします。デフォルトでは、データ パスにファイルがある場合、コピーは失敗し、データ ファイル パス内のファイルをクリアする必要があります。 2. MySQLサービスを開始する mysqlサービスを起動すると起動に失敗する エラーログ(起動エラー情報)を確認します。mysql5.7yum によってインストールされるデフォルトのエラーログは /var/log/mysqld.log にあり、デフォルトではスクロールしません。つまり、すべてのエラーメッセージがこのファイルに記録されます。 データファイルが復元されたら、データファイルパスに読み取りおよび書き込み権限を付与する必要があります。ここでは、データファイルパス777を直接承認します。chmod -R 777 /var/lib/mysql xtrabackupex はまだ作業を始めたばかりなので、疑問点がまだたくさん残っています。時間があるときに一つずつ検証していきます。 1. 単一データベース(テーブル)のバックアップとリストアをどのように実装しますか? 結局のところ、実際の環境では、各データベースのバックアップの頻度と方法(バックアップ計画)は異なりますか? 2. フルバックアップ + 差分バックアップを使用し、バイナリログを組み合わせてタイムポイントベースの復元を実行するにはどうすればよいでしょうか? 3. バックアップ ファイルの有効性を確認するにはどうすればよいでしょうか? 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Gitlab実践チュートリアルでは、関連する設定操作にgit configを使用します。
>>: WeChatミニプログラムで検索キーワードを強調表示するサンプルコード
新年の初めに、友人の健康と2013年が素晴らしい年となることを心からお祈りいたします。この記事では、...
目次1. 初期SQLの準備2.MysqlはSQL文の実行時間をチェックします3. さまざまなクエリの...
UPD 2020.2.26 現在、Ubuntu 20.04 LTSはまだリリースされていないため、チ...
目次1. 型2. インスタンス3. 違い1. 型typeof 演算子は、評価されていないオペランドの...
フォーカス画像は、画像、テキスト、動的なインタラクティブ効果を統合したコンテンツを表示する方法です。...
1. はじめに先ほど、ウェブページの急速な発展について紹介しました。今回は、より深い内容についてお...
この記事では、主要な CSS ウェブサイトで推奨されている 20 個の便利なルールとベスト プラクテ...
目次MySQLを初期化するMySQL サービスをインストール + MySQL サービスを開始MySQ...
チェーンプログラミングの実装原理jQuery を使用すると、開発者は常にドット構文を使用して独自のメ...
MySQL 高度な SQL ステートメント kgc を使用します。 テーブルlocation(Reg...
ページ: ベース: <テンプレート> <div class="タブコンテ...
Mysql マスタースレーブ同期の Last_IO_Errno:1236 エラーの原因は何ですか? ...
目次1. Dockerをインストールする2. GitLabをインストールする3. GitLabを初期...
理由は簡単です。 HTML ドキュメントでは、複数の空白文字は 1 つの空白文字と同等です。つまり、...
Oracle、DB2、SQL Server などの他の大規模データベースと比較すると、MySQL に...