2012-10-05 31 views
0

我继承了小型网络论坛的维护。据我所知,它靠后端的MySQL数据库提供支持(前端全是PHP)。从.sql文件探索数据库内容

我需要提取一些数据(也涉及到搜索我需要提取的数据),但我不想触摸生产数据库。我导出了一个数据库备份,它生成了几百兆字节的.sql文件。

挖掘这些数据的最佳方法是什么?我可以看到几个选项:

  • 通过的grep在文本模式下的.sql脚本,试图在sqlite3的提取相关数据
  • 加载它(我想这样做,但它barfed上的一些语句在脚本中并没有生成任何表格,尽管我没有任何数据库经验,所以我还没有将它排除在外)。
  • 在我的主页上安装MySQL,创建一个数据库并执行.sql脚本来重新创建数据。然后只需附加一些数据库浏览器工具
  • 寻找一些(Linux)应用程序,它可以本机地理解.sql文件(看起来似乎不太可能会在谷歌搜索之后)。

任何指向这些选项(或者我还没有想过的选项)的指针会是最有生产力的?

+3

除非.sql转储是多数据转储,否则您可以将这些内容重新导入到不同的数据库中,从而使生产内容保持不变。 –

+0

您可能想将其导入到mysql的实例中。无论这是您的家庭服务器,生产服务器上的不同数据库,共享主机帐户等,都是您的呼叫。 – grossvogel

回答

0

我想说任何选项都可以工作,但对于数据挖掘,您一定要将它加载到新的数据库中,以便您可以开始查询数据并构建数据报告。我会将它加载到您的主页框中。无需遥控。

+0

你能否详细说明为什么你认为这个解决方案是最好的?我对MySQL没有超级经验,我只想从数据库中获取一些数据(我意识到我可能不应该使用术语“数据挖掘”,因为这对于不同的人可能意味着不同的事情) 。所以我试图找到对我个人来说合适的答案。 – Nathan

+0

嗨Nathan。对不起,在这里拖延。 MySQL是一个非常简单的DB安装和设置。只需下载并安装社区版服务器: http://www.mysql.com/downloads/mysql/ 安装GUI工具: –

+0

安装GUI工具: http://dev.mysql.com/downloads/工作台/ 我想你会解析文件并试图理解它。问题是.sql文件主要是SQL代码,你将花费你大部分时间试图消除 - 而你可能需要一些时间,可能花费更少的时间来设置数据库的副本,并更多地浏览表格和数据富有成效。这也可以让您更灵活地管理数据。 考虑到您对MySQL数据库负责,我也可能是一个很好的/有趣的练习,并且知道如何管理它也无疑是有益的 –