我有一个旧的服务器备份MySQL数据文件在/ var / lib / mysql,我需要访问该目录内的数据库之一的数据。 我不幸的是没有任何数据库的SQL转储。 只有这些文件。
备份的文件来自版本为5.0.51a的MySQL服务器,当前的服务器版本为5.1.49。
我试图明显地停止MySQL服务器,将数据库目录从my / backup / folder / databasename复制(同时保留权限)到/ var / lib / mysql / databasename,然后再次启动MySQL服务器。 这创build了数据库,但他们在哪里空着。
我如何提取数据?
(我在Debian系统上运行服务器)
如果您只是将数据文件复制到不同的版本,这可能会导致问题长期。 这通常是强烈的不鼓励。 要做到这一点的正确方法是在某处安装5.0.51a,将数据文件复制到那里,做一个转储并在5.1上导入它们。
我发现解决scheme是文件有错误的所有权之后:
sudo chown mysql:mysql -R /var/lib/mysql/databasename
Everthing工作正常。