史上最もシンプルな MySQL データのバックアップと復元のチュートリアル (パート 1) (パート 35)

史上最もシンプルな MySQL データのバックアップと復元のチュートリアル (パート 1) (パート 35)

データのバックアップと復元に関する最初の記事を皆さんに共有します。具体的な内容は次のとおりです。

基本的な概念:

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

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

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

データ損失を防ぐ;
データレコードを保護します。

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

データテーブルのバックアップ

データ テーブルをバックアップするには、SQL を使用する必要はありません。データベース フォルダーに直接アクセスして、対応するテーブル構造とデータをコピーできます。データを復元する必要がある場合は、バックアップ (コピー) の内容を戻すだけです。

ただし、ストレージ エンジンが異なるため、データ テーブルをバックアップするには前提条件があります。

ストレージ エンジンとして、MySQL では主に InnoDB と Myisam の 2 種類が使用され、どちらも無料です。ここでは、ストレージ エンジンに関する知識も広めることができます。

その中でも、Myisam と InnoDB のデータ保存方法も異なります。

Myisam: テーブル、データ、インデックスはすべて別々に保存されます。
InnoDB: テーブル構造のみが存在し、すべてのデータは ibd ファイルに保存されます。

Myisam のデータ保存方法をテストするには、次の SQL ステートメントを実行します。

-- Myisam テーブルを作成する create table my_myisam(
 id 整数
)文字セット utf8 エンジン = myisam;

-- テーブル構造を表示します。show create table my_myisam;

-- データを挿入します insert into my_myisam values(1),(2),(3);

-- データを表示する select * from my_myisam;

1

上の図に示すように、ストレージ エンジンが Myisam である my_myisam という名前のデータ テーブルを作成しました。 Myisam のストレージ特性を確認するには、データ フォルダーに移動して、特定のデータ ストレージ状況を確認します。

1

上の図に示すように、テーブル my_myisam のみを作成しましたが、Myisam は次の 3 つのストレージ ファイルを生成します。

my_myisam.frm: テーブルの構造を保存します。
my_myisam.MYD: テーブルデータを格納します。
my_myisam.MYI: テーブルのインデックスを格納します。

ここで、これらの 3 つのファイルを testoo データベースにコピーします (MySQL データ ファイルの保存場所を見つける方法については、MySQL データ ファイルの保存場所を表示する詳細な方法を参照してください)。

1

テストするには次の SQL ステートメントを実行します。

-- データベースの使用を切り替えます testoo;

-- testoo データベース内のテーブルを表示します。show tables;

-- テーブル my_myisam を表示
my_myisam から * を選択します。

1

上の図に示すように、ファイルをコピーすることでデータ テーブルのバックアップが完了したことがわかります。

ここで注意すべき点が 1 つあります。InnoDB ストレージ エンジンによって生成された .frm ファイルと .idb ファイルを別のデータベースにコピーすることはできますが、show tables コマンドを使用してコピーされたテーブル名を表示することもできますが、データを取得することはできません。

1

テストするには次の SQL ステートメントを実行します。

-- testoo データベース内のテーブルを表示します。show tables;

-- テーブル my_class を表示
my_class から * を選択します。

1

上記のテストから、データ テーブルのバックアップ方法が Myisam ストレージ エンジンに適していることは明らかであり、バックアップ方法も非常に簡単です。Myisam ストレージ エンジンによって生成された 3 つのストレージ ファイル .frm、.MYD、.MYI を新しいデータベースにコピーするだけです。

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

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

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

<<:  Vueは商品詳細ページの商品タブ機能を実装します

>>:  Dockerコンテナのログ分析

推薦する

Vue の this.$router と this.$route の違いと push() メソッド

公式文書には次のように記されている。ルーターを挿入することで、どのコンポーネントでも this.$r...

Dockerfile における VOLUME と docker -v の違い

Dockerfile でのボリュームのマウントと docker -v コマンドによるマウントには明ら...

VMware 仮想マシンの 3 つの接続方法の例の分析

NATこのようにして、仮想マシンのネットワーク カードはホストの VMnet8 に接続されます。この...

FileZilla_Server:425 データ接続を開けない問題を解決する方法

FileZilla Serverをサーバーにインストールすると、425データ接続を開けない問題が発生...

Dockerコンテナでルート権限を取得する方法

まず、コンテナが稼働している必要がありますコンテナのCONTAINER IDは、sudo docke...

MySQL を使用して Excel でデータ生成を完了する方法

Excel は、データ分析に最もよく使用されるツールです。この記事では、MySQL と Excel ...

Linux nlコマンドの使い方

1. コマンドの紹介nl (行数) は指定されたファイルに行番号を追加し、標準出力に書き込みます。フ...

CSS ウェイト値(カスケード)の例の詳細な説明

•CSSには多くのセレクターがあります。複数のセレクターを同じ要素に適用するとどうなるでしょうか? ...

Python ベースの Linux システムにおける特定のプロセスのパフォーマンス監視の考え方の詳細な説明

インターネット上には Linux サーバーを監視するためのツール、コンポーネント、プログラムが多数あ...

MySQL外部キーの3つの関係例の詳細な説明

この記事では、例を使用して、MySQL 外部キーの 3 つの関係について説明します。ご参考までに、詳...

Vue router-viewとrouter-linkの実装原理

使用 <div id="アプリ"> <router-link ...

React コードを共有するためのベストプラクティス

プロジェクトがある程度複雑になると、必然的にロジックの再利用の問題に直面することになります。 Rea...

Docker 基本チュートリアル: Dockerfile 構文の詳細な説明

序文Dockerfile は Docker プログラムによって解釈されるスクリプトです。Docker...

Node.js とブラウザのグローバル オブジェクトの違いの概要

Node.js では、.js ファイルは完全なスコープ (モジュール) です。したがって、var に...

クールな花火効果を実現するjs

この記事では、jsを使用してクールな花火効果を実現するための具体的なコードを参考までに共有します。具...