我们在 Azure Windows 虚拟机中运行了一个 MySql 服务器。在过去的 6 个月里,我们没有使用它。但最近我们登录到虚拟机并尝试使用 MySql Work Bench 访问数据库。但它不接受密码,我们无法登录。因此,我们按照 MySql 文档(重置 Root 密码:Windows 系统)中的说明更改了 root 密码。
根据说明,执行了以下命令来重置密码:
CD C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe
mysqld --no-defaults --datadir="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\Data" --init-file=C:\\mysql-init.txt
运行命令后,我们能够取消密码并通过工作台以 Root 用户身份登录 Mysql。但是,除了在数据库中命名为“警告”的表之外,没有其他表。以下是 MySql Workbench 的屏幕截图。您可以看到“警告”表有四个字段,即 id、warning、Bitcoin_Address 和 email。但是没有这些字段的值的行。
有没有人知道这里到底发生了什么?有什么办法可以恢复丢失的表?我们没有对这些数据库进行任何其他备份。