史上最もシンプルな 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コンテナのログ分析

推薦する

MySQL 8.0.12 解凍版インストールチュートリアル個人テスト!

Mysql8.0.12 解凍版のインストール方法をテストしましたので、ご参考までに1. ダウンロー...

要素 DateTimePicker+vue ポップアップボックスに時間のみが表示される問題を解決する

3つの知識ポイント: 1. CSS子孫セレクターhttps://www.w3school.com.c...

JavaScriptカルーセルの実装について

今日もとても実践的な事例です。名前を聞くだけで高度で難しそうですよね?今日はカルーセル画像の真髄を簡...

ウェブデザインの仕事に応募する方法

<br />みなさんこんにちは!ここで皆さんとチャットできて光栄です! (*^__^*)...

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

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

32 典型的な列/グリッドベースのウェブサイト

列ベースの Web デザインのインスピレーションをお探しの場合は、32 個のクラシックな列/グリッド...

bash スクリプトで ssh/scp コマンドにパスワードを渡す方法の詳細な説明

SSHPASSをインストールする最新のオペレーティング システムでは、sshpass パッケージはデ...

Vue3 + TypeScript 開発の概要

目次Vue3 + TypeScript 学習1. 環境設定1.1 最新のVue scaffoldin...

MySql 共通クエリコマンド操作リスト

MYSQL でよく使用されるクエリ コマンド: mysql> select version()...

MYSQL メタデータ ロック (MDL ロック) の理論とロック タイプ テスト

目次MYSQL メタデータ ロック (MDL ロック) 学習理論とロック タイプ テスト1. 予備的...

Vue+canvas は、ウォーターフォール チャートを上から下までリアルタイムに更新する効果を実現します (QT と同様)

早速ですが、デモ画像をご紹介します。実装されている機能は、左側に凡例、右側にウォーターフォール チャ...

フィールドの文字セットの違いによる MySQL のインデックス失敗の解決策

インデックスとは何ですか?なぜインデックスを作成するのですか?インデックスは、列に特定の値を持つ行を...

Linux crontab コマンドの使用

1. コマンドの紹介contab (cron テーブル) コマンドは、Windows のスケジュール...

html2canvas を使用して HTML コードを画像に変換する方法

コードを画像に変換するにはhtml2canvas は、ブラウザから Web ページのスクリーンショッ...

LinuxサーバーにGRUBをインストールする手順

Linux サーバーに GRUB をインストールする方法クラウド移行ツールを使用して、CentOS ...