我最近用SuperDuper备份了整个笔记本电脑硬盘,并重新安装了Snow Leopard。因为我做了图像克隆,所以能够还原所有文件而不会丢失任何数据。进行硬盘克隆。
但是,我忘了做的一件事是对所有MySQL数据库进行转储。真是的 由于MySQL的存储特性,我不能只拖放数据库和表,而是将所有数据锁定在服务器中。
当我挂载克隆的映像时,我可以导航到/Volumes/laptop/usr/local/mysql/var
(因为我已经将MySQL安装到了/usr/local/mysql
),并且可以看到我的所有数据库都列为目录,其中包含随机文件,这似乎很有希望。
如何恢复所有我忘记转储的数据库?有没有一种方法可以将var/
文件夹还原到我全新的全新MySQL安装中,并(希望)维护所有用户和特权?我可以复制该目录并使所有工作正常吗?
/usr/local/mysql/var
,因此我将原始文件夹复制到了我的新安装文件中(而不是整个/usr/local/mysql
目录,而是整个目录中var
),并确保mysql用户可以访问它(sudo chown -R mysql /usr/local/mysql/var
)。最棘手的部分是告诉MySQL查看它。一旦运行install_db脚本(/usr/local/mysql/bin/mysql_install_db --user=_mysql
),一切都将正常运行。惊人!