84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
PMA でデータベースを復元しようとしていますが、アクセスできるのは frm ファイルと ibd ファイルのみです。必要な ib_log ファイルにはアクセスできません。
データベース データを回復できない可能性があることはわかっていますが、frm ファイルからテーブルの構造を回復することは可能ですか?
InnoDB ではデータ リカバリに ib_log ファイルが必要ですが、データ ディクショナリと、場合によってはテーブルの保留中のデータが含まれる ibdata1 ファイルも必要です。
データ ディクショナリは、テーブルの構造を記録し、テーブル ID をテーブル データを含む物理 .ibd ファイルと照合する繰り返しシステムです。
InnoDB データ ディクショナリなしでは .ibd ファイルを移動することはできません。データ ディクショナリは .ibd ファイル内で見つかったテーブル ID と一致する必要があります。.ibd ファイルを再添付してデータを回復することはできますが、このプロセスは気の弱い人向けではありません。http://www.chriscalender.com/ibd ファイルのみからの innodb テーブルの回復/を参照してください。
http://www.percona.com/blog/2008/12/17/recovering-create-table-statement-from-frm-file/" percona.com/blog/2008/12/17/recovering- frm ファイルからテーブル ステートメントを作成/
.frmおよび.idbファイルからのみテーブルを復元しました。
.frm
.idb
テーブルのスキーマがすでにわかっている場合は、この手順をスキップできます。
まず、MySQL ユーティリティをインストールします。 これで、コマンド プロンプト (cmd) でmysqlfrmコマンドを使用できるようになります。
mysqlfrm
2 番目に、mysqlfrmコマンドを使用して、.frmファイルから SQL クエリを取得します。 ああああ
テーブルの作成
古いデータがまだ存在する場合は、最初に対応するデータベースとテーブルを削除する必要がある場合があります。データ ファイルのバックアップがあることを確認してください。
次のクエリを実行して新しいテーブル データを削除します:
ファイルと (新しい空の)
ファイル間の接続が削除されます。また、フォルダー内の.idbファイルも削除します。次に、古い.idbファイルを新しいフォルダーに置きます。例:
mysqlユーザーが
mysql
ファイルを読み取れることを確認します。たとえば、フォルダー内で chown -R mysql:mysql *.ibdを実行します。次のクエリを実行して古いデータをインポートします:リーリー これにより、
を実行します。
次のクエリを実行して古いデータをインポートします:
ファイルからデータがインポートされ、データが復元されます。
InnoDB ではデータ リカバリに ib_log ファイルが必要ですが、データ ディクショナリと、場合によってはテーブルの保留中のデータが含まれる ibdata1 ファイルも必要です。
データ ディクショナリは、テーブルの構造を記録し、テーブル ID をテーブル データを含む物理 .ibd ファイルと照合する繰り返しシステムです。
InnoDB データ ディクショナリなしでは .ibd ファイルを移動することはできません。データ ディクショナリは .ibd ファイル内で見つかったテーブル ID と一致する必要があります。.ibd ファイルを再添付してデータを回復することはできますが、このプロセスは気の弱い人向けではありません。http://www.chriscalender.com/ibd ファイルのみからの innodb テーブルの回復/を参照してください。
.frm ファイルを使用して、いくつかのファイルトリックを使用して構造を復元することはできますが、そもそもそれらを InnoDB テーブルとして作成することはできません。 .frm ファイルを MyISAM テーブルに復元する方法を説明したブログは次のとおりです。http://www.percona.com/blog/2008/12/17/recovering-create-table-statement-from-frm-file/" percona.com/blog/2008/12/17/recovering- frm ファイルからテーブル ステートメントを作成/
これには PMA を使用できません。サーバー上のデータ ディレクトリへのスーパーユーザー アクセスが必要です。.frm
および.idb
ファイルからのみテーブルを復元しました。テーブルの作成に使用される SQL クエリを取得します
テーブルのスキーマがすでにわかっている場合は、この手順をスキップできます。
まず、MySQL ユーティリティをインストールします。 これで、コマンド プロンプト (cmd) で
mysqlfrm
コマンドを使用できるようになります。2 番目に、
mysqlfrm
コマンドを使用して、.frm
ファイルから SQL クエリを取得します。 ああああテーブルの作成
上記の SQL クエリを使用してテーブルを作成します。
古いデータがまだ存在する場合は、最初に対応するデータベースとテーブルを削除する必要がある場合があります。データ ファイルのバックアップがあることを確認してください。
###データ復旧###次のクエリを実行して新しいテーブル データを削除します:
リーリーこれにより、新しい
.frmファイルと (新しい空の)
.idbファイル間の接続が削除されます。また、フォルダー内の
リーリー.idb
ファイルも削除します。次に、古い
.idb
ファイルを新しいフォルダーに置きます。例:
.ibdmysql
ユーザーがファイルを読み取れることを確認します。たとえば、フォルダー内で chown -R mysql:mysql *.ibd
.idbを実行します。
次のクエリを実行して古いデータをインポートします:
リーリー これにより、ファイルからデータがインポートされ、データが復元されます。