ホームページ  >  記事  >  データベース  >  MySQLのログとバックアップ・リストアのグラフィックコードを詳しく解説

MySQLのログとバックアップ・リストアのグラフィックコードを詳しく解説

黄舟
黄舟オリジナル
2017-07-21 16:34:041166ブラウズ

この記事では主に MYSQL のログとバックアップと復元の問題について詳しく紹介します。興味のある方は参考にしてください。

具体的な内容は次のとおりです。下記の通り

1. エラーログ

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

1. サーバーの起動および停止プロセス中の情報

2.操作 エラー メッセージ

ログ ストレージ パスは、次のコマンドで表示できます:

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

2. バイナリ ログ

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

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

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

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

1. binlog を記録するスイッチをオンにします

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


innodb_buffer_pool_size=107M

# Size of each log file in a log group. You should set the combined size
# of log files to about 25%-100% of your buffer pool size to avoid
# unneeded buffer pool flush activity on log file overwrite. However,
# note that a larger logfile size will increase the time needed for the
# recovery process.
innodb_log_file_size=54M

# Number of threads allowed inside the InnoDB kernel. The optimal value
# depends highly on the application, hardware as well as the OS
# scheduler properties. A too high value may lead to thread thrashing.
innodb_thread_concurrency=10

log-bin=mysql-bin

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

2. BINLOGの見方

バイナリファイルなので、エラーログのように直接見ることはできません: mysqlbinlog

3. 時間による BINLOG の表示

時間でクエリを実行するときに注意すべき点は、start-datetime は閉じた間隔であり、stop-datetime は開いた間隔であることです。終日のログの場合は、次のように定義する必要があります:

--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 [table_names]

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

mysqldump [オプション] --database db_name1 db_name2

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

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

データベース インスタンスのデータベース wd_msg のテーブル構造とテーブル データを、ポート 3306 でファイル cd.sql

cd にエクスポートします。 SQL ファイルの内容は次のとおりです。

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

4. データの復元

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

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

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

以上がMySQLのログとバックアップ・リストアのグラフィックコードを詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。