Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Tabel InnoDB ada di MySQL tetapi mengatakan mereka tidak ada setelah menyalin database ke server baru

Alasan "tampilkan tabel;" berfungsi karena mysqld akan memindai direktori database hanya untuk file .frm. Selama mereka ada, ia melihat definisi tabel.

Jika Anda mengimpor data ke MySQL dan pesan kesalahan ini terjadi, hal pertama yang akan segera saya lakukan adalah menjalankan perintah ini:(BTW Ini adalah MySQL 5.1.45, tetapi tetap berfungsi di MySQL 5.x)

mysql> show engines;
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine     | Support | Comment                                                        | Transactions | XA   | Savepoints |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| BLACKHOLE  | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| CSV        | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| FEDERATED  | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| ARCHIVE    | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance         | NO           | NO   | NO         |
+------------+---------+----------------------------------------------------------------+--------------+------+------------+
8 rows in set (0.00 sec)

Jika server tempat Anda mengimpor data mengatakan InnoDB dinonaktifkan, maka Anda memiliki masalah besar. Inilah yang harus Anda lakukan:

1) Jatuhkan semua Data dari Server DB Impor Baru

2) Bersihkan Penyiapan InnoDB

3) jalankan SHOW ENGINES; dan pastikan InnoDB beroperasi penuh!!!

4) Muat ulang mysqldump ke server impor baru

Cobalah !!!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kembalikan Hanya Nilai Numerik di MySQL

  2. Mengonversi MySQL ke Pembuat Kueri Doktrin. Masalah dengan JIKA dan CONCAT. Atau pendekatan lain untuk subkueri pada pilih

  3. innodb_lock_wait_timeout menambah batas waktu

  4. MYSQL:cara menyusun ulang tabel

  5. Bagaimana cara kerja injeksi SQL dan bagaimana cara melindunginya?