MySQL インポートおよびエクスポートのバックアップの詳細

MySQL インポートおよびエクスポートのバックアップの詳細

1. MySQLのバックアップタイプの詳細な説明

現代のインターネット企業にとって、サーバーデータベースに保存されたデータは徐々に企業や会社の生命線となり、企業や会社の存続と発展に非常に大きな影響を与えています。データベースデータ保存のセキュリティを確保し、誤操作や不可抗力による破損を防ぐために、通常はデータベース内のデータをバックアップします。 MySQL データベースをバックアップする方法は多数あります。さまざまな分類基準に従ってこれらのバックアップ方法について説明しましょう。

1. バックアップがデータベースに与える影響に基づく分類

1. ホットバックアップ。これは、データベースの実行中にデータベースをバックアップすることを意味し、データベースの通常の操作には影響しません。
2. コールドバックアップ。データベースが停止した後に開始されるバックアップを指します。
3. ウォームバックアップ。データベースの実行中にバックアップを実行するバックアップ方法を指しますが、これによりデータベースのパフォーマンスが低下し、データベースによって提供されるサービスに影響を及ぼします。

(II) バックアップファイルによる分類

1. 論理バックアップ。論理バックアップを使用する場合、バックアップされたデータは通常 .sql ファイルになります。バックアップされたコンテンツは読み取り可能なテキスト ファイルです。この方法は通常、データベースのアップグレード、移行、データベース テーブルのバッチ変更などのシナリオで使用されます。この方法では回復に長い時間がかかります。
2. ベアファイルのバックアップ。データベースの物理ファイルをコピーすることを指します。この方法では、データベースの回復時間が短縮されます。

3. バックアップ方法による分類

1. 完全バックアップ。データベースの完全なバックアップを指します。
2. 増分バックアップ。すべてのデータをバックアップするのではなく、最後のバックアップに基づいて更新されたデータをバックアップすることを意味します。
3. ログのバックアップ。これは、データベース ログをバックアップすることを指します。このバックアップ方法は、MySQL マスター スレーブ同期アーキテクチャで使用されます。

2. MySQLデータベースのエクスポート

(I) mysqldumpエクスポートデータ

mysqldump は、MySQL データベースに付属するデータ バックアップおよびエクスポート ツールです。このツールは、MyISAM および InnoDB エンジンのデータ テーブルをサポートします。 mysqldump バックアップに使用されるパラメータは次のとおりです。
-u: データベースにログインするユーザーを指定します。
-p: データベースにログインするために使用するユーザー パスワードを指定します。
-d: データベースのテーブル構造のみがエクスポートされることを示します。
-t: テーブル構造を含めずに、データベースの特定のデータのみがエクスポートされることを示します。
-A: すべてのデータベースをエクスポートすることを意味します。
以下は、mysqldump の使用例です。

mysqldump -uroot -proot -A >all_database.sql
mysqldump -uroot -proot pzz > pzz.sql
mysqldump -uroot -proot pzz 学生 > 学生.sql
mysqldump -uroot -proot -d pzz > pzz_table.sql
mysqldump -uroot -proot -t pzz > pzz_data.sql

上記の 5 つのコマンドは、それぞれ、データベース内のすべてのデータのエクスポート、pzz データベースのデータのエクスポート、pzz データベースの学生テーブル内のすべてのデータのエクスポート、pzz データベースのテーブル構造に関連するデータのエクスポート、およびテーブル構造を除く pzz データベースの実際のデータのエクスポートを表しています。
mysqldump によってエクスポートされたファイルを使用すると、結果は次のようになります。

ここに画像の説明を挿入

(II) mysqlhotcopy ベアファイルバックアップ

MySQL 5.5 以下のデータベース(MySQL 5.7 のデータベースでは mysqlhotcopy コマンドは削除されています)では、クイック バックアップを実行できます。 mysqlhotcopy によって実行されるバックアップは、コピー中にデータベースの内容をロックするためにロックが使用される点を除いて、基本的にはデータベース テーブル ファイルの直接的な物理コピーです。さらに、mysqlhotcopy コマンドは MyISAM エンジンのデータ テーブルのみをバックアップできます。以下は、mysqlhotcopy コマンドの使用例です。

mysqlhotcopy -u ルート -p ルート pzz /root
mysqlhotcopy -u ルート -p ルート pzz./student/root

上記の 2 つのコマンドのうち、最初のコマンドは pzz データベースをバックアップし、2 番目のコマンドは pzz データベース内の学生データ テーブルをバックアップします。バックアッププロセスは次のとおりです。

ここに画像の説明を挿入

(III) mysqldumpとmysqlhotcopyの比較

1. mysqldump は .sql ファイルにバックアップしますが、mysqlhotcopy はベア ファイル バックアップを使用します。
2. mysqldump のバックアップとリカバリは mysqlhotcopy よりも遅いため、大きなファイルのバックアップには適していません。
3. mysqldump は MyISAM エンジンと InnoDB エンジンをサポートしますが、mysqlhotcopy は MyISAM エンジンのみをサポートします。
4. mysqlhotcopy は MySQL バージョン 5.5 以上には含まれていません (含まれていません)。
5. mysqlhotcopy はデータベースが配置されているデバイス上でのみ実行できますが、mysqldump はローカル デバイスまたはリモート クライアント上で実行できます。
6. mysqldump と mysqlhotcopy が実行されると、データベースがロックされます。
7. mysqldump バックアップの復元は、基本的に .sql ファイル内の SQL ステートメントの実行ですが、mysqlhotcopy バックアップの復元は、基本的に直接上書きです。

3. MySQLデータベースのインポート

mysqlhotcopy を使用してデータベースをバックアップすると、復元時に元のデータをバックアップ データで上書きするだけで済みます。 mysqldump によってエクスポートされた .sql ファイルを復元する場合は、MySQL データをインポートする必要があります。 MySQL データベースをインポートする方法は 2 つあります。1 つは、「<」記号を使用して .sql ファイル内の情報を MySQL データベースに直接インポートする方法です。もう 1 つは、データベースにログインした後、source コマンドを使用してデータをインポートする方法です。
たとえば、exp.sql のバックアップ データをインポートするには、次のコマンドを実行します。

mysql -uroot -proot < exp.sql

または、データベースにログインした後、次を実行します。

ソース /root/exp.sql

要約する

これで、MySQL のインポートとエクスポートのバックアップの詳細な説明に関するこの記事は終了です。MySQL バックアップに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQLデータベースとOracleデータベース間のバックアップをインポートする
  • バックアップと復元のための MySQL インポートおよびエクスポート コマンドの使用
  • MySQL データベースをインポートおよびエクスポートする方法 (バックアップと復元)

<<:  コンテンツの位置をランダムにドラッグするHTMLを実装する2つの方法

>>:  CSS3 フィルター属性の使い方の紹介

推薦する

Element-UI の Select と Cascader にポップアップ下部アクション ボタンを追加する方法

下図のように、 selectポップアップレイヤーの下部に操作ボタンを配置するのが一般的な設計方法です...

MySQLが数十億のトラフィックをサポートする方法

目次1 マスター・スレーブの読み取り・書き込み分離1.1 コア2 マスタースレーブレプリケーション2...

テーブル設定の背景画像が100%表示されない解決策

開発中に以下の状況が発見されました。 (1) ファイルが.jspファイル拡張子で保存されている場合、...

JavaScript strictモードの概要 strictを使用する

目次1. 概要1.1 厳密モードとは何ですか? 1.2 厳密モードの目的2. 厳密モードを有効にする...

ウェブページ入力ボックスのスタイルトリガー効果

<br />この例では、主に onblur と onFocus という 2 つのパラメー...

MySQL マスタースレーブレプリケーションと読み取り書き込み分離の詳細な説明

目次序文1. 概要2. 読み取りと書き込みの分離3. MySQL マスタースレーブレプリケーションの...

ウェブページデザインのための4つの実践的なヒント

関連記事: Web コンテンツ ページを作成するための 9 つの実用的なヒント<br />...

JavaScript タイピングゲーム

この記事では、タイピングゲームを実装するためのJavaScriptの具体的なコードを参考までに紹介し...

HTML タイトル属性をラップする方法

数日前にプログラムを書いていたとき、プロンプト情報 (TITLE) を新しい行で囲みたいと思いました...

Vue で手ぶれ補正とスロットリングを使用する方法

目次序文コンセプト安定意味使用シナリオコードVueでの使用スロットリング意味使用シナリオコードVue...

mysql 簡単な操作例を表示

この記事では、例を挙げて mysql show 操作について説明します。ご参考までに、詳細は以下の通...

MySQL 8.0 の新機能 - 管理ポートの使用の概要

目次序文接続管理追加の接続管理ポート要約する序文皆さんの多くは、次のようなエラー メッセージに遭遇し...

jsシミュレーションでJingdongの詳細ページで画像を拡大する効果を実現

この記事では、Jingdongの詳細ページの画像の拡大を実現するためのjsの具体的なコードを紹介しま...

HTML はテキストの外側に省略記号を表示します...テキストオーバーフローによって実装されます

div または span に同時に CSS を適用する必要があります。コードをコピーコードは次のとお...

MySQL 結合テーブルと ID 自動増分の例の分析

結合の書き方左結合を使用する場合、左側のテーブルが必ず駆動テーブルになりますか? 2 つのテーブルの...