Rumah >pangkalan data >tutorial mysql >Ralat Import MySQL: Tablespace Wujud Tetapi Jadual Tiada?

Ralat Import MySQL: Tablespace Wujud Tetapi Jadual Tiada?

Barbara Streisand
Barbara Streisandasal
2024-12-01 13:07:10966semak imbas

MySQL Import Error: Tablespace Exists But Table Doesn't?

Ralat: Ruang meja untuk jadual wujud. Sila BUANG ruang meja sebelum IMPORT

Soalan:

Pengguna MySQL menghadapi percubaan ralat untuk mencipta jadual yang wujud sebelum ini. Mesej ralat menunjukkan bahawa ruang jadual untuk jadual telah wujud dan mereka harus membuangnya sebelum mengimport. Walau bagaimanapun, apabila cuba menjatuhkan jadual atau membuang ruang jadual, mesej ralat menyatakan bahawa jadual itu tidak wujud. Apakah yang boleh menyebabkan isu ini?

Jawapan:

Ralat ini biasanya berlaku apabila berjalan dalam mod 'innodb_file_per_table' dan menghadapi ralat 'tablespace full'. Ruang meja pelayan pangkalan data ditakrifkan oleh tetapan innodb_data_file_path, yang boleh dihadkan secara lalai.

Dalam kes sedemikian, kemungkinan besar fail .ibd yatim wujud tanpa fail .frm pengiringnya dalam direktori OS di mana fail- per-table disimpan (biasanya /var/lib/mysql atau /usr/local/var/mysql).

Penyelesaian:

Untuk menyelesaikan isu:

  1. Cari fail .ibd yatim piatu dalam direktori tempat fail-per-jadual disimpan.
  2. Alihkan fail .ibd ke peti keselamatan lokasi sementara (cth., /tmp/mysql_orphans).

Contoh:

$ ls /var/lib/mysql

table1.frm
table1.idb
table2.frm
table2.idb
table3.idb  <-- problem table, no table3.frm
table4.frm
table4.idb

$ mkdir /tmp/mysql_orphans
$ mv /var/lib/mysql/table3.ibd /tmp/mysql_orphans/

Nota: Pastikan sebarang punca asas , seperti pertanyaan lama atau jadual terkunci, telah diselesaikan untuk mengelakkan .ibd yatim piatu selanjutnya fail daripada dicipta.

Atas ialah kandungan terperinci Ralat Import MySQL: Tablespace Wujud Tetapi Jadual Tiada?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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