我有一个相当大的(> 8mo)sql文件,该文件基本上创建了2个表并用数据填充它们。这是从Sequel Pro生成的转储。我的第一个想法是逐行读取文件并运行“执行”命令,但是我遇到了一个错误,即我的字符串太大。
Mysql2 ::错误:得到了一个大于’max_allowed_packet’字节的数据包
有什么方法可以直接运行SQL文件而不是读取它并尝试执行吗? 仅供参考,我可以将此文件分为2个表,分为2个部分,但之后我会再将另一个文件大得多,并且无法拆分。 我正在将Rails 3.0.3与ActiveRecord和MySQL数据库一起使用。
它是正确的SQL文件(其中包含SQL语句)吗?
如果是这样,您应该可以在命令行上执行此操作:
mysql target-db-name < sql-file-name.sql -uuser -p
按回车键,它会提示您输入密码,然后退出
切记用适当的值替代target-db-name,sql-file-name.sql和user
注意:应该预先创建target-db-name:我认为它不会自动创建