この記事では、主に MYSQL のログとバックアップと復元の問題について詳しく説明します。興味のある方は参考にしていただければ幸いです。
この記事では、参考のために 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 ですデータのバックアップは、実際には msyql が提供するツール mysqldump を使用してデータをバックアップします。指定されたディレクトリ内の指定されたファイルにコピーされます。
1. 指定したデータベースまたはデータベース内のいくつかのテーブルをバックアップします
mysqldump [オプション] db_name [table_names]
2. 1 つ以上の指定したデータベースをバックアップします
mysqldump [オプション] --database db_name1 db_name2
3すべてのデータベースをバックアップします
mysqldump [オプション] -all -databases
データベース インスタンスのデータベース wd_msg のテーブル構造とテーブル データを、ポート 3306 でファイル cd.sqlcd にエクスポートします。 SQL ファイルの内容は次のとおりです。
このファイルには、クエリ関連の操作を除く DML ステートメントと DDL ステートメントが記録されます。データの復元中、これらのステートメントを 1 つずつ実行してデータの復元を完了できます。
4. データの復元
テーブルを削除し、エクスポートしたデータを再インポートします:
次のシナリオは、同じサーバー上にポート 3307 を持つ別の mysql インスタンスを復元することです。
Mysql のバックアップと復元には、さまざまなシナリオに応じてさまざまなオプションがあります。これは、後で詳しく紹介する記事で紹介される概念の 1 つにすぎません。
関連する推奨事項:
MySQL ログ システムの詳細を説明するサンプル コードの共有以上がMYSQL ログとバックアップと復元の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。