Mysql搬移,数据表出问题,怎么修复?
是通过复制、粘贴mysql的整个data文件夹进行恢复数据的
现在发现MyISAM类型的表都是正常的。
但是有个数据库能列出数据表,但是点击表之后就说:
#1146 - Table 'eval.class' doesn't exist
怎么修复?
回复讨论(解决方案)
只有 MyISAM类型 的表可以通过拷贝文件进行迁移
其他类型的表都必须通过迁移工具迁移
拷贝全了没有? 里面的ibdata1文件拷贝了没有?
直接拷贝 ibdata1 是不妥当的
1、他会覆盖目标数据库的否写表数据
2、把原库的垃圾也带过来了
3、会因磁盘格式的不同等原因,在创建数据块索引时发生错误,无法修复时就废掉了
ibdata1也拷贝了。
有frm文件也不能修复或拿到部分数据么?
先停止 mysql 服务
用命令行方式启动 mysql
你会看到有关文件修复的各种信息
我以前也做过这种在两个 mysql 下直接拷贝文件的事情,但总是没能完美的处理成功
后来都是用指派 datadir 和 innodb_data_file_path 来完成不同 mysql 下数据共享的
你或许可以这样做:在原来的 mysql 中把 innodb 的表转换成 MyISAM 的表(管理工具中只是点点鼠标而已)
将转换后的 MyISAM 表拷贝到目标位置,然后在转换成 innodb
为什么不用mysqldump来做?如果两个mysql版本不一致,可能还需要工具修复下导出的sql文件
直接copy文件夹这种不可取
先停止 mysql 服务
用命令行方式启动 mysql
你会看到有关文件修复的各种信息
我以前也做过这种在两个 mysql 下直接拷贝文件的事情,但总是没能完美的处理成功
后来都是用指派 datadir 和 innodb_data_file_path 来完成不同 mysql 下数据共享的
你或许可以这样做:在原来的 mysql 中把 innodb 的表转换成 MyISAM 的表(管理工具中只是点点鼠标而已)
将转换后的 MyISAM 表拷贝到目标位置,然后在转换成 innodb
原来的mysql已经没了,只有备份文件了,可以恢复吗?
那原来的 mysql 的版本号是多少?
给个链接,看看对你是否有帮助 http://www.baidu.com/s?wd=innodb+frm%E6%96%87%E4%BB%B6%E6%A0%BC%E5%BC%8F&ie=utf-8
给个链接,看看对你是否有帮助 http://www.baidu.com/s?wd=innodb+frm%E6%96%87%E4%BB%B6%E6%A0%BC%E5%BC%8F&ie=utf-8
感谢!
已经可以了
老版本的数据文件和表文件是在data目录下的
新版本的数据文件在mysql目录下,表文件在data目录下
移动一下ibdata1文件就可以了。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



MySQL sesuai untuk pemula kerana mudah dipasang, kuat dan mudah untuk menguruskan data. 1. Pemasangan dan konfigurasi mudah, sesuai untuk pelbagai sistem operasi. 2. Menyokong operasi asas seperti membuat pangkalan data dan jadual, memasukkan, menanyakan, mengemas kini dan memadam data. 3. Menyediakan fungsi lanjutan seperti menyertai operasi dan subqueries. 4. Prestasi boleh ditingkatkan melalui pengindeksan, pengoptimuman pertanyaan dan pembahagian jadual. 5. Sokongan sokongan, pemulihan dan langkah keselamatan untuk memastikan keselamatan data dan konsistensi.

Navicat sendiri tidak menyimpan kata laluan pangkalan data, dan hanya boleh mengambil kata laluan yang disulitkan. Penyelesaian: 1. Periksa Pengurus Kata Laluan; 2. Semak fungsi "Ingat Kata Laluan" Navicat; 3. Tetapkan semula kata laluan pangkalan data; 4. Hubungi pentadbir pangkalan data.

Buat pangkalan data menggunakan Navicat Premium: Sambungkan ke pelayan pangkalan data dan masukkan parameter sambungan. Klik kanan pada pelayan dan pilih Buat Pangkalan Data. Masukkan nama pangkalan data baru dan set aksara yang ditentukan dan pengumpulan. Sambung ke pangkalan data baru dan buat jadual dalam penyemak imbas objek. Klik kanan di atas meja dan pilih masukkan data untuk memasukkan data.

Lihat pangkalan data MySQL dengan arahan berikut: Sambungkan ke pelayan: MySQL -U Pengguna Nama -P Kata Laluan Run Show pangkalan data; Perintah untuk mendapatkan semua pangkalan data yang sedia ada Pilih pangkalan data: Gunakan nama pangkalan data; Lihat Jadual: Tunjukkan Jadual; Lihat Struktur Jadual: Huraikan nama jadual; Lihat data: pilih * dari nama jadual;

Menyalin jadual di MySQL memerlukan membuat jadual baru, memasukkan data, menetapkan kunci asing, menyalin indeks, pencetus, prosedur tersimpan, dan fungsi. Langkah -langkah khusus termasuk: mewujudkan jadual baru dengan struktur yang sama. Masukkan data dari jadual asal ke dalam jadual baru. Tetapkan kekangan utama asing yang sama (jika jadual asal mempunyai satu). Buat indeks yang sama. Buat pencetus yang sama (jika jadual asal mempunyai satu). Buat prosedur atau fungsi yang disimpan yang sama (jika jadual asal digunakan).

Navicat untuk MariaDB tidak dapat melihat kata laluan pangkalan data secara langsung kerana kata laluan disimpan dalam bentuk yang disulitkan. Untuk memastikan keselamatan pangkalan data, terdapat tiga cara untuk menetapkan semula kata laluan anda: Tetapkan semula kata laluan anda melalui Navicat dan tetapkan kata laluan yang kompleks. Lihat fail konfigurasi (tidak disyorkan, risiko tinggi). Gunakan alat baris perintah sistem (tidak disyorkan, anda perlu mahir dalam alat baris arahan).

Salin dan tampal di MySQL termasuk langkah -langkah berikut: Pilih data, salin dengan Ctrl C (Windows) atau Cmd C (Mac); Klik kanan di lokasi sasaran, pilih Paste atau gunakan Ctrl V (Windows) atau CMD V (MAC); Data yang disalin dimasukkan ke dalam lokasi sasaran, atau menggantikan data sedia ada (bergantung kepada sama ada data sudah ada di lokasi sasaran).

Langkah -langkah untuk melaksanakan SQL di Navicat: Sambungkan ke pangkalan data. Buat tetingkap editor SQL. Tulis pertanyaan SQL atau skrip. Klik butang Run untuk melaksanakan pertanyaan atau skrip. Lihat hasilnya (jika pertanyaan dilaksanakan).
