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 フィルター属性の使い方の紹介

推薦する

CSS ハック \9 と \0 は IE11\IE9\IE8 のハッキングには機能しない可能性があります

Web ページやフォームを設計するたびに、さまざまなブラウザ、特に IE ファミリの互換性の問題に悩...

Tinymce リッチテキストを使用して Vue のツールバーボタンをカスタマイズする実践

目次tinymce、tinymce ts、tinymce-vue 宣言ファイルをインストールするパッ...

CSS3で実装された水平ヘッダーメニュー

結果:実装コードhtml <nav class="dropdownmenu"...

IDEA が Docker を統合してリモート展開を実現するための詳細な手順

1. Dockerサーバーへのリモートアクセスを有効にするdocker が配置されているリモート サ...

Linux で LVGL エミュレータをコンパイルする際のエラーの解決方法

目次1. エラー現象2. エラー分析3. エラー解決1. エラー現象仮想マシンでLVGLエミュレータ...

MySQL 一時テーブルの簡単な使用法

MySQL 一時テーブルは、一時的なデータを保存する必要がある場合に非常に便利です。一時テーブルは現...

MySQLでストアドプロシージャをデバッグする最も簡単な方法

同僚から、一時テーブルを使用して変数データを挿入して表示する方法を教わったことがありますが、この方法...

相対幅と絶対幅が競合する場合の HTML+CSS div ソリューション

相対幅と絶対幅が競合する場合のdivソリューション概要: 一般的に、絶対幅を使用する場合は px を...

MySQL最適化ツール(推奨)

序文今日 GitHub を閲覧していたところ、SQL を最適化および書き換えるための sora とい...

MySQL 8.0.17 をインストールしてリモート アクセスを構成する方法

1. インストール前の準備データベースのバージョンを確認するコマンド: mysql --versio...

ページ切り替え効果を実現するJSコード

この記事の例では、ページ切り替え効果を実現するためのJSコードの具体的なコードを参考までに共有してい...

JS を使用してクリップボード内の Excel コンテンツを解析する方法

目次序文1. イベントとクリップボードを貼り付ける2. クリップボード内のコンテンツ形式3. HTM...

MySQL 8.0 が起動できない 3534 の解決策

MySQL 8.0 サービスを開始できません最近、 cmdで MySQL サービスを起動するときに遭...

Docker5フル機能の港湾倉庫構築プロセス

Harbor は、Docker イメージを保存および配布するためのエンタープライズ レベルのレジスト...

N キロメートル以内のデータを検索する MySQL の簡単な例

地球の円周率と半径、検索ポイントの経度と緯度から、検索ポイントと検索データテーブル間の距離はNキロメ...