データのバックアップと復元パート2は次のとおりです 基本的な概念: バックアップ、現在のデータまたはレコードの別のコピーを保存します。 復元: データをバックアップ時の状態に復元します。 なぜデータのバックアップと復元が必要なのでしょうか? データの損失を防ぎ、データ レコードを保護します。 データのバックアップと復元にはさまざまな方法があり、データ テーブル バックアップ、単一テーブル データ バックアップ、SQL バックアップ、増分バックアップに分けられます。 単一テーブルデータのバックアップ 単一テーブル データのバックアップでは、一度に 1 つのテーブルのみをバックアップでき、テーブル構造ではなくデータのみをバックアップできます。 一般的な使用シナリオは、テーブル内のデータをファイルにエクスポートすることです。 バックアップ方法: テーブルからデータの一部を選択し、外部ファイルに保存します。 select */field list + into outfile + 'ファイル ストレージ パス' + from data source; ここで、単一テーブル データ バックアップを使用するための前提条件は、エクスポートされた外部ファイルが存在しない、つまり、ファイル ストレージ パスの下のファイルが存在しないことです。 テストするには次の SQL ステートメントを実行します。 -- 単一テーブル データのバックアップ select * into outfile 'D:/CoderLife/testMySQL/class.txt' from class; 上図に示すように、SQL ステートメントは正常に実行されました。ここで、次のような状況に遭遇した場合: エラー 1290 (HY000) : MySQL サーバーは –secure-file-priv オプションで実行されているため、このステートメントを実行できません。 このエラーは、「 MySQL データをエクスポートするときに発生する secure-file-priv 問題の詳細」を読むことで解決できます。 クラス テーブル内のデータが実際に指定された場所にエクスポートされているかどうかを確認するには、次のパスで確認できます。 上の図に示すように、クラス テーブル内のデータがローカル コンピューターにエクスポートされていることがわかります。ただし、ここで特に注意する必要があることが 1 つあります。それは、データベースからエクスポートされたファイルの場合、文字化けを防ぐために EditPlus などの編集ツールで開く方がよいということです。 さらに、テーブル内のデータをエクスポートするために使用される上記の SQL 構文では、実際には問題なく書き込み順序を逆にすることができます。次に例を示します。 select */field list + from data source + into outfile + 'ファイル保存パス'; テストするには次の SQL ステートメントを実行します。 -- 単一テーブル データのバックアップ select * from class into outfile 'D:/CoderLife/testMySQL/class2.txt'; 次に、単一テーブル データのバックアップに関する高度な操作、つまり、フィールドと行の処理方法を指定する方法について説明します。 基本構文: select */field list + into outfile + 'ファイル ストレージ パス' + fields + フィールド処理 + 行 + 行処理 + from data source; フィールド処理: 囲む内容: フィールドを囲む内容を指定します。デフォルトは空の文字列です。 終了: フィールドの終了を指定します。デフォルトは \t (Tab キー) です。 エスケープ方法: 特殊記号の処理方法を指定します。デフォルトは \\ で、これはバックスラッシュ エスケープです。 行処理: 開始: 各行の始まりを指定します。デフォルトは空の文字列です。 終了文字: 各行の終了文字を指定します。デフォルトは改行文字 \r\n です。 テストするには次の SQL ステートメントを実行します。 --単一テーブルデータのバックアップ処理方法を指定します。select * into outfile 'D:/CoderLife/testMySQL/class3.txt' -- フィールド処理フィールド '"' で囲まれている '|' で終了 行 「START:」で始まる クラスから; 上の図に示すように、エクスポートされたファイル class3.txt は指定した形式に従って出力されていることがわかります。これまで、単一テーブル データのバックアップのさまざまな方法をテストしてきました。今度は、データを削除してデータを復元します。つまり、外部データをデータ テーブルに復元します。ただし、単一テーブルデータのバックアップではデータのバックアップしかできないため、テーブル構造が存在しない場合は復元できません。 基本構文: データのロード infile + 'ファイル ストレージ パス' + into table + テーブル名 + [フィールド リスト] + フィールド + フィールド処理 + 行 + 行処理; テストするには次の SQL ステートメントを実行します。 -- クラス テーブルのデータを削除します。delete from class; -- クラス テーブルのデータを表示します。select * from class; -- クラス テーブル内のデータを復元します。load data infile 'D:/CoderLife/testMySQL/class3.txt' テーブルクラスに -- フィールド処理フィールド '"' で囲まれている '|' で終了 行 'START:' で始まります。 -- クラス テーブルのデータを表示します。select * from class; 上の図に示すように、テーブルクラスのデータを削除した後、データが正常に復元されたことがわかります。 ヒント: 記号 [] で囲まれた内容はオプション項目を示し、記号 + は接続を意味します。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Docker を使用して MySQL 5.7 および 8.0 マスター スレーブ クラスターをデプロイする方法
>>: Vue2.0/3.0双方向データバインディングの実装原理の詳細説明
目次1. 手順2. 修飾語3. .sync 修飾子4. まとめ1. 手順指示とは命令です。文字通りの...
1. pc-reset PCスタイルの初期化 /* 正規化.css */ html{ 行の高さ: 1...
1. 簡単なJavaプログラムを書く パブリッククラステストシェル{ パブリック静的voidメイン(...
注: この表はW3Schoolチュートリアルから引用したものです疑似要素の分類と機能: 入力選択スタ...
MySQL は、膨大なユーザーベースを持つ無料のリレーショナル データベースです。この記事では、My...
この記事の例では、Element+vueを使用して開始と終了の時間制限を実装するための具体的なコード...
鉛Web ページ上の一般的な三角形の一部は、画像やフォント アイコンにする必要なく、CSS を使用し...
この記事の例では、ページング効果表示を実現するためのミニプログラムの具体的なコードを参考までに共有し...
この記事では、Ubuntuサーバーバージョンのインストールグラフィックチュートリアルを参考までに紹介...
目次1. 再出発1.1. ストア(司書) 1.2. 状態(書籍) 1.3. アクション(図書貸出リス...
この記事の例では、JavaScriptで等速アニメーションを実装するための具体的なコードを参考までに...
Dockerをインストールするyumパッケージを最新バージョンに更新します: sudo yum up...
目次1. JS オブジェクトDOM –1、機能–2、テスト3. jQuery –1. 概要–2、使用...
マインドマップ彼はおそらく次のように見えるでしょう: インターネット上の実装のほとんどは d3.js...
目次問題の説明:原因分析:解決:補足: Reactでは、フックが使用されている場合、useState...