MySQL Binログデータの回復: 誤ってデータベースを削除した場合 前書き: テスト マシンで誤って Mysql データベース スキーマ全体を削除してしまったため、テスト マシンであったためバックアップを作成しませんでした。現在は、MySQL の Bin ログ メソッドを使用して、削除前のデータベースを復元しています。 もちろん、Bin ログデータ復旧の前提は、Bin ログ機能がオンになっていることです。データのバックアップを取っておらず、Bin ログをオンにしていない場合は、システムの観点から復旧するためにスナップショットなどの他の方法を検討する必要があるかもしれません。 バイナリ ログは、増分データ バックアップとリカバリ、およびデータベースのマスター スレーブ レプリケーションによく使用されます。有効になっていない場合は、次の手順で有効にできます。 1. mysqlのbinlog関数を開く MySQL は増分バックアップをサポートしていますが、MySQL の bin ログ機能をオンにする必要があります。 mysql 構成ファイルを変更します。 Linux は /etc/my.cnf、Windows は mysql インストール ディレクトリ/my.ini です。 # レプリケーションマスターサーバー(デフォルト) # レプリケーションにはバイナリログが必要です ログ bin = mysql bin # バイナリログ形式 - 混合推奨 binlog_format=混合。 2. 次の方法でバイナリ ログのステータスを確認します。有効になっていますか? mysql> 'log_%' のような変数を表示します。 3. すべてのバイナリログファイルを表示します。 mysql> ライブラリログを表示します。 mysql> バイナリログを表示します。 +------------------+-----------+ | ログ名 | ファイルサイズ | +------------------+-----------+ |mysql-bin.000001 | 201 | |mysql-bin.000002 | 351 | | mysql-bin.000003 | 276 | |mysql-bin.000004 | 201 | |mysql-bin.000005 | 16509 | 4.Mysqlはバイナリログファイルの操作ログを表示します #mysqlbinlog --開始位置=0 /mydata/data/mysql-bin.000089 [root@test mysql]# mysqlbinlog --start-position=0 --stop-position=500 mysql-bin.000091 警告: オプション 'start-position': 符号なし値 0 が 4 に調整されました /*!50530 @@SESSION.PSEUDO_SLAVE_MODE を 1 に設定します*/; /*!40019 @@session.max_insert_delayed_threads を 0 に設定します*/; /*!50003 @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0 に設定*/; 区切り文字 /*!*/; # 4時 #151022 18:00:43 サーバー ID 1 end_log_pos 107 開始: binlog v 4、サーバー v 5.5.38-log が起動時に 151022 18:00:43 に作成されました # 警告: このバイナリログは使用中か、適切に閉じられていません。 ロールバック/*!*/; バイナリログ' y7MoVg8BAAAAZwAAAGsAAAABAAQANS41LjM4LWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAADLsyhWEzgNAAgAEgAEBAQEEgAAVAAEGggAAAAICAgCAA== '/*!*/; # 107 で #151022 23:27:50 サーバー ID 1 end_log_pos 198 クエリ thread_id=2 exec_time=0 error_code=0 タイムスタンプを 1445527670/*!*/ に設定します。 @@session.pseudo_thread_id=2/*!*/ を設定します。 @@session.foreign_key_checks=0、@@session.sql_auto_is_null=0、@@session.unique_checks=0、@@session.autocommit=1/*!*/ を設定します。 @@session.sql_mode を 1608515584/*!*/ に設定します。 @@session.auto_increment_increment=1、@@session.auto_increment_offset=1/*!*/ を設定します。 /*!\C utf8 *//*!*/; @@session.character_set_client=33、@@session.collation_connection=33、@@session.collation_server=8/*!*/ を設定します。 @@session.lc_time_names=0/*!*/ を設定します。 @@session.collation_database=DEFAULT/*!*/ を設定します。 `pandora`<pre name="code" class="sql">/*!*/ が存在する場合はスキーマを削除します。 # 198 で #151022 23:27:50 サーバー ID 1 end_log_pos 346 クエリ thread_id=2 exec_time=0 error_code=0 5. Bin ログからデータを復元します。スキーマ全体を削除してバックアップしておらず、Bin ログが有効になっていたため、すべての履歴 Bin ログを再実行し、誤って削除する前のバージョンに復元しました (ここでは合計 91 個のファイルがあり、バッチ処理されています)。(999999999999: これは、各 Bin ログ ファイルの開始位置と終了位置を見つける手間を省くためであり、操作を簡素化するために無限数を設定します。) #mysqlbinlog /var/lib/mysql/mysql-bin.000001 --start-position=0 --stop-position=9999999999999 | mysql -uroot -p123456 #mysqlbinlog /var/lib/mysql/mysql-bin.000002 --start-position=0 --stop-position=9999999999999 | mysql -uroot -p123456 #mysqlbinlog /var/lib/mysql/mysql-bin.000003 --開始位置=0 --停止位置=9999999999999 | mysql -uroot -p123456 …… 結論は次のようになります。
他の: 1. sql_logもあります mysql> 'sql_log_%' のような変数を表示します。 Mysql は、SQL バイナリ ログをオンまたはオフにします。 2. ファイルの場所を見つけます。 検索 / -name my.cnf 3. Linux 現在のディレクトリのフルパスを表示する pwd コマンド: 4. 現在のバイナリログのステータスを確認します。 mysql>マスターステータスを表示します。 5. my.cnf/my.ini でバイナリ ログのロールバックの日数を設定します。 有効期限切れログ日数 = 7 6. マスタービンログを表示する mysql> マスターログを表示します。 +-----------------+-----------+ | ログ名 | ファイルサイズ | +-----------------+-----------+ | ログ bin.000001 | 98 | +-----------------+-----------+ セット内の 1 行 (0.00 秒) --------------------- 上記は、編集者が紹介したMySQL Binlogデータ復旧の詳細な説明と統合です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
>>: Raspberry Pi 4b ubuntu19 サーバーへの docker-ce のインストール手順
ハッシュ結合ハッシュ結合は実行にインデックスを必要とせず、ほとんどの場合、現在のブロックネストループ...
Mysqldump は MySQL の論理バックアップに使用されます。高速ではありませんが、柔軟性が...
参考までに、HTMLフォームの使い方を9つの簡単な例で分析します。具体的な内容は次のとおりです。 1...
関連記事:初心者が学ぶ HTML タグ (5)導入された HTML タグは、必ずしも XHTML 仕...
MySQL 一時テーブルは、一時的なデータを保存する必要がある場合に非常に便利です。一時テーブルは現...
目次クラスコンポーネントのプロパティ比較浅い同等の浅い比較機能コンポーネントの簡単な比較先週面接に行...
CSS オーバーフローのメカニズムを詳細に学ぶ必要があるのはなぜですか?実際の開発プロセスでは、コン...
垂直方向では、ヘッダーの配置を上、中央、下に設定できます。基本的な構文構文Top は上、Middle...
stat 関数と stat コマンドLinux ファイル内の [inode = インデックス ノード...
1. 関連ツールと画像をダウンロードするダウンロードリンクバーチャルボックス: https://do...
コード <div class="test"> <div>...
1. 背景Docker サービスが開始されると、デフォルトで docker0 ブリッジが作成され (...
1. psshを確認してインストールします。yum list pssh 2. キーレスログインが設定...
序文誰もが vue2 の watch API に精通している必要があります。vue2 の vue イ...
Win10 システムでの MySQL 8.0.20 のインストールと設定の超詳細なチュートリアルMy...