MariaDB (MySQL)出现 table doesn’t exist in engine 错误

在自己的电脑上搭建了一个 Joomla 网站,之后准备移到正式环境,将各项内容一个一个复制过去后,却遇到无法打开网站的问题,抽丝剥茧后,范围缩小到数据库的问题,以往使用 MySQL 时,只要将 data 目录下的文件复制过去,就可以完成迁移,这次却无法这样做,必須使用其他資料庫工具做匯出再匯入才行。以往就有看過文章,建議資料的備份還原最好用匯出/入的方式,別用複製貼上,這下總算遇到問題,因此便想瞭解原因何在,在反覆測試並上網搜尋後,總算找出癥結點。

  出現這種情形倒也不是MariaDB的關係而是InnoDB這個資料庫引擎以往舊的MySQL主要採MyISAM引擎資料庫檔案有.MYD(資料)與.MYI(索引)兩個型式此架構用複製貼上就不會有什麼問題而被新版MariaDB與MySQL採用的InnoDB引擎則是.frm與.ibd若要使用複製貼上的方式備份除了備份以上檔案外還需將data目錄底下的ibdata1也複製才能正確復原

【参考链接】

留下回复

您的电子邮件地址不会被公开. 必填项已标注 *

本网站使用 Akismet 来减少垃圾评论. 了解您的评论数据如何被处理.