ホームページ > データベース > mysql チュートリアル > Chrome と IBD ファイルのみから MySQL テーブル構造を復元できますか?

Chrome と IBD ファイルのみから MySQL テーブル構造を復元できますか?

Barbara Streisand
リリース: 2025-01-07 19:06:41
オリジナル
403 人が閲覧しました

Can We Recover MySQL Table Structure from FRM and IBD Files Only?

FRM および IBD ファイルのみから MySQL テーブル構造を復元します

質問:

ユーザーは、データベースを復元する必要があるにもかかわらず、FRM ファイルと IBD ファイルにしかアクセスできない状況に遭遇することがよくあります。

テーブル構造は復元できますか?

はい、IB_LOG ファイルがなくても、FRM ファイルからテーブル構造を復元できます。

手順:

1.FRM ファイルから SQL 作成ステートメントを抽出します:

  • MySQL ユーティリティをインストールします。
  • mysqlfrm --diagnostic コマンドを使用して、各FRMファイルのSQL作成ステートメントを生成します。
  • 出力には次のようなステートメントが含まれます:
CREATE TABLE `example_table` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(150) NOT NULL,
  `photo_url` varchar(150) NOT NULL,
  `password` varchar(600) NOT NULL,
  `active` smallint(6) NOT NULL,
  `plan` int(11) NOT NULL,
  PRIMARY KEY `PRIMARY` (`id`)
) ENGINE=InnoDB;
ログイン後にコピー

2. SQL ステートメントを使用してテーブルを作成します:

  • 既存のテーブルを削除します (必要な場合)。
  • 手順 1 で取得した SQL create ステートメントを実行して、元のテーブルと同じ構造のテーブルを作成します。

3. データを復元します:

  • 次のコマンドを使用して、新しいテーブル データを削除します:
ALTER TABLE example_table DISCARD TABLESPACE;
ログイン後にコピー
  • テーブルディレクトリ内の対応する IBD ファイルを削除します。
  • 元の IBD ファイルをディレクトリにコピーします:
cp backup/example_table.ibd /path/to/example_table.idb
ログイン後にコピー
  • IBD ファイルに正しい所有権と権限があることを確認してください。
  • 古いデータをインポート:
ALTER TABLE example_table IMPORT TABLESPACE;
ログイン後にコピー

以上がChrome と IBD ファイルのみから MySQL テーブル構造を復元できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート