2013-07-18 33 views
1

我拥有一台运行第三方软件的机器。我将数据输入到该软件中,并将该数据存储到它自己的mysql数据库中。 我想直接查询mysql数据库,但我不知道该应用程序正在使用的凭据通过物理访问机器获取对mysql的访问

我已阅读并写在机器所有文件,包括在MySQL数据目录中的文件访问。理论上,我应该能够直接从这些文件(.ibd和.frm文件)读取数据。但实际上,我不知道从哪里开始。我认为这些数据文件有点可读性,因为加密它们会破坏它们的索引能力。

这可行吗?或者我是否必须对数据文件格式进行反向工程才能读取它?

甚至更​​好 - 是否有一些配置文件,我可以改变这将隐式信任所有本地连接类似于postgres?

回答

1

你可以直接读取mysql文件,但即使它们现在被加密,列名也可能是奇怪的,你可能需要花一些时间阅读它们。

还有一点可以从软件中寻找配置文件,这可能有登录/密码

而最好的是(非常非常低的概率,但谁知道?):

  1. 使MySQL文件的备份

  2. 在另一个MySQL安装目录/计算机(不打断你的软件),按照reset mysql password guide

1

尝试通过命令行的本地计算机上访问它:

shell> mysql db_name 

(从MySQL documentation

从这里,你可以,如果你需要从其他客户端软件连接自己创建一个帐户。

或者你已经尝试过吗?

1

如果您拥有运行MySQL的计算机的root用户访问权限,那么您可以按照以下过程重置MySQL root密码:http://www.cyberciti.biz/tips/recover-mysql-root-password.html。重置根密码后,您可以以root用户身份登录到MySQL,并访问任何数据库并查询它们。唯一需要注意的是,更改MySQL根密码可能会阻止您的应用程序访问MySQL数据库,但这会让您感到意外,因为应用程序应该设计为使用MySQL用户帐户连接到数据库(具有有限特权)除了MySQL根用户以外。

+2

请首选链接到[原始来源](http://dev.mysql.com/doc/refman/5.6/en/resetting-permissions.html)。 – RandomSeed