史上最も簡単な MySQL データのバックアップと復元のチュートリアル (パート 2) (パート 37)

史上最も簡単な MySQL データのバックアップと復元のチュートリアル (パート 2) (パート 37)

データのバックアップと復元パート3の詳細は次のとおりです

基本的な概念:

バックアップ、現在のデータまたはレコードの別のコピーを保存します。

復元: データをバックアップ時の状態に復元します。

なぜデータのバックアップと復元が必要なのでしょうか?

データ損失を防ぐ;

データレコードを保護します。

データのバックアップと復元にはさまざまな方法があり、データ テーブル バックアップ、単一テーブル データ バックアップ、SQL バックアップ、増分バックアップに分けられます。

SQL バックアップ

SQL バックアップは SQL ステートメントをバックアップします。 SQL バックアップを実行する場合、システムはテーブル構造とデータを処理し、対応する SQL ステートメントに変換してから、バックアップを実行します。復元するときは、バックアップされた SQL ステートメントを実行するだけです。このバックアップ方法は、主にテーブル構造を対象としています。

ただし、MySQL では SQL バックアップの手順は提供されていません。SQL バックアップを実行する場合は、MySQL が提供するソフトウェア mysqldump.exe を使用する必要があります。また、mysqldump.exe はクライアントでもあるため、サーバーを操作する際には認証を行う必要があります。

基本構文: mysqldump.exe -hPup + データベース名 + [テーブル名 1 + [テーブル名 2]] > バックアップ ファイル ディレクトリ

そのうち、-hPupは

h: IP またはローカルホスト;

P: ポート番号;

u: ユーザー名;

p: パスワード。

mysqldump.exe もクライアントなので、上記のコマンドを実行するには、まず MySQL クライアントを終了し、コマンド ライン ウィンドウで次のコマンドを実行する必要があります。

mysqldump.exe -uroot -pbin.guo テストクラス > D:/CoderLife/testMySQL/classSQL.sql

1

上図に示すように、mysqldump は警告 (コマンドラインでパスワードを入力するのは安全ではありません) を出しましたが、入力したコマンドは正常に実行されました。ここで、上記のコマンドが正常に実行されない場合は、環境変数が設定されていない可能性があります。

2

上の図に示すように、testMySQL ディレクトリにテーブル クラスの SQL バックアップが生成されています。SQL バックアップの内容については、classSQL.sql ファイルを開いて確認できます。

3

上図に示すように、SQL でバックアップされたファイルには、テーブルの作成やデータの挿入などのさまざまな SQL 文が含まれています。

また、上記の SQL バックアップを実行するための基本構文では、テーブル名が[]で囲まれていることがわかります。これはオプション項目を示しています。テーブル名を入力しない場合は、デフォルトでデータベース全体がバックアップされます。実行プロセスは上記と同じなので、デモンストレーションは行いません。

次に、次の 2 つの方法で SQL バックアップ ファイルからデータを復元する方法を説明します。

方法 1 : mysql.exe クライアントを使用してデータを復元する

基本構文mysql.exe/mysql -hPup データベース名 + データベース名 + [テーブル名1 + [テーブル名2]] < バックアップファイルディレクトリ

テストするには、コマンド ライン ウィンドウで次のコマンドを実行します。

-- MySQLクライアントにログインする mysql -uroot -p

-- パスワードを入力してデータベース使用テストに切り替えます。

-- クラス テーブルのデータを削除します。delete from class;

-- データベースを終了\q

-- SQL バックアップ ファイル mysql -uroot -pbin.guo test < D:/CoderLife/testMySQL/classSQL.sql を通じてデータを復元します

4

上の図に示すように、上記のコマンドはすべて正常に実行されました。次に、復元結果を確認します。

5

上図に示すように、テーブルクラスのデータが削除された後、SQL バックアップ ファイルを通じてデータを復元しました。

方法2 : SQLコマンドを使用してデータを復元する

基本構文ソース + バックアップ ファイル ディレクトリ。

上記の SQL ステートメントを実行してテストします。

-- クラス テーブル データを表示します。select * from class;

-- テーブル クラス データを削除します。delete from class;

-- クラス テーブル データを表示します。select * from class;

-- SQL バックアップ ファイル ソース D:/CoderLife/testMySQL/classSQL.sql を使用してデータを復元します。

-- クラス テーブル データを表示します。select * from class;

6
7

上図に示すように、テーブル クラスのデータが削除された後、SQL バックアップ ファイルを使用して 2 番目の方法を使用してデータを復元しました。

上記の調査とテストを通じて、SQL バックアップの利点と欠点がわかります。

利点: テーブル構造をバックアップできます。欠点: 追加の SQL コマンドを追加するとディスク領域が浪費されます。

増分バックアップ

増分バックアップでは、データや SQL はバックアップされませんが、MySQL サーバーのログがバックアップされます。ログの内容には、追加、削除、変更、クエリなど、データベースに対するさまざまな操作の履歴レコードが含まれます。また、増分バックアップは指定された期間ごとに実行されるため、バックアップされたデータは重複することがなく、大規模プロジェクトのデータバックアップによく使用されます。ここでは詳しく紹介しません。この部分については、今後、増分バックアップの実行方法について別のブログ記事を書く予定です。

ヒント: 記号 [] で囲まれた内容はオプション項目を示し、記号 + は接続を意味します。

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

以下もご興味があるかもしれません:
  • 史上最もシンプルな MySQL データのバックアップと復元のチュートリアル (パート 1) (パート 35)
  • 史上最もシンプルな MySQL データのバックアップと復元のチュートリアル (パート 2) (パート 36)
  • MySQLデータのバックアップとmysqldumpの使い方の詳細な説明
  • Linux で MySQL データをバックアップおよび復元するためのコマンドの使用に関する完全なガイド
  • 例を通してMySQLパーティションテーブルの原理と一般的な操作を学びます

<<:  CentOSにPHP+Apache+MySQLのサーバー環境をインストールして構築する

>>:  JavaScript データ型の詳細な説明

推薦する

WeChatアプレットにナンバープレート入力機能を実装

目次序文背景大きな推測パターンを見つける構造とスタイルコンポーネントの実装パラメータキーボードの種類...

Linuxでのaliasコマンドの使い方の詳細な説明

1. 別名の使用alias コマンドは、コマンドのエイリアスを設定するために使用されます。このコマン...

遭遇したいくつかのブラウザ互換性の問題について簡単に説明します

背景ブラウザの互換性の問題を解決するのは非常に面倒なことです。高度な技術はそれほど必要ありませんが、...

JavaScript の実行コンテキストとコールスタックの詳細な説明

目次1. 実行コンテキストとは何か2. 実行コンテキスト スタックとは何ですか? 3. 実行コンテキ...

MySQL シャーディング入門ガイド

序文リレーショナル データベースは、システムのボトルネックになる可能性が高くなります。単一のマシンの...

React Hooksコンポーネント間で値を渡す方法の詳細な説明(tsを使用)

目次父から息子へ息子から父へクロスレベルコンポーネント(親から子孫)父から息子へpropsを通じて値...

vmware16 仮想マシンに共有フォルダを設定する方法

1. 仮想マシンに共有フォルダを設定します。 1. 処理する仮想マシンを選択し、右クリックして設定...

MySQLクエリで大文字と小文字を区別しない問題を解決する方法

質問最近、SSH フレームワークを使用して実用的なプロジェクトを完了していたときに、長い間悩まされて...

CentOS の環境変数と設定ファイルの詳細な説明

序文CentOS 環境変数設定ファイル システムは階層型システムであり、他のマルチユーザー アプリケ...

Vuex データの永続性を実装するためのアイデアとコード

vuexとはvuex: vue.js専用に開発された状態管理ツールで、すべてのコンポーネントの状態を...

Dockerはコンテナポートバインディングのローカルポートを実装します

今日、イメージを起動した後、HTTP リクエスト経由でアクセスできないという小さな問題が発生しました...

Chromeの最小フォントサイズ制限12pxに対する最終的な解決策

ウェブサイトを作成するユーザーの多くが、このような問題に遭遇すると思います。Chrome のデフォル...

Linux ベースの MySQL マスター スレーブ構成の全プロセスを記録する

mysql マスタースレーブ構成1. 準備ホスト: 192.168.244.128スレーブ: 192...

HTML における画像タグの使用方法の詳細な説明

HTML では、<img> タグはテキスト内の画像タグを定義するために使用されます。その...