MYSQL ログとバックアップおよび復元の問題の詳細な説明

MYSQL ログとバックアップおよび復元の問題の詳細な説明

この記事では、参考までにMYSQLログとバックアップとリストアについて紹介します。具体的な内容は以下のとおりです。

1. エラーログ

データベースに障害が発生して使用できない場合は、まずログを確認してください。

1. サーバーの起動とシャットダウン時の情報

2. サーバー操作中のエラー情報

ログ保存パスは次のコマンドで確認できます。

ログファイルの命名形式: host_name.err

2. バイナリログ

BINLOG とも呼ばれ、クエリ ステートメントを除くすべての DDL ステートメントと DML ステートメントを記録します。このログは非常に重要であるだけでなく、開発者として私はこのログがとても気に入っています。定義からわかるように、このログにはテーブル構造とテーブルデータを変更するすべてのイベントが記録されるため、誤ってデータが削除されたり、その他の理由で失われたりした場合は、このログを通じてデータを復元できます。かっこいいと思いませんか?

ログ保存パス: エラーログと同じディレクトリ

命名方法: デフォルトの方法はホスト名-bin + 番号です

MySQL が起動またはログをフラッシュするたびに、新しい binlog が生成され、番号は 1 から始まり増加します。 1 つのログが一定のサイズに達すると、新しいファイルが生成されます。

1. バイナリログを記録するためのスイッチをオンにする

myslqのインストールディレクトリには、設定ファイルmy.iniがあります。

innodb_buffer_pool_size=107M

# ロググループ内の各ログファイルのサイズ。合計サイズを設定する必要があります
ログファイルの数をバッファプールサイズの約25%~100%に抑えることで、
# ログファイルの上書き時に不要なバッファプールのフラッシュアクティビティが発生します。ただし、
# ログファイルのサイズが大きいほど、
# 回復プロセス。
innodb_log_file_size=54M

# InnoDBカーネル内で許可されるスレッド数。最適値は
# アプリケーション、ハードウェア、OSに大きく依存します
# スケジューラのプロパティ。値が高すぎると、スレッドのスラッシングが発生する可能性があります。
innodb_thread_concurrency=10

ログ bin = mysql bin

log-bin はスイッチがオンになっていることを示し、mysql-bin はログ名のプレフィックスです。

2. BINLOGの表示方法

バイナリファイルなので、エラーログのように直接見ることはできません。MySQLが提供するツール、mysqlbinlogを使用する必要があります。

3. 時間別にBINLOGを表示する

時間でクエリを実行するときに注意すべきことの 1 つは、start-datetime は閉じた間隔であり、stop-datetime は開いた間隔であるということです。したがって、1 日のログ全体をクエリする必要がある場合は、次のように定義する必要があります。
--start-datetime="2017/07/12 00:00:00" --stop-datetime="2017/07/13 00:00:00": クエリの時間範囲は 7/12 00:00:00 - 7/12 24:59:59 です

3. データのバックアップ

データのバックアップでは、実際には msyql が提供するツール mysqldump を使用して、指定されたディレクトリ内の指定されたファイルにデータをバックアップします。

1. 指定されたデータベースまたはデータベース内の一部のテーブルをバックアップします

mysqldump 【オプション】 db_name 【テーブル名】

2. 指定された1つ以上のデータベースをバックアップする

mysqldump 【オプション】 --database db_name1 db_name2

3. すべてのデータベースをバックアップする

mysqldump [オプション] -all -databases

ポート3306のデータベースインスタンスのデータベースwd_msgのテーブル構造とテーブルデータをcd.sqlファイルにエクスポートします。

cd.sql ファイルの内容は次のとおりです。

このファイルには、クエリ関連の操作を除く DML ステートメントと DDL ステートメントが記録されます。データを回復する場合、これらのステートメントを 1 つずつ実行して、データの復元を完了できます。

4. データ復旧

テーブルを削除し、エクスポートしたデータを再インポートします。

次のシナリオは、同じサーバー上のポート 3307 を持つ別の MySQL インスタンスで wd_msg データベースを復元することです。

MySQL のバックアップと復元には、さまざまなシナリオに応じたさまざまなオプションがあります。これは、ここで紹介した概念の 1 つにすぎません。後ほど、詳細を紹介する記事があります。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • mysqldump のバックアップとリストア、および mysqldump のインポートとエクスポートのステートメントの詳細な説明
  • MySQL データベースをバックアップ/復元するための PHP コード
  • 推奨されるMySQLデータベースのバックアップと復元方法
  • MySQL データベースのバックアップと復元によく使用されるコマンドの概要
  • innobackupex と xtrabackup を使用して MySQL のビッグデータをバックアップおよび復元するチュートリアル
  • MYSQL バックアップとリストアの詳細な説明 (PHP 実装)
  • コマンドラインモードでMySQLデータベースをバックアップおよび復元するためのステートメントの概要
  • MySQLはコマンドを使用してデータベースをバックアップおよび復元します
  • MySQL ログファイルはどこにありますか? MySQL ログファイルの場所を変更する方法
  • MySQLはトレースログを表示して実行されたSQL文を追跡します。

<<:  Reactにおけるフックの一般的な使用法

>>:  Dockerコンテナの自動終了を停止する方法の詳細な説明

推薦する

JavaScript操作要素は、ページコンテンツのスタイルを変更する方法を教えます

目次1. 操作要素1.1. 要素コンテンツの変更1.2. innerText と innerHtml...

初心者向け入門チュートリアル④:サブディレクトリのバインド方法

これが何を意味するのかを理解するには、まずサブディレクトリとは何かを知る必要があります。では、サブデ...

docker に php-fpm サービス/拡張機能/構成をインストールする詳細なチュートリアル

macにbrewを使ってphp56をインストールしたところ、 opensslがバージョン1.1だった...

react setStateの詳細な説明

目次setState は同期ですか、それとも非同期ですか?カスタム合成イベントと React フック...

dl、dt、dd はいつ使用するのが適切ですか?

dl:定義一覧定義リストdt:定義タイトルタイトルを定義するdd:定義説明定義の説明dt は情報のタ...

マークアップ言語 - HTML を学んだ後に何を学ぶべきか?

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

太陽系の惑星のアニメーション効果を実現するHTML+CSS3コード

太陽系の 8 つの惑星(衛星を除く)のアニメーションを作成します。すべての惑星は太陽の周りを回ってい...

CSS3 のテキストとフォントの新しい設定

テキストシャドウテキストシャドウ: 水平オフセット 垂直オフセット ぼかし色互換性: IE10+ &...

マークアップ言語 - CSS レイアウト

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

Docker で既存のイメージに基づいて新しいイメージを構築する方法

既存のイメージから新しいイメージを構築することは、Dockerfile ドキュメントを通じて行われま...

初心者向けウェブサイト構築チュートリアルの概要

これら 6 つの記事を書いた後、私は少し混乱し始めました。次にどこに書けばいいのか分かりません。ドメ...

NginxにおけるRewriteのリダイレクト設定と実践の詳しい解説

1: アドレス書き換えとア​​ドレス転送の意味を理解する。アドレス書き換えとア​​ドレス転送は異なる...

弾幕効果を実現するためのjQuery

この記事では、弾幕効果を実現するためのjQueryの具体的なコードを参考までに共有します。具体的な内...

Nginx 構成の実装 https

目次1: https証明書を準備する2: nginx sslモジュールを準備する3: SSL証明書を...

MySQL 5.7.9 シャットダウン構文例の詳細な説明

mysql-5.7.9 では、ついにシャットダウン構文が提供されます。以前は、MySQL データベー...