我正在使用 MySQL 。
我有一个 mysql转储文件(large_data.sql),我可以创建一个数据库并将数据从这个转储文件加载到创建的数据库。没问题。
现在,我感觉转储文件中的数据太大(例如,它在一个表中包含300000行/对象,其他表也包含大量数据)。 / p>
所以,我决定进行另一个转储(基于大型转储),它可以包含一小部分数据(例如,表中有30行/对象)。
只有那么大的转储文件,什么是正确有效的方法来切断该转储中的数据并创建一个包含少量数据的新转储文件?
-------------------------更多--------------------- --------------
(使用文本工具打开大容量转储不好,因为转储非常大,从文本工具打开转储需要很长时间)
答案 0 :(得分:0)
如果您只想处理文本转储文件,可以使用一些文本工具(例如awk
或sed
,或者perl
或python
或ocaml
脚本)来处理它们。
但也许你的大数据库已经从大转储文件加载了,你想和MySQL incremental backups一起工作?
答案 1 :(得分:0)
我推荐免费的文件分割器:http://www.filesplitter.org/。
唯一的问题:它分两部分查询。你之后需要编辑manualy文件,但它就像魅力一样。
示例:
我的档案是:
BlaBloBluBlw
BlaBloBluBlw
BlaBloBluBlw
结果将是: 文件1:
BlaBloBluBlw
BlaBloBl
文件2:
uBlw
BlaBloBluBlw
所以你需要编辑所有东西,但它的工作就像一个魅力而且很快。今天用于一个9,5百万行的表。
但是!!最佳论点:与您尝试导入大量内容或等待它的时间相比,您需要花费的时间很少...即使您需要手动编辑文件,这也很快且有效率,因为您需要重建最后一次查询。