昨晚,我在 Ubuntu 上运行的 MySQL 数据库发生了一些问题,无论我做什么,我都无法让它启动。 我最终不得不备份 /var/lib/mysql 文件夹并完全擦除并重新安装 MySQL 8。重新安装 MySQL 后,它加载正常。 当然,我的数据库都不存在。
除了文件夹的备份之外,我确实有1.5年前的正确备份文件(是的,我知道。我自己的错。说来话长,为什么我在这里失败了,但值得注意的是,这是一台个人机器,而不是一个word数据库.).
我最初导入了这些备份,以便数据库存在。 然后,我尝试在 MySQL 未运行的情况下,将我从 mysql 文件夹保存的 IBD 文件复制回正确的位置。 问题是,当我去检查这些时,它告诉我“错误 1812 (HY000):表
DATABASE
缺少表空间。TABLE
。”
有什么想法或建议吗? 到目前为止我已经为此苦苦挣扎了 4 个小时。
谢谢!
我相信我已经解决了。 我一直在尝试 ALTER TABLE IMPORT TABLESPACE,但是我错过了运行 CHOWN 以使用户 mysql 成为复制的 ibd 文件的所有者所需的内容。一旦我执行了 CHOWN,我就可以导入表空间,它似乎正在工作。