8

是否有任何适用于 mac 的应用程序来拆分 sql 文件甚至脚本?我有一个大文件,我必须将其上传到不支持超过 8 MB 文件的主机。

*我没有 SSH 访问权限

4

4 回答 4

15

你可以使用这个:http ://www.ozerov.de/bigdump/

或者

使用此命令拆分 sql 文件

split -l 5000 ./path/to/mysqldump.sql ./mysqldump/dbpart-

split 命令获取一个文件并将其分成多个文件。-l 5000 部分告诉它每五千行拆分文件。下一位是文件的路径,下一部分是您要将输出保存到的路径。文件将保存为您指定的任何文件名(例如“dbpart-”),并附加一个字母组合。

现在您应该可以通过 phpMyAdmin 一次导入一个文件而不会出现问题。

更多信息http://www.webmaster-source.com/2011/09/26/how-to-import-a-very-large-sql-dump-with-phpmyadmin/

于 2013-12-07T20:25:48.627 回答
7

这个工具应该可以解决问题:MySQLDumpSplitter

它是免费和开源的。

与此问题的公认答案不同,此应用程序将始终保持扩展插入完整,因此查询的精确形式无关紧要;生成的文件将始终具有有效的 SQL 语法。

全面披露:我是举办该计划的公司的股东。

于 2014-02-06T19:29:25.143 回答
0

如果您有 FTP 访问权限并且可以修改 phpMyAdmin 的配置(或允许安装您自己的 phpMyAdmin 实例),phpMyAdmin 中的 UploadDir 功能可以为您提供帮助。

http://docs.phpmyadmin.net/en/latest/config.html?highlight=uploaddir#cfg_UploadDir

于 2013-12-10T12:35:28.580 回答
0

您可以使用以下方法拆分为工作 SQL 语句:

csplit -s -f db-part db.sql "/^# Dump of table/" "{99}"

它最多包含来自 db.sql 的 99 个名为 'db-part[n]' 的文件

您可以使用“CREATE TABLE”或“INSERT INTO”代替“# Dump of ...”

另外:避免安装任何程序或将您的数据上传到任何在线服务。你不知道你的信息会被做什么!

于 2017-06-16T13:06:03.483 回答