我有一个用于业余项目的数据库服务器,有一天在服务器关闭期间 - 三个表被随机删除。但这些表的 .ibd 文件仍然存在。错误日志中也没有任何内容。
发生了什么?唯一具有删除权限的用户是 root 用户和 phpmyadmin 用户。该服务器是仅限 LAN 的服务器,无法从外部互联网访问。
是否可以从 .ibd 文件恢复表?自此之后我没有添加任何新表或插入新行。我正在运行 MySQl 8,因此没有可用的 .frm 文件。
我有一个用于业余项目的数据库服务器,有一天在服务器关闭期间 - 三个表被随机删除。但这些表的 .ibd 文件仍然存在。错误日志中也没有任何内容。
发生了什么?唯一具有删除权限的用户是 root 用户和 phpmyadmin 用户。该服务器是仅限 LAN 的服务器,无法从外部互联网访问。
是否可以从 .ibd 文件恢复表?自此之后我没有添加任何新表或插入新行。我正在运行 MySQl 8,因此没有可用的 .frm 文件。
我知道发生了什么事。由于某种原因,数据目录恢复为默认设置,尽管它仍然在
/etc/mysql/mysql.conf.d/mysqld.cnf
. 当我只有一张表时,我将 datadir 从默认路径更改为自定义路径。因此,当它恢复时,我从那时起添加的所有表似乎都被删除了。为了解决这个问题,我添加了
到
/etc/mysql/my.cnf
文件。我仍然不知道 datadir 恢复为默认值的原因,也许是启动时辅助驱动器的安装问题?