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ミニプログラムで検索キーワードを強調表示するサンプルコード
この記事では、Linux サーバー上で Nginx と Apache の共存を実装する方法について説...
目次サーバー計画1. システムコンポーネントをインストールする2. fastdfsをインストールする...
今日、ある人がウェブサイト開発プロジェクトについて話をしてくれました。具体的な要件について話すと、「...
背景:以前、コンテナ内のホストが提供する Redis サービスにアクセスする必要があるプロジェクトを...
毎回インストールチュートリアルを探すのは面倒なので、後で確認できるように手順をバックアップします。解...
生活の中で、インターネットはどこにでもあります。インターネットを通じてゲームをしたり、テレビ番組を見...
B ツリーは一般的なデータ構造です。彼と一緒にB+ツリーがあります。ここで、概念を明確にする必要があ...
1. Linuxカーネルドライバモジュールの仕組み静的ロードでは、ドライバモジュールをカーネルにコン...
zabbix_agent のデプロイメント:推奨事項: zabbix_agent は docker-...
エラーの説明: 1. Linux (CentOS 7 64) システムに Nginx (1.18.0...
本来、この第 7 章では、デザインにおけるレイヤーと空間テクニックについて深く議論するはずです。しか...
目次1. マップは任意のタイプのキーを受け入れます2. マップにはキー名に関する制限はありません3....
本日、MySQL 8.0 をアップデートしました。最初の問題: Navicatがデータベースに接続で...
テーブル ヘッダーが固定されている場合は、それを 2 つのテーブルに分割する必要があります。1 つの...
区切り文字なしの文字列抽出質問の要件データベース内のフィールド値:実装効果: 1行のデータを複数行に...