史上最も簡単な 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 データ型の詳細な説明

推薦する

CentOS7環境にMySQL5.5データベースをインストールする

目次1. 現在のシステムにMySQLがインストールされているかどうかを確認する2. インストールされ...

XHTML 3つの文書型宣言

XHTML は 3 つのドキュメント タイプ宣言を定義します。最もよく使用されるのは XHTML T...

Youku 動画から 30 秒の広告コードを削除する 2 つの方法

誰もがこんな気持ちになったことがあると思います。30 秒の広告が入った動画を見ると、とても不快に感じ...

Nginx は rtmp ライブ サーバーの実装コードを構築します

1. nginxソースディレクトリに新しいrtmpディレクトリを作成し、git clone http...

IIS7 IIS8 http は自動的に HTTPS にジャンプします (ポート 80 はポート 443 にジャンプします)

IIS7 では、「URL REWRITE2」疑似静的モジュールがインストールされているかどうかを確...

jsのイベントループ機構の解析

序文ご存知のとおり、JavaScript は本質的にシングルスレッドですが、ブラウザは非同期リクエス...

jQuery はパーセンテージスコアリングの進捗バーを実装します

この記事では、パーセンテージスコアリングプログレスバーを実現するためのjQueryの具体的なコードを...

HTML でフレームセット タグを使用するチュートリアル

フレームセット ページは通常の Web ページとは多少異なります。依然として <HTML>...

Mysql トランザクションで Update を実行するとテーブルがロックされますか?

2つのケース: 1. 索引あり 2. 索引なし前提条件:方法: コマンドラインを使用してシミュレー...

CSS のみを使用して折りたたまれたヘッダー効果を作成する方法の例コード

折りたたまれたヘッダーは、特別オファーや重要なお知らせなど、ユーザーにとって重要な情報を表示するのに...

HTML の長いテキストは、タグの幅を超えると自動的に切り捨てられます。

長いテキストを表示する場合、C# 側で文字をインターセプトする必要があることがよくありますが、長いテ...

CSS3で線形グラデーションを実装するためのコードの詳細な説明

序文デモでは古いバージョンのブラウザのグラデーションが実装されています[IE9-]。 IE9 より前...

知らないかもしれない奇妙で興味深いDockerコマンド

はじめに使えるかもしれないが、あまり使われていない、シンプルで実用的なDockerコマンドをいくつか...

ウェブサイトの高速化における CDN、SCDN、DCDN の違いは何ですか?どうやって選ぶ?

1. CDNこれは、Web サイト上で最もよく使用される加速機能です。分散サーバー レイアウトによ...

Vue フロントエンド開発における階層的にネストされたコンポーネント間の通信の詳細な説明

目次序文例まとめ序文Vue の親子コンポーネントは、props を通じて親コンポーネントの値を子コン...