Bri*_*nan 16 backup splitter mysql
我有一个 250 MB 的备份 SQL 文件,但新主机的限制仅为 100 MB ...
是否有程序可以让您将一个 SQL 文件拆分为多个 SQL 文件?
似乎人们回答了错误的问题......所以我会澄清更多:
我只有 250 MB 的文件,并且只有使用 phpMyAdmin 的新主机,目前数据库中没有数据。我需要将 250 MB 的文件上传到新主机,但有 100 MB 的 SQL 备份文件上传大小限制。我只需要将一个太大的文件拆分成多个文件,每个文件只包含完整的有效 SQL 语句(不能在两个文件之间拆分任何语句)。
小智 10
拆分备份文件的最简单方法是使用软件sqldumpsplitter,它允许您将 db 文件拆分为多个 db 文件。在这里下载
或者使用此终端命令。
split -l 600 ./path/to/source/file.sql ./path/to/dest/file-
这里,600 是您希望在拆分文件中包含的行数。两个参数分别是文件的源和目标。
注意:您必须检查拆分文件,不要拆分任何命令。
首先转储模式(它肯定适合 2Mb,不是吗?)
Run Code Online (Sandbox Code Playgroud)mysqldump -d --all-databases并恢复它。
之后只转储单独插入语句中的数据,因此您可以拆分文件并恢复它们,而无需在远程服务器上连接它们
Run Code Online (Sandbox Code Playgroud)mysqldump --all-databases --extended-insert=FALSE --no-create-info=TRUE
小智 5
我编写了mysqldumpsplitter(shell 脚本),它按照指示以快速、简单的方式拆分数据库/表。查看如何从 mysqldump 中提取的所有可能用例。
sh mysqldumpsplitter.sh --source mysqldump-file.sql --extract DB --match_str database-name
Run Code Online (Sandbox Code Playgroud)