Rumah > pangkalan data > tutorial mysql > Bolehkah Kami Pulihkan Struktur Jadual MySQL daripada Fail FRM dan IBD Sahaja?

Bolehkah Kami Pulihkan Struktur Jadual MySQL daripada Fail FRM dan IBD Sahaja?

Barbara Streisand
Lepaskan: 2025-01-07 19:06:41
asal
332 orang telah melayarinya

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

Pulihkan struktur jadual MySQL daripada fail FRM dan IBD sahaja

Soalan:

Pengguna sering menghadapi situasi di mana mereka perlu memulihkan pangkalan data tetapi hanya boleh mengakses fail FRM dan IBD.

Bolehkah struktur meja dipulihkan?

Ya, struktur jadual boleh dipulihkan daripada fail FRM walaupun tanpa fail IB_LOG.

Langkah:

1. Ekstrak pernyataan penciptaan SQL daripada fail FRM:

  • Pasang Utiliti MySQL.
  • Gunakan perintah mysqlfrm --diagnostic untuk menjana penyata cipta SQL untuk setiap fail FRM.
  • Output akan mengandungi pernyataan yang serupa dengan:
<code class="language-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;</code>
Salin selepas log masuk

2. Gunakan pernyataan SQL untuk mencipta jadual:

  • Padam mana-mana jadual sedia ada (jika perlu).
  • Laksanakan pernyataan ciptaan SQL yang diperoleh dalam langkah 1 untuk mencipta jadual dengan struktur yang sama seperti jadual asal.

3. Pulihkan data:

  • Gunakan arahan berikut untuk memadam data jadual baharu:
<code class="language-sql">ALTER TABLE example_table DISCARD TABLESPACE;</code>
Salin selepas log masuk
  • Padam fail IBD yang sepadan dalam direktori jadual.
  • Salin fail IBD asal ke direktori:
<code class="language-bash">cp backup/example_table.ibd /path/to/example_table.idb</code>
Salin selepas log masuk
  • Pastikan fail IBD mempunyai pemilikan dan kebenaran yang betul.
  • Import data lama:
<code class="language-sql">ALTER TABLE example_table IMPORT TABLESPACE;</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bolehkah Kami Pulihkan Struktur Jadual MySQL daripada Fail FRM dan IBD Sahaja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan